Player-by-player trace from JSON pipeline. Metric-by-metric comparison without wide horizontal table dependency.
Windows shown explicitly: Team recent form = latest 10 games from enhanced analysis. Player historical helpers = 75 games; balancing rates = 162 games (as implemented in services).
Savant layers shown explicitly: hitter Statcast quality, pitcher Statcast quality, and pitch movement from embedded data/all_players_stats.csv features.
Color guide: Red = final above baseline, Blue = final below baseline, Green = no difference.
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | BAL 3 - 4 SEA | SEA | 0.556 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | BAL 2 - 3 SEA | SEA | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.6000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5558 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 6.660 | 5.638 | - | Base ML historical model prediction |
| 2 | variance_applied | 7 | 6 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 4 | 0.5558 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 3 | 4 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 3 | 4 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 2 | 3 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4655601659751038,
"base_low_score_probability": 0.4149377593360996,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.05062240663900419,
"confidence": 0.661,
"factors": {
"environmental": 1.02,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.122
},
"prediction": "normal_scoring",
"expected_total_runs": 7,
"pre_simulation_expected_total_runs": 9.6,
"low_score_model_expected_total_runs": 9.6,
"final_simulation_total_runs": 5,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 124,
"near_bucket_sample_size": 124,
"medium_bucket_sample_size": 213,
"wide_bucket_sample_size": 229,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.6129,
"bayesian_hit_rate": 0.5986,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8732,
"confidence_cap": 0.78,
"raw_pick_probability": 0.507,
"calibrated_pick_probability": 0.5558,
"predicted_side": "home"
}{
"applied": true,
"home": {
"team": "SEA",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135135135135135,
"runs_scored": 314,
"runs_allowed": 292,
"run_differential": 22,
"run_differential_per_game": 0.2972972972972973,
"available": true
},
"away": {
"team": "BAL",
"games": 74,
"wins": 34,
"losses": 40,
"win_pct": 0.4594594594594595,
"runs_scored": 344,
"runs_allowed": 379,
"run_differential": -35,
"run_differential_per_game": -0.47297297297297297,
"available": true
},
"run_differential_edge_per_game": 0.7703,
"win_pct_edge": 0.0541,
"quality_edge": 0.8514,
"margin_adjustment": 0.3576,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.2,
"home_runs": 3.283,
"home_win_probability": 0.507
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "SEA",
"guardrail_predicted_team": "SEA",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "SEA",
"output_opponent_team": "BAL",
"final_score_winner": "SEA",
"pre_simulation_winner": "SEA",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 4,
"score_text": "BAL 3 - 4 SEA",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 3,
"score_text": "BAL 2 - 3 SEA",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": -1,
"home_run_delta": -1,
"total_run_delta": -2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "SEA",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135135135135135,
"runs_scored": 314,
"runs_allowed": 292,
"run_differential": 22,
"run_differential_per_game": 0.2972972972972973,
"available": true
},
"away": {
"team": "BAL",
"games": 74,
"wins": 34,
"losses": 40,
"win_pct": 0.4594594594594595,
"runs_scored": 344,
"runs_allowed": 379,
"run_differential": -35,
"run_differential_per_game": -0.47297297297297297,
"available": true
}
}
}{
"applied": false,
"raw_margin": 0.0822,
"final_margin": 0.0822,
"margin_cap": 2.0,
"season_quality_edge": 0.8514,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.53201,
"final_confidence": 0.53201,
"confidence_cap": 0.66,
"score_gap": 0.0822,
"calibration_sample_size": 124,
"calibration_empirical_hit_rate": 0.6129,
"calibration_bayesian_hit_rate": 0.5986,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.8514,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 4,
"score_text": "BAL 3 - 4 SEA",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 3,
"score_text": "BAL 2 - 3 SEA",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": -1,
"home_run_delta": -1,
"total_run_delta": -2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 3,
"home_runs": 4,
"confidence": 0.555754,
"home_win_probability": 0.555754,
"away_win_probability": 0.44424600000000003,
"predicted_score_text": "BAL 3 - 4 SEA",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "BAL",
"original_runs": 3,
"run_delta": 0.0587,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.32352125163736484,
"contact": 0.42319222650119226,
"power": 0.4760736199788824,
"discipline": 0.15746233255716505,
"xwoba": 0.33862499999999995,
"recent_xwoba": 0.33862499999999995,
"barrel": 9.3875,
"ab_hard_contact": 0.24996049481573857,
"ab_bat_speed": 70.85034333326377,
"ab_strikeout_rate": 0.2374997391617665,
"available_players": 9,
"top_players": [
{
"player_id": "624413",
"player_name": "Pete Alonso",
"position": "1B",
"weight": 4.0,
"quality": 1.2619261543653537,
"contact": 1.3623813711960004,
"power": 1.5877640178864487,
"discipline": 0.13897700778595098,
"xwoba": 0.374,
"recent_xwoba": 0.374,
"barrel": 12.3,
"ab_hard_contact": 1.0851851196337268,
"ab_bat_speed": 73.31301087595531,
"ab_strikeout_rate": 0.24369488536155204,
"available": 1.0
},
{
"player_id": "668939",
"player_name": "Adley Rutschman",
"position": "DH",
"weight": 4.0,
"quality": 0.5346846857087868,
"contact": 0.9746054864336867,
"power": 0.5750406100024117,
"discipline": 0.8027677747433847,
"xwoba": 0.36,
"recent_xwoba": 0.36,
"barrel": 8.9,
"ab_hard_contact": 0.1057645810006051,
"ab_bat_speed": 70.20796203346204,
"ab_strikeout_rate": 0.13626126126126126,
"available": 1.0
},
{
"player_id": "694212",
"player_name": "Samuel Basallo",
"position": "C",
"weight": 3.0,
"quality": 0.39347967897993413,
"contact": 0.5266248424734001,
"power": 0.975976713422905,
"discipline": -0.3524471544715446,
"xwoba": 0.343,
"recent_xwoba": 0.343,
"barrel": 12.2,
"ab_hard_contact": -0.15779906487523654,
"ab_bat_speed": 73.77122354497354,
"ab_strikeout_rate": 0.25476190476190474,
"available": 1.0
},
{
"player_id": "665750",
"player_name": "Leody Taveras",
"position": "RF",
"weight": 3.0,
"quality": -0.4036228087042926,
"contact": -0.5420778165204303,
"power": -0.8016284077838015,
"discipline": 0.12516303378980653,
"xwoba": 0.297,
"recent_xwoba": 0.297,
"barrel": 4.0,
"ab_hard_contact": -0.5628538699617495,
"ab_bat_speed": 68.59897286821705,
"ab_strikeout_rate": 0.25329457364341085,
"available": 1.0
},
{
"player_id": "677942",
"player_name": "Blaze Alexander",
"position": "3B",
"weight": 3.0,
"quality": 0.3960955357885345,
"contact": 1.1836090295482296,
"power": 0.5972062514116778,
"discipline": -0.47299734752173767,
"xwoba": 0.359,
"recent_xwoba": 0.359,
"barrel": 6.6,
"ab_hard_contact": 0.2386012187097421,
"ab_bat_speed": 71.06386786786787,
"ab_strikeout_rate": 0.25495495495495496,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "693433",
"player_name": "Bryan Woo",
"quality": 0.24682054072596749,
"contact": 0.25245327041674603,
"command": 0.24242857142857138,
"movement": 0.6551490170870105,
"xwoba": 0.286,
"whiff": 24.2,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "SEA",
"original_runs": 4,
"run_delta": 0.1207,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 31.0,
"quality": 0.08437089164444374,
"contact": -0.340419378819176,
"power": -0.2006627624853991,
"discipline": 0.056704141605400556,
"xwoba": 0.3022258064516129,
"recent_xwoba": 0.3022258064516129,
"barrel": 7.341935483870967,
"ab_hard_contact": -0.20175908995376474,
"ab_bat_speed": 70.23872242338447,
"ab_strikeout_rate": 0.23081605823147916,
"available_players": 8,
"top_players": [
{
"player_id": "686527",
"player_name": "Dominic Canzone",
"position": "RF",
"weight": 3.0,
"quality": 0.6930814475136295,
"contact": 1.4060098200244202,
"power": 1.7251946956453426,
"discipline": -0.07190482642921657,
"xwoba": 0.389,
"recent_xwoba": 0.389,
"barrel": 15.8,
"ab_hard_contact": 0.3111320081449384,
"ab_bat_speed": 73.09844753086419,
"ab_strikeout_rate": 0.23814814814814816,
"available": 1.0
},
{
"player_id": "670156",
"player_name": "Miles Mastrobuoni",
"position": "LF",
"weight": 3.0,
"quality": -0.0,
"contact": -1.9443428571428565,
"power": -1.670323809523809,
"discipline": -0.21942857142857125,
"xwoba": 0.191,
"recent_xwoba": 0.191,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26065568475452,
"ab_strikeout_rate": 0.22179487179487178,
"available": 0.0
},
{
"player_id": "806068",
"player_name": "Colt Emerson",
"position": "SS",
"weight": 3.0,
"quality": -0.2007471360613668,
"contact": -1.8247777429385421,
"power": -1.085064200528357,
"discipline": -0.6856296941540846,
"xwoba": 0.23,
"recent_xwoba": 0.23,
"barrel": 5.400000000000001,
"ab_hard_contact": -0.6376649629481066,
"ab_bat_speed": 70.67972222222221,
"ab_strikeout_rate": 0.19444444444444445,
"available": 1.0
},
{
"player_id": "645302",
"player_name": "Victor Robles",
"position": "CF",
"weight": 3.0,
"quality": -0.08457530072086882,
"contact": -0.9446862085470082,
"power": -0.9607029251756241,
"discipline": -0.18870905923344936,
"xwoba": 0.268,
"recent_xwoba": 0.268,
"barrel": 4.7,
"ab_hard_contact": 0.16403673458275886,
"ab_bat_speed": 65.0796875,
"ab_strikeout_rate": 0.21666666666666667,
"available": 1.0
},
{
"player_id": "641487",
"player_name": "J.P. Crawford",
"position": "3B",
"weight": 4.0,
"quality": 0.3558321110115024,
"contact": 0.42795856526251563,
"power": 0.15275950749334377,
"discipline": 1.1230607820363918,
"xwoba": 0.357,
"recent_xwoba": 0.357,
"barrel": 9.2,
"ab_hard_contact": -0.16728604060932234,
"ab_bat_speed": 69.77111979166666,
"ab_strikeout_rate": 0.18611111111111112,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "669358",
"player_name": "Shane Baz",
"quality": -0.4709599847915376,
"contact": -0.7009094067955561,
"command": -0.3594285714285716,
"movement": 0.16595293205565387,
"xwoba": 0.338,
"whiff": 21.0,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 3,
"home_runs": 4,
"predicted_score_text": "BAL 3 - 4 SEA",
"confidence": 0.555754,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 4,
"score_text": "BAL 3 - 4 SEA",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 3,
"score_text": "BAL 2 - 3 SEA",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": -1,
"home_run_delta": -1,
"total_run_delta": -2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away BAL | True | 1.0382 | 1.0382 | 1 | 9 | 0 |
| Home SEA | True | 1.0048 | 1.0048 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Adley Rutschman | 71 | 1.0561 | 0.7474 | neutral | 0.3600 | 0.2800 | 0.4620 | 8.90 | 45 | 89.50 | 14.50 | 15.30 | 13.80 | 10.30 | 0.3429 |
| 1B | Pete Alonso | 79 | 1.1159 | 1.5447 | neutral | 0.3740 | 0.2730 | 0.5210 | 12.30 | 55.70 | 94.90 | 14.10 | 26.60 | 22.80 | 10.80 | 0.7429 |
| SS | Gunnar Henderson | 99 | 1.0158 | 0.2108 | neutral | 0.3100 | 0.2370 | 0.4010 | 8.80 | 45.60 | 89.40 | 12 | 24.60 | 24.30 | 7.70 | -0.0857 |
| LF | Taylor Ward | 65 | 1.0478 | 0.6374 | neutral | 0.3560 | 0.2570 | 0.3820 | 4.80 | 40.60 | 89.60 | 14.70 | 17.40 | 19.90 | 18.50 | 0.2571 |
| C | Samuel Basallo | 87 | 1.0485 | 0.6469 | neutral | 0.3430 | 0.2640 | 0.4750 | 12.20 | 45.90 | 91.70 | 13.70 | 30.50 | 25.10 | 8.50 | 0.0571 |
| CF | Colton Cowser | 199 | 1.0087 | 0.1162 | neutral | 0.3190 | 0.2090 | 0.4360 | 12.60 | 32 | 86.40 | 12.40 | 33 | 29.30 | 10.90 | 0.4000 |
| RF | Leody Taveras | 155 | 0.9778 | -0.2964 | neutral | 0.2970 | 0.2340 | 0.3350 | 4 | 29.50 | 87 | 16.20 | 24.90 | 22.80 | 10.30 | -0.6286 |
| 3B | Blaze Alexander | 122 | 1.0474 | 0.6326 | neutral | 0.3590 | 0.3130 | 0.4610 | 6.60 | 47.10 | 92.50 | 9.30 | 27.50 | 22.60 | 6.20 | 0.3429 |
| 2B | Jackson Holliday | 390 | 1.0254 | 0.3382 | positive_batter_regression | 0.3240 | 0.2210 | 0.4240 | 15.40 | 46.20 | 89.60 | 16.80 | 32.90 | 30.30 | 11.20 | 0.8571 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RF | Dominic Canzone | 78 | 1.0704 | 0.9381 | neutral | 0.3890 | 0.2940 | 0.5430 | 15.80 | 49.60 | 93.30 | 13.50 | 29.20 | 19 | 9 | -0.3429 |
| DH | Cal Raleigh | 412 | 1.0060 | 0.0805 | positive_batter_regression | 0.3000 | 0.1890 | 0.3990 | 12.50 | 31.30 | 87.40 | 23.30 | 30.50 | 30.20 | 10.60 | 1.2286 |
| 1B | Josh Naylor | 491 | 1.0256 | 0.3413 | neutral | 0.3230 | 0.2730 | 0.4040 | 5.20 | 37.90 | 87.80 | 14.50 | 19 | 12.80 | 7.80 | 0.5429 |
| 3B | J.P. Crawford | 158 | 1.0530 | 0.7071 | neutral | 0.3570 | 0.2540 | 0.4160 | 9.20 | 36.40 | 88.40 | 12.40 | 17.30 | 19.10 | 14.90 | 0.4000 |
| C | Mitch Garver | 205 | 0.9948 | -0.0695 | neutral | 0.3010 | 0.1920 | 0.3360 | 6.90 | 48.30 | 89.60 | 18.30 | 34.40 | 29.90 | 15.90 | 0 |
| 2B | Cole Young | 39 | 1.0331 | 0.4408 | neutral | 0.3280 | 0.2740 | 0.4120 | 5.40 | 38.50 | 88.10 | 16.20 | 21.20 | 18.50 | 6.60 | 0.6286 |
| CF | Victor Robles | 542 | 0.9728 | -0.3628 | neutral | 0.2680 | 0.2320 | 0.3510 | 4.70 | 20.90 | 82.50 | 6.60 | 18.40 | 13.50 | 3.80 | 0.0857 |
| SS | Colt Emerson | 125 | 0.9489 | -0.6809 | negative_batter_regression | 0.2300 | 0.1630 | 0.2680 | 5.40 | 28.60 | 86.70 | 16.50 | 31.60 | 29.70 | 6.60 | -2 |
| LF | Miles Mastrobuoni | 325 | 0.9387 | -0.8179 | neutral | 0.1910 | 0.1440 | 0.1950 | 0 | 23.10 | 90.20 | 10 | 23.50 | 37.50 | 8.30 | -0.7143 |
{
"home": {
"applied": true,
"offense_factor": 1.0048,
"raw_average_factor": 1.0048,
"team_espn_average_rank": 263.89,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "RF",
"player_id": "686527",
"player_name": "Dominic Canzone",
"offense_factor": 1.0704,
"quality_score": 0.9381,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686527",
"espn_id": 4345621,
"player_name": "Dominic Canzone",
"team": "SEA",
"role": "batter",
"espn_rank": 78,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 78,
"gp_value": 66.0,
"gp_rank": 132,
"ab_value": 167.0,
"ab_rank": 207,
"r_value": 26.0,
"r_rank": 158,
"h_value": 49.0,
"h_rank": 154,
"avg_value": 0.2934131,
"avg_rank": null,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 31.0,
"rbi_rank": 104,
"tb_value": 96.0,
"tb_rank": 543,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 36.0,
"so_rank": 226,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3650793,
"obp_rank": "-",
"slg_value": 0.5748502,
"slg_rank": "-",
"ops_value": 0.9399295,
"ops_rank": null,
"war_value": 1.58,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 124.0,
"k_percent": 19.0,
"bb_percent": 9.0,
"woba": 0.401,
"xwoba": 0.389,
"xba": 0.294,
"xslg": 0.543,
"sweet_spot_percent": 39.8,
"barrel_batted_rate": 15.8,
"hard_hit_percent": 49.6,
"exit_velocity_avg": 93.3,
"launch_angle_avg": 13.5,
"whiff_percent": 29.2,
"swing_percent": 47.2
},
"components": {
"expected_quality": 1.9912,
"regression_edge": -0.3429,
"xwoba_edge": 2.4286,
"xba_edge": 1.5857,
"xslg_edge": 2.4429,
"barrel_edge": 2.0,
"hard_hit_edge": 1.5857,
"exit_velocity_edge": 1.8,
"sweet_spot_edge": 1.0833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "663728",
"player_name": "Cal Raleigh",
"offense_factor": 1.006,
"quality_score": 0.0805,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "663728",
"espn_id": 41292,
"player_name": "Cal Raleigh",
"team": "SEA",
"role": "batter",
"espn_rank": 412,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 412,
"gp_value": 43.0,
"gp_rank": 280,
"ab_value": 167.0,
"ab_rank": 207,
"r_value": 16.0,
"r_rank": 254,
"h_value": 28.0,
"h_rank": 278,
"avg_value": 0.1676646,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 20.0,
"rbi_rank": 204,
"tb_value": 53.0,
"tb_rank": 1330,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 57.0,
"so_rank": 96,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.2539682,
"obp_rank": "-",
"slg_value": 0.3173652,
"slg_rank": "-",
"ops_value": 0.5713334,
"ops_rank": null,
"war_value": -0.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 181.0,
"k_percent": 30.2,
"bb_percent": 10.6,
"woba": 0.257,
"xwoba": 0.3,
"xba": 0.189,
"xslg": 0.399,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 31.3,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 23.3,
"whiff_percent": 30.5,
"swing_percent": 53.0
},
"components": {
"expected_quality": -0.0862,
"regression_edge": 1.2286,
"xwoba_edge": -0.1143,
"xba_edge": -1.4143,
"xslg_edge": 0.3857,
"barrel_edge": 1.2667,
"hard_hit_edge": -1.0286,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": 0.1,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "647304",
"player_name": "Josh Naylor",
"offense_factor": 1.0256,
"quality_score": 0.3413,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "647304",
"espn_id": 35066,
"player_name": "Josh Naylor",
"team": "SEA",
"role": "batter",
"espn_rank": 491,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 491,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 269.0,
"ab_rank": 39,
"r_value": 27.0,
"r_rank": 147,
"h_value": 68.0,
"h_rank": 61,
"avg_value": 0.2527881,
"avg_rank": 81.0,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 32.0,
"rbi_rank": 96,
"tb_value": 100.0,
"tb_rank": 931,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 38.0,
"so_rank": 208,
"sb_value": 13.0,
"sb_rank": 16,
"obp_value": 0.3152542,
"obp_rank": "107",
"slg_value": 0.3717472,
"slg_rank": "123",
"ops_value": 0.6870014,
"ops_rank": 16.0,
"war_value": -0.36,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 12.8,
"bb_percent": 7.8,
"woba": 0.304,
"xwoba": 0.323,
"xba": 0.273,
"xslg": 0.404,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 5.2,
"hard_hit_percent": 37.9,
"exit_velocity_avg": 87.8,
"launch_angle_avg": 14.5,
"whiff_percent": 19.0,
"swing_percent": 52.8
},
"components": {
"expected_quality": 0.3085,
"regression_edge": 0.5429,
"xwoba_edge": 0.5429,
"xba_edge": 0.9857,
"xslg_edge": 0.4571,
"barrel_edge": -0.3556,
"hard_hit_edge": -0.0857,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -0.3833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "641487",
"player_name": "J.P. Crawford",
"offense_factor": 1.053,
"quality_score": 0.7071,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641487",
"espn_id": 33210,
"player_name": "J.P. Crawford",
"team": "SEA",
"role": "batter",
"espn_rank": 158,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 158,
"gp_value": 57.0,
"gp_rank": 195,
"ab_value": 199.0,
"ab_rank": 159,
"r_value": 31.0,
"r_rank": 109,
"h_value": 45.0,
"h_rank": 177,
"avg_value": 0.2261306,
"avg_rank": 133.0,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 23.0,
"rbi_rank": 182,
"tb_value": 80.0,
"tb_rank": 1031,
"bb_value": 36.0,
"bb_rank": 35,
"so_value": 46.0,
"so_rank": 151,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3568464,
"obp_rank": "44",
"slg_value": 0.40201,
"slg_rank": "102",
"ops_value": 0.7588564,
"ops_rank": 146.0,
"war_value": 0.8,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 202.0,
"k_percent": 19.1,
"bb_percent": 14.9,
"woba": 0.343,
"xwoba": 0.357,
"xba": 0.254,
"xslg": 0.416,
"sweet_spot_percent": 39.6,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 36.4,
"exit_velocity_avg": 88.4,
"launch_angle_avg": 12.4,
"whiff_percent": 17.3,
"swing_percent": 37.9
},
"components": {
"expected_quality": 0.8304,
"regression_edge": 0.4,
"xwoba_edge": 1.5143,
"xba_edge": 0.4429,
"xslg_edge": 0.6286,
"barrel_edge": 0.5333,
"hard_hit_edge": -0.3,
"exit_velocity_edge": -0.16,
"sweet_spot_edge": 1.05,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "641598",
"player_name": "Mitch Garver",
"offense_factor": 0.9948,
"quality_score": -0.0695,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641598",
"espn_id": 33667,
"player_name": "Mitch Garver",
"team": "SEA",
"role": "batter",
"espn_rank": 205,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 205,
"gp_value": 35.0,
"gp_rank": 331,
"ab_value": 90.0,
"ab_rank": 342,
"r_value": 14.0,
"r_rank": 287,
"h_value": 18.0,
"h_rank": 351,
"avg_value": 0.2,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 11.0,
"rbi_rank": 306,
"tb_value": 29.0,
"tb_rank": 1855,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 32.0,
"so_rank": 259,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3271028,
"obp_rank": "-",
"slg_value": 0.3222222,
"slg_rank": "-",
"ops_value": 0.649325,
"ops_rank": null,
"war_value": 0.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 84.0,
"k_percent": 29.9,
"bb_percent": 15.9,
"woba": 0.301,
"xwoba": 0.301,
"xba": 0.192,
"xslg": 0.336,
"sweet_spot_percent": 22.4,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 48.3,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 18.3,
"whiff_percent": 34.4,
"swing_percent": 42.2
},
"components": {
"expected_quality": -0.1795,
"regression_edge": 0.0,
"xwoba_edge": -0.0857,
"xba_edge": -1.3286,
"xslg_edge": -0.5143,
"barrel_edge": 0.0222,
"hard_hit_edge": 1.4,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": -1.8167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "702284",
"player_name": "Cole Young",
"offense_factor": 1.0331,
"quality_score": 0.4408,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702284",
"espn_id": 5080641,
"player_name": "Cole Young",
"team": "SEA",
"role": "batter",
"espn_rank": 39,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 39,
"gp_value": 75.0,
"gp_rank": 1,
"ab_value": 273.0,
"ab_rank": 31,
"r_value": 32.0,
"r_rank": 99,
"h_value": 70.0,
"h_rank": 50,
"avg_value": 0.2564102,
"avg_rank": 74.0,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 33.0,
"rbi_rank": 88,
"tb_value": 100.0,
"tb_rank": 787,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 56.0,
"so_rank": 99,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3178807,
"obp_rank": "99",
"slg_value": 0.3663003,
"slg_rank": "126",
"ops_value": 0.684181,
"ops_rank": 225.0,
"war_value": 2.28,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 220.0,
"k_percent": 18.5,
"bb_percent": 6.6,
"woba": 0.306,
"xwoba": 0.328,
"xba": 0.274,
"xslg": 0.412,
"sweet_spot_percent": 35.7,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 38.5,
"exit_velocity_avg": 88.1,
"launch_angle_avg": 16.2,
"whiff_percent": 21.2,
"swing_percent": 48.0
},
"components": {
"expected_quality": 0.4102,
"regression_edge": 0.6286,
"xwoba_edge": 0.6857,
"xba_edge": 1.0143,
"xslg_edge": 0.5714,
"barrel_edge": -0.3111,
"hard_hit_edge": 0.0,
"exit_velocity_edge": -0.28,
"sweet_spot_edge": 0.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "645302",
"player_name": "Victor Robles",
"offense_factor": 0.9728,
"quality_score": -0.3628,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "645302",
"espn_id": 35042,
"player_name": "Victor Robles",
"team": "SEA",
"role": "batter",
"espn_rank": 542,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 542,
"gp_value": 22.0,
"gp_rank": 400,
"ab_value": 50.0,
"ab_rank": 412,
"r_value": 4.0,
"r_rank": 435,
"h_value": 13.0,
"h_rank": 389,
"avg_value": 0.26,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 2.0,
"rbi_rank": 466,
"tb_value": 15.0,
"tb_rank": 2487,
"bb_value": 2.0,
"bb_rank": 442,
"so_value": 7.0,
"so_rank": 474,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.2884615,
"obp_rank": "-",
"slg_value": 0.3,
"slg_rank": "-",
"ops_value": 0.5884615,
"ops_rank": null,
"war_value": -0.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 24.0,
"k_percent": 13.5,
"bb_percent": 3.8,
"woba": 0.265,
"xwoba": 0.268,
"xba": 0.232,
"xslg": 0.351,
"sweet_spot_percent": 18.6,
"barrel_batted_rate": 4.7,
"hard_hit_percent": 20.9,
"exit_velocity_avg": 82.5,
"launch_angle_avg": 6.6,
"whiff_percent": 18.4,
"swing_percent": 53.3
},
"components": {
"expected_quality": -0.9514,
"regression_edge": 0.0857,
"xwoba_edge": -1.0286,
"xba_edge": -0.1857,
"xslg_edge": -0.3,
"barrel_edge": -0.4667,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -2.5,
"sweet_spot_edge": -2.45,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "806068",
"player_name": "Colt Emerson",
"offense_factor": 0.9489,
"quality_score": -0.6809,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "806068",
"espn_id": 5149068,
"player_name": "Colt Emerson",
"team": "SEA",
"role": "batter",
"espn_rank": 125,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 125,
"gp_value": 25.0,
"gp_rank": 384,
"ab_value": 83.0,
"ab_rank": 356,
"r_value": 13.0,
"r_rank": 302,
"h_value": 19.0,
"h_rank": 345,
"avg_value": 0.2289156,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 14.0,
"rbi_rank": 266,
"tb_value": 44.0,
"tb_rank": 1216,
"bb_value": 6.0,
"bb_rank": 359,
"so_value": 27.0,
"so_rank": 293,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.2967032,
"obp_rank": "-",
"slg_value": 0.5301204,
"slg_rank": "-",
"ops_value": 0.8268236,
"ops_rank": null,
"war_value": 1.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 32.0,
"k_percent": 29.7,
"bb_percent": 6.6,
"woba": 0.354,
"xwoba": 0.23,
"xba": 0.163,
"xslg": 0.268,
"sweet_spot_percent": 35.7,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 28.6,
"exit_velocity_avg": 86.7,
"launch_angle_avg": 16.5,
"whiff_percent": 31.6,
"swing_percent": 50.4
},
"components": {
"expected_quality": -1.434,
"regression_edge": -2.0,
"xwoba_edge": -2.1143,
"xba_edge": -2.1571,
"xslg_edge": -1.4857,
"barrel_edge": -0.3111,
"hard_hit_edge": -1.4143,
"exit_velocity_edge": -0.84,
"sweet_spot_edge": 0.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "670156",
"player_name": "Miles Mastrobuoni",
"offense_factor": 0.9387,
"quality_score": -0.8179,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670156",
"espn_id": 40900,
"player_name": "Miles Mastrobuoni",
"team": "SEA",
"role": "batter",
"espn_rank": 325,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 325,
"gp_value": 7.0,
"gp_rank": 514,
"ab_value": 20.0,
"ab_rank": 498,
"r_value": 3.0,
"r_rank": 447,
"h_value": 4.0,
"h_rank": 483,
"avg_value": 0.2,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 486,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 1.0,
"rbi_rank": 498,
"tb_value": 4.0,
"tb_rank": 2680,
"bb_value": 2.0,
"bb_rank": 442,
"so_value": 9.0,
"so_rank": 452,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.2608695,
"obp_rank": "-",
"slg_value": 0.2,
"slg_rank": "-",
"ops_value": 0.4608695,
"ops_rank": null,
"war_value": 0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 37.5,
"bb_percent": 8.3,
"woba": 0.216,
"xwoba": 0.191,
"xba": 0.144,
"xslg": 0.195,
"sweet_spot_percent": 23.1,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 23.1,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 10.0,
"whiff_percent": 23.5,
"swing_percent": 37.8
},
"components": {
"expected_quality": -1.9971,
"regression_edge": -0.7143,
"xwoba_edge": -2.5,
"xba_edge": -2.5,
"xslg_edge": -2.5,
"barrel_edge": -1.5111,
"hard_hit_edge": -2.2,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": -1.7,
"launch_angle_hr_bonus": 0.2
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0382,
"raw_average_factor": 1.0382,
"team_espn_average_rank": 140.78,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "668939",
"player_name": "Adley Rutschman",
"offense_factor": 1.0561,
"quality_score": 0.7474,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668939",
"espn_id": 42178,
"player_name": "Adley Rutschman",
"team": "BAL",
"role": "batter",
"espn_rank": 71,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 71,
"gp_value": 53.0,
"gp_rank": 216,
"ab_value": 197.0,
"ab_rank": 163,
"r_value": 26.0,
"r_rank": 158,
"h_value": 51.0,
"h_rank": 142,
"avg_value": 0.2588832,
"avg_rank": null,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 40.0,
"rbi_rank": 41,
"tb_value": 92.0,
"tb_rank": 607,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 31.0,
"so_rank": 266,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3348214,
"obp_rank": "-",
"slg_value": 0.467005,
"slg_rank": "-",
"ops_value": 0.8018264,
"ops_rank": null,
"war_value": 1.64,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 158.0,
"k_percent": 13.8,
"bb_percent": 10.3,
"woba": 0.348,
"xwoba": 0.36,
"xba": 0.28,
"xslg": 0.462,
"sweet_spot_percent": 37.9,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 45.0,
"exit_velocity_avg": 89.5,
"launch_angle_avg": 14.5,
"whiff_percent": 15.3,
"swing_percent": 41.7
},
"components": {
"expected_quality": 1.1543,
"regression_edge": 0.3429,
"xwoba_edge": 1.6,
"xba_edge": 1.1857,
"xslg_edge": 1.2857,
"barrel_edge": 0.4667,
"hard_hit_edge": 0.9286,
"exit_velocity_edge": 0.28,
"sweet_spot_edge": 0.7667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "624413",
"player_name": "Pete Alonso",
"offense_factor": 1.1159,
"quality_score": 1.5447,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "624413",
"espn_id": 37498,
"player_name": "Pete Alonso",
"team": "BAL",
"role": "batter",
"espn_rank": 79,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 79,
"gp_value": 75.0,
"gp_rank": 1,
"ab_value": 283.0,
"ab_rank": 19,
"r_value": 45.0,
"r_rank": 26,
"h_value": 71.0,
"h_rank": 46,
"avg_value": 0.2508833,
"avg_rank": 85.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 16.0,
"hr_rank": 17,
"rbi_value": 48.0,
"rbi_rank": 14,
"tb_value": 132.0,
"tb_rank": 546,
"bb_value": 35.0,
"bb_rank": 37,
"so_value": 74.0,
"so_rank": 34,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3364197,
"obp_rank": "80",
"slg_value": 0.466431,
"slg_rank": "47",
"ops_value": 0.8028507,
"ops_rank": 33.0,
"war_value": 1.57,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 240.0,
"k_percent": 22.8,
"bb_percent": 10.8,
"woba": 0.348,
"xwoba": 0.374,
"xba": 0.273,
"xslg": 0.521,
"sweet_spot_percent": 32.1,
"barrel_batted_rate": 12.3,
"hard_hit_percent": 55.7,
"exit_velocity_avg": 94.9,
"launch_angle_avg": 14.1,
"whiff_percent": 26.6,
"swing_percent": 44.5
},
"components": {
"expected_quality": 1.6752,
"regression_edge": 0.7429,
"xwoba_edge": 2.0,
"xba_edge": 0.9857,
"xslg_edge": 2.1286,
"barrel_edge": 1.2222,
"hard_hit_edge": 2.4571,
"exit_velocity_edge": 2.44,
"sweet_spot_edge": -0.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "683002",
"player_name": "Gunnar Henderson",
"offense_factor": 1.0158,
"quality_score": 0.2108,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683002",
"espn_id": 42507,
"player_name": "Gunnar Henderson",
"team": "BAL",
"role": "batter",
"espn_rank": 99,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 99,
"gp_value": 74.0,
"gp_rank": 13,
"ab_value": 307.0,
"ab_rank": 1,
"r_value": 40.0,
"r_rank": 50,
"h_value": 69.0,
"h_rank": 55,
"avg_value": 0.2247557,
"avg_rank": 136.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 15.0,
"hr_rank": 23,
"rbi_value": 36.0,
"rbi_rank": 63,
"tb_value": 129.0,
"tb_rank": 329,
"bb_value": 26.0,
"bb_rank": 82,
"so_value": 82.0,
"so_rank": 18,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.2928994,
"obp_rank": "141",
"slg_value": 0.4201954,
"slg_rank": "83",
"ops_value": 0.7130948,
"ops_rank": 224.0,
"war_value": 1.27,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 251.0,
"k_percent": 24.3,
"bb_percent": 7.7,
"woba": 0.313,
"xwoba": 0.31,
"xba": 0.237,
"xslg": 0.401,
"sweet_spot_percent": 30.1,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 45.6,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 12.0,
"whiff_percent": 24.6,
"swing_percent": 49.0
},
"components": {
"expected_quality": 0.2591,
"regression_edge": -0.0857,
"xwoba_edge": 0.1714,
"xba_edge": -0.0429,
"xslg_edge": 0.4143,
"barrel_edge": 0.4444,
"hard_hit_edge": 1.0143,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": -0.5333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "621493",
"player_name": "Taylor Ward",
"offense_factor": 1.0478,
"quality_score": 0.6374,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "621493",
"espn_id": 34923,
"player_name": "Taylor Ward",
"team": "BAL",
"role": "batter",
"espn_rank": 65,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 65,
"gp_value": 74.0,
"gp_rank": 13,
"ab_value": 273.0,
"ab_rank": 31,
"r_value": 46.0,
"r_rank": 21,
"h_value": 70.0,
"h_rank": 50,
"avg_value": 0.2564102,
"avg_rank": 74.0,
"2b_value": 17.0,
"2b_rank": 12,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 20.0,
"rbi_rank": 204,
"tb_value": 96.0,
"tb_rank": 1179,
"bb_value": 63.0,
"bb_rank": 3,
"so_value": 68.0,
"so_rank": 50,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3988269,
"obp_rank": "6",
"slg_value": 0.3516483,
"slg_rank": "138",
"ops_value": 0.7504752,
"ops_rank": 132.0,
"war_value": 1.74,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 249.0,
"k_percent": 19.9,
"bb_percent": 18.5,
"woba": 0.347,
"xwoba": 0.356,
"xba": 0.257,
"xslg": 0.382,
"sweet_spot_percent": 35.3,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 40.6,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 14.7,
"whiff_percent": 17.4,
"swing_percent": 32.3
},
"components": {
"expected_quality": 0.6993,
"regression_edge": 0.2571,
"xwoba_edge": 1.4857,
"xba_edge": 0.5286,
"xslg_edge": 0.1429,
"barrel_edge": -0.4444,
"hard_hit_edge": 0.3,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.3333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "694212",
"player_name": "Samuel Basallo",
"offense_factor": 1.0485,
"quality_score": 0.6469,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694212",
"espn_id": 4917646,
"player_name": "Samuel Basallo",
"team": "BAL",
"role": "batter",
"espn_rank": 87,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 87,
"gp_value": 62.0,
"gp_rank": 163,
"ab_value": 202.0,
"ab_rank": 153,
"r_value": 27.0,
"r_rank": 147,
"h_value": 53.0,
"h_rank": 132,
"avg_value": 0.2623762,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 30.0,
"rbi_rank": 113,
"tb_value": 94.0,
"tb_rank": 637,
"bb_value": 19.0,
"bb_rank": 161,
"so_value": 56.0,
"so_rank": 99,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3228699,
"obp_rank": "-",
"slg_value": 0.4653465,
"slg_rank": "-",
"ops_value": 0.7882164,
"ops_rank": null,
"war_value": 1.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 158.0,
"k_percent": 25.1,
"bb_percent": 8.5,
"woba": 0.341,
"xwoba": 0.343,
"xba": 0.264,
"xslg": 0.475,
"sweet_spot_percent": 35.1,
"barrel_batted_rate": 12.2,
"hard_hit_percent": 45.9,
"exit_velocity_avg": 91.7,
"launch_angle_avg": 13.7,
"whiff_percent": 30.5,
"swing_percent": 52.7
},
"components": {
"expected_quality": 1.038,
"regression_edge": 0.0571,
"xwoba_edge": 1.1143,
"xba_edge": 0.7286,
"xslg_edge": 1.4714,
"barrel_edge": 1.2,
"hard_hit_edge": 1.0571,
"exit_velocity_edge": 1.16,
"sweet_spot_edge": 0.3,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "681297",
"player_name": "Colton Cowser",
"offense_factor": 1.0087,
"quality_score": 0.1162,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681297",
"espn_id": 4416990,
"player_name": "Colton Cowser",
"team": "BAL",
"role": "batter",
"espn_rank": 199,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 199,
"gp_value": 64.0,
"gp_rank": 146,
"ab_value": 151.0,
"ab_rank": 240,
"r_value": 23.0,
"r_rank": 182,
"h_value": 33.0,
"h_rank": 246,
"avg_value": 0.218543,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 356,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 23.0,
"rbi_rank": 182,
"tb_value": 57.0,
"tb_rank": 1347,
"bb_value": 19.0,
"bb_rank": 161,
"so_value": 51.0,
"so_rank": 129,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3063583,
"obp_rank": "-",
"slg_value": 0.3774834,
"slg_rank": "-",
"ops_value": 0.6838417,
"ops_rank": null,
"war_value": 0.54,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 29.3,
"bb_percent": 10.9,
"woba": 0.305,
"xwoba": 0.319,
"xba": 0.209,
"xslg": 0.436,
"sweet_spot_percent": 30.1,
"barrel_batted_rate": 12.6,
"hard_hit_percent": 32.0,
"exit_velocity_avg": 86.4,
"launch_angle_avg": 12.4,
"whiff_percent": 33.0,
"swing_percent": 44.2
},
"components": {
"expected_quality": 0.2076,
"regression_edge": 0.4,
"xwoba_edge": 0.4286,
"xba_edge": -0.8429,
"xslg_edge": 0.9143,
"barrel_edge": 1.2889,
"hard_hit_edge": -0.9286,
"exit_velocity_edge": -0.96,
"sweet_spot_edge": -0.5333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "665750",
"player_name": "Leody Taveras",
"offense_factor": 0.9778,
"quality_score": -0.2964,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665750",
"espn_id": 34951,
"player_name": "Leody Taveras",
"team": "BAL",
"role": "batter",
"espn_rank": 155,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 155,
"gp_value": 63.0,
"gp_rank": 156,
"ab_value": 192.0,
"ab_rank": 170,
"r_value": 26.0,
"r_rank": 158,
"h_value": 49.0,
"h_rank": 154,
"avg_value": 0.2552083,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 4.0,
"3b_rank": 3,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 29.0,
"rbi_rank": 122,
"tb_value": 72.0,
"tb_rank": 1217,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 51.0,
"so_rank": 129,
"sb_value": 8.0,
"sb_rank": 55,
"obp_value": 0.3364055,
"obp_rank": "-",
"slg_value": 0.375,
"slg_rank": "-",
"ops_value": 0.7114055,
"ops_rank": null,
"war_value": 0.84,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 22.8,
"bb_percent": 10.3,
"woba": 0.319,
"xwoba": 0.297,
"xba": 0.234,
"xslg": 0.335,
"sweet_spot_percent": 33.6,
"barrel_batted_rate": 4.0,
"hard_hit_percent": 29.5,
"exit_velocity_avg": 87.0,
"launch_angle_avg": 16.2,
"whiff_percent": 24.9,
"swing_percent": 47.2
},
"components": {
"expected_quality": -0.3807,
"regression_edge": -0.6286,
"xwoba_edge": -0.2,
"xba_edge": -0.1286,
"xslg_edge": -0.5286,
"barrel_edge": -0.6222,
"hard_hit_edge": -1.2857,
"exit_velocity_edge": -0.72,
"sweet_spot_edge": 0.05,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "677942",
"player_name": "Blaze Alexander",
"offense_factor": 1.0474,
"quality_score": 0.6326,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677942",
"espn_id": 41345,
"player_name": "Blaze Alexander",
"team": "BAL",
"role": "batter",
"espn_rank": 122,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 122,
"gp_value": 63.0,
"gp_rank": 156,
"ab_value": 158.0,
"ab_rank": 228,
"r_value": 20.0,
"r_rank": 213,
"h_value": 49.0,
"h_rank": 154,
"avg_value": 0.3101265,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 19.0,
"rbi_rank": 216,
"tb_value": 67.0,
"tb_rank": 1326,
"bb_value": 11.0,
"bb_rank": 271,
"so_value": 40.0,
"so_rank": 193,
"sb_value": 8.0,
"sb_rank": 55,
"obp_value": 0.3641618,
"obp_rank": "-",
"slg_value": 0.4240506,
"slg_rank": "-",
"ops_value": 0.7882124,
"ops_rank": null,
"war_value": 1.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 126.0,
"k_percent": 22.6,
"bb_percent": 6.2,
"woba": 0.347,
"xwoba": 0.359,
"xba": 0.313,
"xslg": 0.461,
"sweet_spot_percent": 43.0,
"barrel_batted_rate": 6.6,
"hard_hit_percent": 47.1,
"exit_velocity_avg": 92.5,
"launch_angle_avg": 9.3,
"whiff_percent": 27.5,
"swing_percent": 56.3
},
"components": {
"expected_quality": 1.2286,
"regression_edge": 0.3429,
"xwoba_edge": 1.5714,
"xba_edge": 2.1286,
"xslg_edge": 1.2714,
"barrel_edge": -0.0444,
"hard_hit_edge": 1.2286,
"exit_velocity_edge": 1.48,
"sweet_spot_edge": 1.6167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "702616",
"player_name": "Jackson Holliday",
"offense_factor": 1.0254,
"quality_score": 0.3382,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "702616",
"espn_id": 5080633,
"player_name": "Jackson Holliday",
"team": "BAL",
"role": "batter",
"espn_rank": 390,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 390,
"gp_value": 26.0,
"gp_rank": 382,
"ab_value": 77.0,
"ab_rank": 366,
"r_value": 13.0,
"r_rank": 302,
"h_value": 15.0,
"h_rank": 370,
"avg_value": 0.1948051,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 12.0,
"rbi_rank": 292,
"tb_value": 30.0,
"tb_rank": 1553,
"bb_value": 10.0,
"bb_rank": 282,
"so_value": 27.0,
"so_rank": 293,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.2808988,
"obp_rank": "-",
"slg_value": 0.3896103,
"slg_rank": "-",
"ops_value": 0.6705091,
"ops_rank": null,
"war_value": -0.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 25.0,
"k_percent": 30.3,
"bb_percent": 11.2,
"woba": 0.294,
"xwoba": 0.324,
"xba": 0.221,
"xslg": 0.424,
"sweet_spot_percent": 46.2,
"barrel_batted_rate": 15.4,
"hard_hit_percent": 46.2,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 16.8,
"whiff_percent": 32.9,
"swing_percent": 44.7
},
"components": {
"expected_quality": 0.7344,
"regression_edge": 0.8571,
"xwoba_edge": 0.5714,
"xba_edge": -0.5,
"xslg_edge": 0.7429,
"barrel_edge": 1.9111,
"hard_hit_edge": 1.1,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 2.15,
"launch_angle_hr_bonus": 0.2
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away BAL | True | 150 | -0.4469 | 1 | 1.0380 | 0.9526 | 0.9960 | 1.0606 | neutral | 0.3380 | 0.3310 | 18.90 | 9 | 21 | 8.70 | 41.10 | |
| Home SEA | True | 175 | 0.2610 | 1 | 0.9778 | 1 | 0.9080 | 1.0100 | neutral | 0.2860 | 0.2730 | 24 | 4.60 | 24.20 | 7.30 | 44.40 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away BAL | True | None | 103 | 90.91 | 2440 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0663 | |
| Home SEA | True | None | 95 | 92.51 | 2287 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.1559 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 0.9778 |
| home_runs_vs_away_pitcher | 1.0380 |
| home_pitcher_quality_edge | 0.7079 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "693433",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 255.0,
"k_percent": 24.0,
"bb_percent": 4.6,
"woba": 0.273,
"xwoba": 0.286,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 44.4,
"avg_best_speed": 78.7832,
"avg_hyper_speed": 94.57,
"whiff_percent": 24.2,
"swing_percent": 54.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3934,
"command_and_miss": 0.2514,
"regression_edge": -0.3714,
"xwoba_edge": 0.8286,
"barrel_edge": 0.0,
"hard_hit_edge": -0.8714,
"whiff_edge": -0.2143,
"bb_edge": 1.15,
"pitch_design_score": 0.1559
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "693433",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 95,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.5129,
"release_spin_rate": 2286.8317,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1559,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1136,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.261,
"sample_weight": 1.0,
"run_prevention_factor": 0.9778,
"strikeout_factor": 1.0,
"walk_factor": 0.908,
"homer_factor": 1.01,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693433",
"espn_id": 4629089,
"player_name": "Bryan Woo",
"team": "SEA",
"role": "pitcher",
"espn_rank": 175,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 175,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 8.0,
"qs_rank": 15,
"era_value": 4.2804,
"era_rank": 54.0,
"w_value": 5.0,
"w_rank": 39,
"l_value": 5.0,
"l_rank": 36,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 82.0,
"ip_rank": 30,
"h_value": 70.0,
"h_rank": 51,
"er_value": 39.0,
"er_rank": 29,
"hr_value": 9.0,
"hr_rank": 59,
"bb_value": 15.0,
"bb_rank": 191,
"k_value": 79.0,
"k_rank": 34,
"k_per_9_value": 8.6707325,
"k_per_9_rank": 30,
"whip_value": 1.0365,
"whip_rank": 14.0,
"war_value": 0.57,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "669358",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 255.0,
"k_percent": 18.9,
"bb_percent": 9.0,
"woba": 0.331,
"xwoba": 0.338,
"sweet_spot_percent": 37.2,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 41.1,
"avg_best_speed": 80.2175,
"avg_hyper_speed": 94.691,
"whiff_percent": 21.0,
"swing_percent": 47.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.5599,
"command_and_miss": -0.4564,
"regression_edge": -0.2,
"xwoba_edge": -0.6571,
"barrel_edge": -0.3111,
"hard_hit_edge": -0.4,
"whiff_edge": -0.6714,
"bb_edge": 0.05,
"pitch_design_score": 0.0663
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669358",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 103,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 103,
"pitch_usage": 0.0,
"release_speed": 90.9127128699343,
"release_spin_rate": 2439.6068049668584,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 103,
"pitch_usage": 0.0,
"release_speed": 90.9127128699343,
"release_spin_rate": 2439.6068049668584,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.9127,
"release_spin_rate": 2439.6068,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0663,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4735,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.4469,
"sample_weight": 1.0,
"run_prevention_factor": 1.038,
"strikeout_factor": 0.9526,
"walk_factor": 0.996,
"homer_factor": 1.0606,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669358",
"espn_id": 39639,
"player_name": "Shane Baz",
"team": "BAL",
"role": "pitcher",
"espn_rank": 150,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 150,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 4.0609,
"era_rank": 43.0,
"w_value": 4.0,
"w_rank": 65,
"l_value": 6.0,
"l_rank": 17,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 82.0,
"ip_rank": 30,
"h_value": 82.0,
"h_rank": 13,
"er_value": 37.0,
"er_rank": 40,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 32.0,
"bb_rank": 16,
"k_value": 67.0,
"k_rank": 59,
"k_per_9_value": 7.3536587,
"k_per_9_rank": 53,
"whip_value": 1.3902,
"whip_rank": 56.0,
"war_value": 0.66,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 0.9778,
"home_runs_vs_away_pitcher": 1.038,
"home_pitcher_quality_edge": 0.7079
},
"score_before": {
"away_runs": 3.4376,
"home_runs": 2.9729
},
"score_after": {
"away_runs": 3.3613,
"home_runs": 3.0859,
"home_win_probability": 0.4893
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away BAL | 15-51 | 0.227 | 1.10 | 3.50 | -162 | cold | average | |
| Home SEA | 20-43 | 0.317 | 1.20 | 2.90 | -106 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away BAL | 34-40 | 0.459 | -35 | -0.473 | True |
| Home SEA | 38-36 | 0.514 | 22 | 0.297 | True |
| Signal | - | - | 0.770 | 0.851 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target BAL | - | - | 3 | - | - | - | - |
| Game target SEA | - | - | 4 | - | - | - | - |
| Player finalized BAL | 32 | 9 | 3 | 0 | 3 | 1 | 9 |
| Player finalized SEA | 31 | 9 | 2 | 0 | 1 | 1 | 7 |
| Player model fractional BAL | 31.74 | 7.38 | 4.22 | 1.16 | 4.18 | 3.49 | 8.10 |
| Player model fractional SEA | 31.19 | 7.42 | 3.96 | 1.25 | 3.97 | 3.12 | 7.64 |
| Simulation box BAL | 30 | 3 | 2 | 0 | 2 | 5 | 7 |
| Simulation box SEA | 33 | 9 | 3 | 2 | 3 | 6 | 3 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away BAL | Starter | Shane Baz | 6 | 3 | 2 | 7 | 2 | 3.43 | 1.29 | True |
| Away BAL | Middle Reliever | Rico Garcia | 1 | 0 | 0 | 1 | 1 | 5.02 | 1.25 | True |
| Away BAL | Middle Reliever | Ryan Helsley | 1 | 0 | 1 | 0 | 3 | 4.64 | 1.30 | True |
| Away BAL | Middle Reliever | Andrew Kittredge | 0 | 0 | 0 | 1 | 0 | 4.17 | 1.17 | True |
| Home SEA | Starter | Bryan Woo | 5.20 | 1 | 6 | 2 | 2 | 4.81 | 1.15 | True |
| Home SEA | Middle Reliever | Andrés Muñoz | 1.10 | 0 | 0 | 0 | 0 | 4.73 | 1.37 | True |
| Home SEA | Middle Reliever | Eduard Bazardo | 1.10 | 1 | 0 | 1 | 2 | 3.09 | 1.26 | True |
| Home SEA | Middle Reliever | José A. Ferrer | 0.20 | 0 | 1 | 0 | 1 | 6.53 | 1.85 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | SEA | batter | 1B | Josh Naylor | better | 10 | 5 | 5 | 6 | 4 | predicted_H | 2.0000 | boost | better |
| away | BAL | batter | SS | Gunnar Henderson | worse | 9 | 2 | 7 | 1 | 8 | predicted_AB | -1.5700 | deboost | worse |
| home | SEA | batter | RF | Dominic Canzone | better | 10 | 7 | 3 | 8 | 2 | predicted_RBI | 1.4700 | boost | better |
| home | SEA | batter | LF | Miles Mastrobuoni | better | 9 | 4 | 5 | 5 | 4 | predicted_H | 1.3800 | boost | better |
| home | SEA | batter | 3B | J.P. Crawford | worse | 11 | 2 | 9 | 3 | 8 | predicted_BB | 1.3680 | boost | better |
| home | SEA | batter | DH | Cal Raleigh | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -1.3260 | deboost | better |
| away | BAL | batter | LF | Taylor Ward | worse | 9 | 3 | 6 | 2 | 7 | predicted_AB | -1.2100 | deboost | worse |
| home | SEA | batter | SS | Colt Emerson | worse | 10 | 2 | 8 | 3 | 7 | predicted_SO | -1.0800 | deboost | better |
| home | SEA | batter | CF | Victor Robles | worse | 11 | 2 | 9 | 3 | 8 | predicted_AB | 1.0590 | boost | better |
| away | BAL | batter | 1B | Pete Alonso | worse | 10 | 2 | 8 | 2 | 8 | predicted_AB | -1.0200 | deboost | worse |
| away | BAL | batter | 3B | Blaze Alexander | worse | 11 | 5 | 6 | 4 | 7 | predicted_AB | 1.0000 | boost | better |
| home | SEA | pitcher | Starter | Bryan Woo | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 1.0000 | boost | better |
| home | SEA | pitcher | Middle Reliever | José A. Ferrer | worse | 2 | 0 | 2 | 0 | 2 | predicted_SO | -1.0000 | deboost | worse |
| away | BAL | batter | C | Samuel Basallo | worse | 8 | 1 | 7 | 2 | 6 | predicted_SO | -0.9330 | deboost | better |
| away | BAL | batter | RF | Leody Taveras | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -0.8470 | deboost | better |
| home | SEA | batter | 2B | Cole Young | worse | 10 | 4 | 6 | 3 | 7 | predicted_AB | -0.8200 | deboost | worse |
| away | BAL | batter | CF | Colton Cowser | worse | 9 | 3 | 6 | 2 | 7 | predicted_BB | 0.7020 | boost | better |
| home | SEA | batter | C | Mitch Garver | worse | 10 | 3 | 7 | 3 | 7 | predicted_H | -0.6400 | deboost | worse |
| away | BAL | batter | 2B | Jackson Holliday | worse | 8 | 0 | 8 | 1 | 7 | predicted_H | -0.6200 | deboost | worse |
| away | BAL | batter | DH | Adley Rutschman | worse | 7 | 2 | 5 | 3 | 4 | predicted_SO | -0.5960 | deboost | better |
| away | BAL | pitcher | Middle Reliever | Andrew Kittredge | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.1000 | deboost | worse |
| home | SEA | pitcher | Middle Reliever | Andrés Muñoz | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | SEA | pitcher | Middle Reliever | Eduard Bazardo | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Shane Baz |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.4469 |
| ESPN Rank | 150 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0663 |
| Avg Velo | 90.9127 |
| Avg Spin | 2439.6068 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 3 |
| Pre H | 7 |
| Pre BB | 2 |
| Pre SO | 2 |
| Season ERA | 4.0610 |
| Season WHIP | 1.3902 |
| Role Avg IP | 5.8570 |
| Recent Avg IP | 6.1330 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"opponent": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"edges": {
"quality_edge": -0.1071,
"offense_edge": 0.0085,
"opponent_offense_edge": -0.0198,
"defense_strength": -0.0601,
"opponent_defense_weakness": -0.1034,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0082,
"strikeout": 0.9984
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669358",
"profile": {
"available": true,
"pitcher_id": "669358",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 255.0,
"k_percent": 18.9,
"bb_percent": 9.0,
"woba": 0.331,
"xwoba": 0.338,
"sweet_spot_percent": 37.2,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 41.1,
"avg_best_speed": 80.2175,
"avg_hyper_speed": 94.691,
"whiff_percent": 21.0,
"swing_percent": 47.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.5599,
"command_and_miss": -0.4564,
"regression_edge": -0.2,
"xwoba_edge": -0.6571,
"barrel_edge": -0.3111,
"hard_hit_edge": -0.4,
"whiff_edge": -0.6714,
"bb_edge": 0.05,
"pitch_design_score": 0.0663
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669358",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 103,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 103,
"pitch_usage": 0.0,
"release_speed": 90.9127128699343,
"release_spin_rate": 2439.6068049668584,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 103,
"pitch_usage": 0.0,
"release_speed": 90.9127128699343,
"release_spin_rate": 2439.6068049668584,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.9127,
"release_spin_rate": 2439.6068,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0663,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4735,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.4469,
"sample_weight": 1.0,
"run_prevention_factor": 1.038,
"strikeout_factor": 0.9526,
"walk_factor": 0.996,
"homer_factor": 1.0606,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669358",
"espn_id": 39639,
"player_name": "Shane Baz",
"team": "BAL",
"role": "pitcher",
"espn_rank": 150,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 150,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 4.0609,
"era_rank": 43.0,
"w_value": 4.0,
"w_rank": 65,
"l_value": 6.0,
"l_rank": 17,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 82.0,
"ip_rank": 30,
"h_value": 82.0,
"h_rank": 13,
"er_value": 37.0,
"er_rank": 40,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 32.0,
"bb_rank": 16,
"k_value": 67.0,
"k_rank": 59,
"k_per_9_value": 7.3536587,
"k_per_9_rank": 53,
"whip_value": 1.3902,
"whip_rank": 56.0,
"war_value": 0.66,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.038,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.038,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.996,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0606,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9526,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 60.0,
"ER": 25,
"H": 56,
"BB": 24,
"SO": 48,
"HR": 6,
"ERA": 3.75,
"WHIP": 1.3333333333333333,
"K9": 7.2,
"HR9": 0.9,
"games_pitched": 10,
"quality_starts": 4,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "669358",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 103,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 103,
"pitch_usage": 0.0,
"release_speed": 90.9127128699343,
"release_spin_rate": 2439.6068049668584,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 103,
"pitch_usage": 0.0,
"release_speed": 90.9127128699343,
"release_spin_rate": 2439.6068049668584,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.9127,
"release_spin_rate": 2439.6068,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0663,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4735,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "669358",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 30.2,
"ER": 7.0,
"R": 12.0,
"H": 26.0,
"BB": 10.0,
"SO": 25.0,
"HR": 2.0,
"BF": 127.0,
"Pitches": 471.0
},
"per_game": {
"IP": 6.0,
"ER": 1.4,
"R": 2.4,
"H": 5.2,
"BB": 2.0,
"SO": 5.0,
"HR": 0.4,
"BF": 25.4,
"Pitches": 94.2
},
"rates": {
"ERA": 2.0543,
"WHIP": 1.1739,
"ER_per_IP": 0.22826,
"H_per_IP": 0.84783,
"BB_per_IP": 0.32609,
"SO_per_IP": 0.81522,
"HR_per_IP": 0.06522
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 60.0,
"ER": 25.0,
"R": 31.0,
"H": 56.0,
"BB": 24.0,
"SO": 48.0,
"HR": 6.0,
"BF": 258.0,
"Pitches": 971.0
},
"per_game": {
"IP": 6.0,
"ER": 2.5,
"R": 3.1,
"H": 5.6,
"BB": 2.4,
"SO": 4.8,
"HR": 0.6,
"BF": 25.8,
"Pitches": 97.1
},
"rates": {
"ERA": 3.75,
"WHIP": 1.3333,
"ER_per_IP": 0.41667,
"H_per_IP": 0.93333,
"BB_per_IP": 0.4,
"SO_per_IP": 0.8,
"HR_per_IP": 0.1
}
},
"season": {
"games": 14,
"totals": {
"IP": 82.0,
"ER": 37.0,
"R": 43.0,
"H": 82.0,
"BB": 32.0,
"SO": 67.0,
"HR": 8.0,
"BF": 355.0,
"Pitches": 1345.0
},
"per_game": {
"IP": 6.0,
"ER": 2.6429,
"R": 3.0714,
"H": 5.8571,
"BB": 2.2857,
"SO": 4.7857,
"HR": 0.5714,
"BF": 25.3571,
"Pitches": 96.0714
},
"rates": {
"ERA": 4.061,
"WHIP": 1.3902,
"ER_per_IP": 0.45122,
"H_per_IP": 1.0,
"BB_per_IP": 0.39024,
"SO_per_IP": 0.81707,
"HR_per_IP": 0.09756
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.289,
"predicted_H": 5.553,
"predicted_BB": 2.186,
"predicted_SO": 5.063,
"predicted_HR": 0.601,
"predicted_ERA": 3.4332,
"predicted_WHIP": 1.2899
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 6.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 2.289,
"final": 2.6169,
"source": "model_form_blend"
},
"predicted_H": {
"model": 7.0,
"form": 5.553,
"final": 6.2204,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 2.186,
"final": 2.1002,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 5.063,
"final": 3.6503,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 2.0,
"form": 0.601,
"final": 1.2462,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4332,
"final": 3.4332,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2899,
"final": 1.2899,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Rico Garcia |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3354 |
| ESPN Rank | 57 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 1.8202 |
| Season WHIP | 0.7416 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"opponent": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"edges": {
"quality_edge": -0.1071,
"offense_edge": 0.0085,
"opponent_offense_edge": -0.0198,
"defense_strength": -0.0601,
"opponent_defense_weakness": -0.1034,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0082,
"strikeout": 0.9984
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "670329",
"profile": {
"available": true,
"pitcher_id": "670329",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 80.0,
"k_percent": 29.4,
"bb_percent": 9.2,
"woba": 0.211,
"xwoba": 0.27,
"sweet_spot_percent": 25.4,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 32.8,
"avg_best_speed": 74.4502,
"avg_hyper_speed": 93.0577,
"whiff_percent": 36.5,
"swing_percent": 49.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.1751,
"command_and_miss": 0.9836,
"regression_edge": -1.6857,
"xwoba_edge": 1.2857,
"barrel_edge": -0.3778,
"hard_hit_edge": 0.7857,
"whiff_edge": 1.5429,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "670329",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3354,
"sample_weight": 0.45,
"run_prevention_factor": 0.9715,
"strikeout_factor": 1.0455,
"walk_factor": 1.0,
"homer_factor": 0.9821,
"woba_minus_xwoba": -0.059,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "670329",
"espn_id": 41382,
"player_name": "Rico Garcia",
"team": "BAL",
"role": "pitcher",
"espn_rank": 57,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 57,
"gp_value": 32.0,
"gp_rank": 31,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.8202,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 4.0,
"sv_rank": 30,
"hld_value": 9.0,
"hld_rank": 31,
"ip_value": 29.2,
"ip_rank": 259,
"h_value": 12.0,
"h_rank": 460,
"er_value": 6.0,
"er_rank": 464,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 10.0,
"bb_rank": 303,
"k_value": 32.0,
"k_rank": 222,
"k_per_9_value": 9.707865,
"k_per_9_rank": 23,
"whip_value": 0.7415,
"whip_rank": null,
"war_value": 1.36,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9872,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9872,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9919,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0205,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 4,
"H": 8,
"BB": 3,
"SO": 7,
"HR": 3,
"ERA": 3.8571428571428577,
"WHIP": 1.1785714285714288,
"K9": 6.750000000000001,
"HR9": 2.8928571428571432,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "670329",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"role": "pitcher",
"player_id": "670329",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 4.0,
"R": 5.0,
"H": 5.0,
"BB": 1.0,
"SO": 4.0,
"HR": 3.0,
"BF": 19.0,
"Pitches": 77.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 1.0,
"H": 1.0,
"BB": 0.2,
"SO": 0.8,
"HR": 0.6,
"BF": 3.8,
"Pitches": 15.4
},
"rates": {
"ERA": 8.3077,
"WHIP": 1.3846,
"ER_per_IP": 0.92308,
"H_per_IP": 1.15385,
"BB_per_IP": 0.23077,
"SO_per_IP": 0.92308,
"HR_per_IP": 0.69231
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 5.0,
"H": 8.0,
"BB": 3.0,
"SO": 7.0,
"HR": 3.0,
"BF": 38.0,
"Pitches": 142.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.5,
"H": 0.8,
"BB": 0.3,
"SO": 0.7,
"HR": 0.3,
"BF": 3.8,
"Pitches": 14.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.1786,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.32143,
"SO_per_IP": 0.75,
"HR_per_IP": 0.32143
}
},
"season": {
"games": 32,
"totals": {
"IP": 29.2,
"ER": 6.0,
"R": 7.0,
"H": 12.0,
"BB": 10.0,
"SO": 32.0,
"HR": 4.0,
"BF": 109.0,
"Pitches": 424.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1875,
"R": 0.2188,
"H": 0.375,
"BB": 0.3125,
"SO": 1.0,
"HR": 0.125,
"BF": 3.4062,
"Pitches": 13.25
},
"rates": {
"ERA": 1.8202,
"WHIP": 0.7416,
"ER_per_IP": 0.20225,
"H_per_IP": 0.40449,
"BB_per_IP": 0.33708,
"SO_per_IP": 1.07865,
"HR_per_IP": 0.13483
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.558,
"predicted_H": 0.934,
"predicted_BB": 0.32,
"predicted_SO": 0.914,
"predicted_HR": 0.311,
"predicted_ERA": 5.019,
"predicted_WHIP": 1.2543
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.544,
"form_weight": 0.456,
"form_reliability": 0.5409,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.558,
"final": 0.2545,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.934,
"final": 0.9699,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.32,
"final": 0.6899,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.914,
"final": 0.4168,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.311,
"final": 0.1418,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.019,
"final": 5.019,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2543,
"final": 1.2543,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Ryan Helsley |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1960 |
| ESPN Rank | 310 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2024 |
| Avg Velo | 93.3439 |
| Avg Spin | 2356.4997 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 3 |
| Pre SO | 1 |
| Season ERA | 3.8571 |
| Season WHIP | 1.3714 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"opponent": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"edges": {
"quality_edge": -0.1071,
"offense_edge": 0.0085,
"opponent_offense_edge": -0.0198,
"defense_strength": -0.0601,
"opponent_defense_weakness": -0.1034,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0082,
"strikeout": 0.9984
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "664854",
"profile": {
"available": true,
"pitcher_id": "664854",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 45.0,
"k_percent": 33.3,
"bb_percent": 13.7,
"woba": 0.306,
"xwoba": 0.287,
"sweet_spot_percent": 18.5,
"barrel_batted_rate": 7.4,
"hard_hit_percent": 59.3,
"avg_best_speed": 84.0002,
"avg_hyper_speed": 96.0243,
"whiff_percent": 40.2,
"swing_percent": 45.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.0975,
"command_and_miss": 1.1943,
"regression_edge": 0.5429,
"xwoba_edge": 0.8,
"barrel_edge": -0.0222,
"hard_hit_edge": -2.5,
"whiff_edge": 2.0714,
"bb_edge": -1.125,
"pitch_design_score": 0.2024
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "664854",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 14,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 14,
"pitch_usage": 0.0,
"release_speed": 93.3439451240767,
"release_spin_rate": 2356.4997381030275,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 14,
"pitch_usage": 0.0,
"release_speed": 93.3439451240767,
"release_spin_rate": 2356.4997381030275,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 93.3439,
"release_spin_rate": 2356.4997,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.2024,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.446,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.196,
"sample_weight": 0.45,
"run_prevention_factor": 0.9833,
"strikeout_factor": 1.0651,
"walk_factor": 1.0405,
"homer_factor": 1.035,
"woba_minus_xwoba": 0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664854",
"espn_id": 39909,
"player_name": "Ryan Helsley",
"team": "BAL",
"role": "pitcher",
"espn_rank": 310,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 310,
"gp_value": 13.0,
"gp_rank": 329,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.8571,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 7.0,
"sv_rank": 20,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 11.2,
"ip_rank": 465,
"h_value": 9.0,
"h_rank": 498,
"er_value": 5.0,
"er_rank": 496,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 17.0,
"k_rank": 386,
"k_per_9_value": 13.114286,
"k_per_9_rank": 22,
"whip_value": 1.3714,
"whip_rank": null,
"war_value": 0.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9925,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9925,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0182,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0157,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0293,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 4,
"H": 5,
"BB": 6,
"SO": 13,
"HR": 2,
"ERA": 3.8571428571428577,
"WHIP": 1.1785714285714288,
"K9": 12.535714285714286,
"HR9": 1.9285714285714288,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": true,
"pitcher_id": "664854",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 14,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 14,
"pitch_usage": 0.0,
"release_speed": 93.3439451240767,
"release_spin_rate": 2356.4997381030275,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 14,
"pitch_usage": 0.0,
"release_speed": 93.3439451240767,
"release_spin_rate": 2356.4997381030275,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 93.3439,
"release_spin_rate": 2356.4997,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.2024,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.446,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.317,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3166,
"prior_weight": 0.6834
},
"role": "pitcher",
"player_id": "664854",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 3.0,
"R": 3.0,
"H": 2.0,
"BB": 3.0,
"SO": 6.0,
"HR": 2.0,
"BF": 18.0,
"Pitches": 70.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.4,
"BB": 0.6,
"SO": 1.2,
"HR": 0.4,
"BF": 3.6,
"Pitches": 14.0
},
"rates": {
"ERA": 6.2308,
"WHIP": 1.1538,
"ER_per_IP": 0.69231,
"H_per_IP": 0.46154,
"BB_per_IP": 0.69231,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.46154
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 5.0,
"BB": 6.0,
"SO": 13.0,
"HR": 2.0,
"BF": 38.0,
"Pitches": 149.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.5,
"BB": 0.6,
"SO": 1.3,
"HR": 0.2,
"BF": 3.8,
"Pitches": 14.9
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.1786,
"ER_per_IP": 0.42857,
"H_per_IP": 0.53571,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.39286,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 13,
"totals": {
"IP": 11.2,
"ER": 5.0,
"R": 5.0,
"H": 9.0,
"BB": 7.0,
"SO": 17.0,
"HR": 2.0,
"BF": 51.0,
"Pitches": 201.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3846,
"R": 0.3846,
"H": 0.6923,
"BB": 0.5385,
"SO": 1.3077,
"HR": 0.1538,
"BF": 3.9231,
"Pitches": 15.4615
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.3714,
"ER_per_IP": 0.42857,
"H_per_IP": 0.77143,
"BB_per_IP": 0.6,
"SO_per_IP": 1.45714,
"HR_per_IP": 0.17143
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.516,
"predicted_H": 0.84,
"predicted_BB": 0.456,
"predicted_SO": 1.085,
"predicted_HR": 0.2,
"predicted_ERA": 4.6403,
"predicted_WHIP": 1.2957
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6387,
"form_weight": 0.3613,
"form_reliability": 0.3166,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.317,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3166,
"prior_weight": 0.6834
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.516,
"final": 0.1864,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.84,
"final": 0.3035,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 0.456,
"final": 2.0809,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.085,
"final": 1.0307,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.2,
"final": 0.0723,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.6403,
"final": 4.6403,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2957,
"final": 1.2957,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Andrew Kittredge |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1842 |
| ESPN Rank | 608 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 6.0612 |
| Season WHIP | 1.4082 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"opponent": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"edges": {
"quality_edge": -0.1071,
"offense_edge": 0.0085,
"opponent_offense_edge": -0.0198,
"defense_strength": -0.0601,
"opponent_defense_weakness": -0.1034,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0082,
"strikeout": 0.9984
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "552640",
"profile": {
"available": true,
"pitcher_id": "552640",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 51.0,
"k_percent": 20.3,
"bb_percent": 6.8,
"woba": 0.329,
"xwoba": 0.278,
"sweet_spot_percent": 35.2,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 33.3,
"avg_best_speed": 74.9946,
"avg_hyper_speed": 93.3968,
"whiff_percent": 23.3,
"swing_percent": 53.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5362,
"command_and_miss": -0.1414,
"regression_edge": 1.4571,
"xwoba_edge": 1.0571,
"barrel_edge": 0.3778,
"hard_hit_edge": 0.7143,
"whiff_edge": -0.3429,
"bb_edge": 0.6,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "552640",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.1842,
"sample_weight": 0.45,
"run_prevention_factor": 0.9843,
"strikeout_factor": 0.9882,
"walk_factor": 0.9784,
"homer_factor": 0.9593,
"woba_minus_xwoba": 0.051,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "552640",
"espn_id": 35872,
"player_name": "Andrew Kittredge",
"team": "BAL",
"role": "pitcher",
"espn_rank": 608,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 608,
"gp_value": 19.0,
"gp_rank": 195,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 6.0612,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 2.0,
"hld_rank": 165,
"ip_value": 16.1,
"ip_rank": 425,
"h_value": 19.0,
"h_rank": 352,
"er_value": 11.0,
"er_rank": 294,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 4.0,
"bb_rank": 502,
"k_value": 15.0,
"k_rank": 411,
"k_per_9_value": 8.265306,
"k_per_9_rank": 26,
"whip_value": 1.4081,
"whip_rank": null,
"war_value": -0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9929,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9929,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9903,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9817,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9947,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 2,
"H": 5,
"BB": 1,
"SO": 8,
"HR": 1,
"ERA": 2.0,
"WHIP": 0.6666666666666666,
"K9": 8.0,
"HR9": 1.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "552640",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.244,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3935,
"prior_weight": 0.6065
},
"role": "pitcher",
"player_id": "552640",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 19,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 0.0,
"SO": 2.0,
"HR": 1.0,
"BF": 18.0,
"Pitches": 45.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.0,
"SO": 0.4,
"HR": 0.2,
"BF": 3.6,
"Pitches": 9.0
},
"rates": {
"ERA": 3.8571,
"WHIP": 0.8571,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.0,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 1.0,
"SO": 8.0,
"HR": 1.0,
"BF": 33.0,
"Pitches": 101.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.5,
"BB": 0.1,
"SO": 0.8,
"HR": 0.1,
"BF": 3.3,
"Pitches": 10.1
},
"rates": {
"ERA": 2.0,
"WHIP": 0.6667,
"ER_per_IP": 0.22222,
"H_per_IP": 0.55556,
"BB_per_IP": 0.11111,
"SO_per_IP": 0.88889,
"HR_per_IP": 0.11111
}
},
"season": {
"games": 19,
"totals": {
"IP": 16.1,
"ER": 11.0,
"R": 13.0,
"H": 19.0,
"BB": 4.0,
"SO": 15.0,
"HR": 3.0,
"BF": 73.0,
"Pitches": 248.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5789,
"R": 0.6842,
"H": 1.0,
"BB": 0.2105,
"SO": 0.7895,
"HR": 0.1579,
"BF": 3.8421,
"Pitches": 13.0526
},
"rates": {
"ERA": 6.0612,
"WHIP": 1.4082,
"ER_per_IP": 0.67347,
"H_per_IP": 1.16327,
"BB_per_IP": 0.2449,
"SO_per_IP": 0.91837,
"HR_per_IP": 0.18367
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.276,
"predicted_H": 0.542,
"predicted_BB": 0.152,
"predicted_SO": 0.5,
"predicted_HR": 0.093,
"predicted_ERA": 4.1697,
"predicted_WHIP": 1.1654
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6062,
"form_weight": 0.3938,
"form_reliability": 0.3935,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.244,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3935,
"prior_weight": 0.6065
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.276,
"final": 0.1087,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.542,
"final": 0.8197,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.152,
"final": 0.0599,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.5,
"final": 0.1969,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.093,
"final": 0.0366,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.1697,
"final": 4.1697,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1654,
"final": 1.1654,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.288 | 0.000 | 0.000 | Hitting_2B | 0.324 | 0.000 | -0.324 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_AB | 4.090 | 4.000 | 4.000 | Hitting_AB | 3.890 | 4.000 | 0.110 | 0.000 |
| predicted_AVG | 0.238 | 0.250 | 0.250 | Hitting_AVG | 0.266 | 0.000 | -0.016 | 0.250 |
| predicted_BB | 0.404 | 0.000 | 0.000 | Hitting_BB | 0.405 | 0.000 | -0.405 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_H | 0.980 | 1.000 | 1.000 | Hitting_H | 1.035 | 0.000 | -0.035 | 1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_OBP | 0.313 | 0.250 | 0.250 | Hitting_OBP | 0.337 | 0.000 | -0.087 | 0.250 |
| predicted_R | 0.500 | 1.000 | 0.000 | Hitting_R | 0.532 | 0.000 | 0.468 | 1.000 |
| predicted_RBI | 0.750 | 1.000 | 1.000 | Hitting_RBI | 0.711 | 0.000 | 0.289 | 1.000 |
| predicted_SLG | 0.419 | 0.250 | 0.250 | Hitting_SLG | 0.495 | 0.000 | -0.245 | 0.250 |
| predicted_SO | 0.596 | 0.000 | 1.000 | Hitting_SO | 0.671 | 0.000 | -0.671 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 7 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 5 |
| Better Metrics | 3 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_R: 0.5000 -> 1.0000 (boost 0.5000, better) |
| Biggest Deboost | predicted_SO: 0.5960 -> 0.0000 (deboost -0.5960, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_AB: 4.0900 -> 3.9402 (deboost -0.1498, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.4217 -> 0.4147 (deboost -0.0070, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 0.6043 -> 1.0000 (boost 0.3957, worse) | predicted_BB: 0.3905 -> 0.0000 (deboost -0.3905, worse) | AB rounded to 4 (raw=4.09), rates preserved: AVG=0.232 HR/AB=0.030 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.667) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4671 -> 0.0000 (deboost -0.4671, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2404 -> 0.2500 (boost 0.0096, better) | predicted_SLG: 0.4147 -> 0.2500 (deboost -0.1647, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4147 (boost 0.1647, better) | predicted_AVG: 0.2500 -> 0.2404 (deboost -0.0096, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668939",
"player_name": "Adley Rutschman",
"position": "DH",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.288,
"predicted_3B": 0.019,
"predicted_AB": 4.09,
"predicted_AVG": 0.238,
"predicted_BB": 0.404,
"predicted_H": 0.98,
"predicted_HR": 0.13,
"predicted_OBP": 0.313,
"predicted_R": 0.5,
"predicted_RBI": 0.75,
"predicted_SLG": 0.419,
"predicted_SO": 0.596
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2772,
"predicted_3B": 0.0231,
"predicted_AB": 3.9402,
"predicted_AVG": 0.2425,
"predicted_BB": 0.3916,
"predicted_H": 0.9584,
"predicted_HBP": 0.014,
"predicted_HR": 0.1229,
"predicted_OBP": 0.3135,
"predicted_R": 0.4764,
"predicted_RBI": 0.7716,
"predicted_SLG": 0.4217,
"predicted_SO": 0.6026
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.288,
"after": 0.2772,
"delta": -0.0108,
"percent_delta": -0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0231,
"delta": 0.0041,
"percent_delta": 0.2158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.09,
"after": 3.9402,
"delta": -0.1498,
"percent_delta": -0.0366,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2425,
"delta": 0.0045,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.404,
"after": 0.3916,
"delta": -0.0124,
"percent_delta": -0.0307,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 0.9584,
"delta": -0.0216,
"percent_delta": -0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1229,
"delta": -0.0071,
"percent_delta": -0.0546,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3135,
"delta": 0.0005,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.4764,
"delta": -0.0236,
"percent_delta": -0.0472,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.75,
"after": 0.7716,
"delta": 0.0216,
"percent_delta": 0.0288,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.419,
"after": 0.4217,
"delta": 0.0027,
"percent_delta": 0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.596,
"after": 0.6026,
"delta": 0.0066,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.09,
"after": 3.9402,
"delta": -0.1498,
"percent_delta": -0.0366,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 52
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2772,
"predicted_3B": 0.0231,
"predicted_AB": 3.9402,
"predicted_AVG": 0.2404,
"predicted_BB": 0.3905,
"predicted_H": 0.9472,
"predicted_HBP": 0.014,
"predicted_HR": 0.1211,
"predicted_OBP": 0.3089,
"predicted_R": 0.4671,
"predicted_RBI": 0.7565,
"predicted_SLG": 0.4147,
"predicted_SO": 0.6043
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2772,
"after": 0.2772,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0231,
"after": 0.0231,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9402,
"after": 3.9402,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2425,
"after": 0.2404,
"delta": -0.0021,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3916,
"after": 0.3905,
"delta": -0.0011,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9584,
"after": 0.9472,
"delta": -0.0112,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.014,
"after": 0.014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1229,
"after": 0.1211,
"delta": -0.0018,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3135,
"after": 0.3089,
"delta": -0.0046,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4764,
"after": 0.4671,
"delta": -0.0093,
"percent_delta": -0.0195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7716,
"after": 0.7565,
"delta": -0.0151,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4217,
"after": 0.4147,
"delta": -0.007,
"percent_delta": -0.0166,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6026,
"after": 0.6043,
"delta": 0.0017,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4217,
"after": 0.4147,
"delta": -0.007,
"percent_delta": -0.0166,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.09), rates preserved: AVG=0.232 HR/AB=0.030",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2772,
"after": 0.0,
"delta": -0.2772,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0231,
"after": 0.0,
"delta": -0.0231,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9402,
"after": 4.0,
"delta": 0.0598,
"percent_delta": 0.0152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3905,
"after": 0.0,
"delta": -0.3905,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9472,
"after": 1.0,
"delta": 0.0528,
"percent_delta": 0.0557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1211,
"after": 0.0,
"delta": -0.1211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7565,
"after": 1.0,
"delta": 0.2435,
"percent_delta": 0.3219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6043,
"after": 1.0,
"delta": 0.3957,
"percent_delta": 0.6548,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6043,
"after": 1.0,
"delta": 0.3957,
"percent_delta": 0.6548,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3905,
"after": 0.0,
"delta": -0.3905,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.667)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4671,
"after": 0.0,
"delta": -0.4671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4671,
"after": 0.0,
"delta": -0.4671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2404,
"after": 0.25,
"delta": 0.0096,
"percent_delta": 0.0399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3089,
"after": 0.25,
"delta": -0.0589,
"percent_delta": -0.1907,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4147,
"after": 0.25,
"delta": -0.1647,
"percent_delta": -0.3972,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2404,
"after": 0.25,
"delta": 0.0096,
"percent_delta": 0.0399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4147,
"after": 0.25,
"delta": -0.1647,
"percent_delta": -0.3972,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2404,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3089,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4147,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2404,
"delta": -0.0096,
"percent_delta": -0.0384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3089,
"delta": 0.0589,
"percent_delta": 0.2355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4147,
"delta": 0.1647,
"percent_delta": 0.6587,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4147,
"delta": 0.1647,
"percent_delta": 0.6587,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2404,
"delta": -0.0096,
"percent_delta": -0.0384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.288,
"after": 0.0,
"delta": -0.288,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.09,
"after": 4.0,
"delta": -0.09,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2404,
"delta": 0.0024,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.404,
"after": 0.0,
"delta": -0.404,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.0,
"delta": 0.02,
"percent_delta": 0.0204,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3089,
"delta": -0.0041,
"percent_delta": -0.0131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.75,
"after": 1.0,
"delta": 0.25,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.419,
"after": 0.4147,
"delta": -0.0043,
"percent_delta": -0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.596,
"after": 0.0,
"delta": -0.596,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.596,
"after": 0.0,
"delta": -0.596,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.288 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 4.090 | - |
| predicted_AVG | 0.238 | - |
| predicted_BB | 0.404 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.750 | - |
| predicted_SLG | 0.419 | - |
| predicted_SO | 0.596 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.277 | -0.011 |
| predicted_3B | 0.023 | 0.004 |
| predicted_AB | 3.940 | -0.150 |
| predicted_AVG | 0.242 | 0.005 |
| predicted_BB | 0.392 | -0.012 |
| predicted_H | 0.958 | -0.022 |
| predicted_HBP | 0.014 | - |
| predicted_HR | 0.123 | -0.007 |
| predicted_OBP | 0.314 | 0.001 |
| predicted_R | 0.476 | -0.024 |
| predicted_RBI | 0.772 | 0.022 |
| predicted_SLG | 0.422 | 0.003 |
| predicted_SO | 0.603 | 0.007 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.277 | 0.000 |
| predicted_3B | 0.023 | 0.000 |
| predicted_AB | 3.940 | 0.000 |
| predicted_AVG | 0.240 | -0.002 |
| predicted_BB | 0.391 | -0.001 |
| predicted_H | 0.947 | -0.011 |
| predicted_HBP | 0.014 | 0.000 |
| predicted_HR | 0.121 | -0.002 |
| predicted_OBP | 0.309 | -0.005 |
| predicted_R | 0.467 | -0.009 |
| predicted_RBI | 0.756 | -0.015 |
| predicted_SLG | 0.415 | -0.007 |
| predicted_SO | 0.604 | 0.002 |
AB rounded to 4 (raw=4.09), rates preserved: AVG=0.232 HR/AB=0.030
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.667)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.277 |
| predicted_3B | 0.000 | -0.023 |
| predicted_AB | 4.000 | 0.060 |
| predicted_AVG | 0.250 | 0.010 |
| predicted_BB | 0.000 | -0.391 |
| predicted_H | 1.000 | 0.053 |
| predicted_HR | 0.000 | -0.121 |
| predicted_OBP | 0.250 | -0.059 |
| predicted_R | 0.000 | -0.467 |
| predicted_RBI | 1.000 | 0.244 |
| predicted_SLG | 0.250 | -0.165 |
| predicted_SO | 1.000 | 0.396 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 3.000 | 1.000 | 0.000 | 0.000 | 4.000 | 1.000 | 2.000 | 3.000 | 0.1765 | 0.2500 | 0.2353 | 0.1765 | 0.0000 | 0.2353 | 0.1177 | 0.1765 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 3.000 | 1.000 | 1.000 | 11.000 | 5.000 | 3.000 | 5.000 | 0.2821 | 0.3256 | 0.4872 | 0.2821 | 0.0256 | 0.2821 | 0.0769 | 0.1282 |
| season | 0.60 | 52 | - | 195.000 | 51.000 | 15.000 | 1.000 | 8.000 | 40.000 | 26.000 | 21.000 | 31.000 | 0.2615 | 0.3318 | 0.4718 | 0.2615 | 0.0410 | 0.2051 | 0.1077 | 0.1590 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2620 |
| predicted_3B | 0.0290 |
| predicted_AB | 3.7290 |
| predicted_AVG | 0.2488 |
| predicted_BB | 0.3740 |
| predicted_H | 0.9280 |
| predicted_HBP | 0.0140 |
| predicted_HR | 0.1130 |
| predicted_OBP | 0.3141 |
| predicted_R | 0.4430 |
| predicted_RBI | 0.8020 |
| predicted_SLG | 0.4254 |
| predicted_SO | 0.6120 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2880 | 0.2620 | 0.2772 | model_form_blend |
| predicted_3B | 0.0190 | 0.0290 | 0.0231 | model_form_blend |
| predicted_AB | 4.0900 | 3.7290 | 3.9402 | model_form_blend |
| predicted_AVG | 0.2380 | 0.2488 | 0.2425 | model_form_blend |
| predicted_BB | 0.4040 | 0.3740 | 0.3916 | model_form_blend |
| predicted_H | 0.9800 | 0.9280 | 0.9584 | model_form_blend |
| predicted_HBP | - | 0.0140 | 0.0140 | form_only |
| predicted_HR | 0.1300 | 0.1130 | 0.1229 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3141 | 0.3135 | model_form_blend |
| predicted_R | 0.5000 | 0.4430 | 0.4764 | model_form_blend |
| predicted_RBI | 0.7500 | 0.8020 | 0.7716 | model_form_blend |
| predicted_SLG | 0.4190 | 0.4254 | 0.4217 | model_form_blend |
| predicted_SO | 0.5960 | 0.6120 | 0.6026 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 173 |
| Season rows before report date | 173 |
| Report year | 2026 |
| Profile rows used | 52 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.262 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 668939 |
| playerID | 668939 |
| playerName | Adley Rutschman |
| pos | C |
| started | True |
| startingPosition | C |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.8 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.348 |
| sl_xwoba | 0.36 |
| sl_xba | 0.28 |
| sl_xslg | 0.462 |
| sl_sweet_spot_percent | 37.9 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 45.0 |
| sl_exit_velocity_avg | 89.5 |
| sl_launch_angle_avg | 14.5 |
| sl_whiff_percent | 15.3 |
| sl_swing_percent | 41.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.178 | 0.000 | 0.000 | Hitting_2B | 0.218 | 0.000 | -0.218 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.020 | 3.000 | 4.000 | Hitting_AB | 3.824 | 4.000 | -0.824 | -1.000 |
| predicted_AVG | 0.253 | 0.000 | 0.250 | Hitting_AVG | 0.245 | 0.250 | -0.245 | -0.250 |
| predicted_BB | 0.452 | 1.000 | 0.000 | Hitting_BB | 0.467 | 0.000 | 0.533 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 0.000 | 1.000 | Hitting_H | 0.939 | 1.000 | -0.939 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_OBP | 0.368 | 0.250 | 0.250 | Hitting_OBP | 0.329 | 0.250 | -0.079 | 0.000 |
| predicted_R | 0.589 | 0.000 | 1.000 | Hitting_R | 0.559 | 1.000 | -0.559 | -1.000 |
| predicted_RBI | 0.700 | 0.000 | 1.000 | Hitting_RBI | 0.621 | 0.000 | -0.621 | 0.000 |
| predicted_SLG | 0.483 | 0.000 | 0.250 | Hitting_SLG | 0.441 | 0.250 | -0.441 | -0.250 |
| predicted_SO | 1.014 | 1.000 | 1.000 | Hitting_SO | 1.027 | 2.000 | -0.027 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.4520 -> 1.0000 (boost 0.5480, better) |
| Biggest Deboost | predicted_AB: 4.0200 -> 3.0000 (deboost -1.0200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_BB: 0.4520 -> 0.5110 (boost 0.0590, better) | predicted_AB: 4.0200 -> 3.8425 (deboost -0.1775, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3781 -> 0.3502 (deboost -0.0279, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 3 | 3 | predicted_BB: 0.5095 -> 1.0000 (boost 0.4905, better) | predicted_HR: 0.2132 -> 0.0000 (deboost -0.2132, worse) | AB rounded to 4 (raw=4.02), rates preserved: AVG=0.252 HR/AB=0.053 |
| 5 | bvp_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5862 -> 1.0000 (boost 0.4138, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4762 -> 0.2500 (deboost -0.2262, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 1 | 4 | 1 | 4 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4762 (boost 0.2262, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "624413",
"player_name": "Pete Alonso",
"position": "1B",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.178,
"predicted_3B": 0.0,
"predicted_AB": 4.02,
"predicted_AVG": 0.253,
"predicted_BB": 0.452,
"predicted_H": 1.02,
"predicted_HR": 0.21,
"predicted_OBP": 0.368,
"predicted_R": 0.589,
"predicted_RBI": 0.7,
"predicted_SLG": 0.483,
"predicted_SO": 1.014
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.175,
"predicted_3B": 0.0004,
"predicted_AB": 3.8425,
"predicted_AVG": 0.2676,
"predicted_BB": 0.511,
"predicted_H": 1.0264,
"predicted_HBP": 0.106,
"predicted_HR": 0.2164,
"predicted_OBP": 0.3781,
"predicted_R": 0.5979,
"predicted_RBI": 0.7038,
"predicted_SLG": 0.4999,
"predicted_SO": 1.0093
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.175,
"delta": -0.003,
"percent_delta": -0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 3.8425,
"delta": -0.1775,
"percent_delta": -0.0442,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2676,
"delta": 0.0146,
"percent_delta": 0.0577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.452,
"after": 0.511,
"delta": 0.059,
"percent_delta": 0.1305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0264,
"delta": 0.0064,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.2164,
"delta": 0.0064,
"percent_delta": 0.0305,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.368,
"after": 0.3781,
"delta": 0.0101,
"percent_delta": 0.0274,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.589,
"after": 0.5979,
"delta": 0.0089,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7,
"after": 0.7038,
"delta": 0.0038,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.483,
"after": 0.4999,
"delta": 0.0169,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.014,
"after": 1.0093,
"delta": -0.0047,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.452,
"after": 0.511,
"delta": 0.059,
"percent_delta": 0.1305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.02,
"after": 3.8425,
"delta": -0.1775,
"percent_delta": -0.0442,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 73
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.175,
"predicted_3B": 0.0004,
"predicted_AB": 3.8425,
"predicted_AVG": 0.264,
"predicted_BB": 0.5095,
"predicted_H": 1.0144,
"predicted_HBP": 0.106,
"predicted_HR": 0.2132,
"predicted_OBP": 0.3502,
"predicted_R": 0.5862,
"predicted_RBI": 0.69,
"predicted_SLG": 0.4762,
"predicted_SO": 1.0122
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.175,
"after": 0.175,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8425,
"after": 3.8425,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2676,
"after": 0.264,
"delta": -0.0036,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.511,
"after": 0.5095,
"delta": -0.0015,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0264,
"after": 1.0144,
"delta": -0.012,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.106,
"after": 0.106,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2164,
"after": 0.2132,
"delta": -0.0032,
"percent_delta": -0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3781,
"after": 0.3502,
"delta": -0.0279,
"percent_delta": -0.0738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5979,
"after": 0.5862,
"delta": -0.0117,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7038,
"after": 0.69,
"delta": -0.0138,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4999,
"after": 0.4762,
"delta": -0.0237,
"percent_delta": -0.0474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0093,
"after": 1.0122,
"delta": 0.0029,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3781,
"after": 0.3502,
"delta": -0.0279,
"percent_delta": -0.0738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.02), rates preserved: AVG=0.252 HR/AB=0.053",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.175,
"after": 0.0,
"delta": -0.175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8425,
"after": 4.0,
"delta": 0.1575,
"percent_delta": 0.041,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5095,
"after": 1.0,
"delta": 0.4905,
"percent_delta": 0.9627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0144,
"after": 1.0,
"delta": -0.0144,
"percent_delta": -0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.106,
"after": 0.0,
"delta": -0.106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2132,
"after": 0.0,
"delta": -0.2132,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.69,
"after": 1.0,
"delta": 0.31,
"percent_delta": 0.4493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0122,
"after": 1.0,
"delta": -0.0122,
"percent_delta": -0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5095,
"after": 1.0,
"delta": 0.4905,
"percent_delta": 0.9627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2132,
"after": 0.0,
"delta": -0.2132,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5862,
"after": 1.0,
"delta": 0.4138,
"percent_delta": 0.7059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5862,
"after": 1.0,
"delta": 0.4138,
"percent_delta": 0.7059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.25,
"delta": -0.014,
"percent_delta": -0.053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3502,
"after": 0.25,
"delta": -0.1002,
"percent_delta": -0.2861,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4762,
"after": 0.25,
"delta": -0.2262,
"percent_delta": -0.475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4762,
"after": 0.25,
"delta": -0.2262,
"percent_delta": -0.475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.264,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3502,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4762,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.264,
"delta": 0.014,
"percent_delta": 0.056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3502,
"delta": 0.1002,
"percent_delta": 0.4006,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4762,
"delta": 0.2262,
"percent_delta": 0.9049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4762,
"delta": 0.2262,
"percent_delta": 0.9049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.0,
"delta": -0.178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 3.0,
"delta": -1.02,
"percent_delta": -0.2537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.264,
"delta": 0.011,
"percent_delta": 0.0435,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.452,
"after": 1.0,
"delta": 0.548,
"percent_delta": 1.2124,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 0.0,
"delta": -1.02,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.368,
"after": 0.3502,
"delta": -0.0178,
"percent_delta": -0.0484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.589,
"after": 0.0,
"delta": -0.589,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7,
"after": 0.0,
"delta": -0.7,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.483,
"after": 0.4762,
"delta": -0.0068,
"percent_delta": -0.0141,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.014,
"after": 1.0,
"delta": -0.014,
"percent_delta": -0.0138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.452,
"after": 1.0,
"delta": 0.548,
"percent_delta": 1.2124,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.02,
"after": 3.0,
"delta": -1.02,
"percent_delta": -0.2537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.452 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.368 | - |
| predicted_R | 0.589 | - |
| predicted_RBI | 0.700 | - |
| predicted_SLG | 0.483 | - |
| predicted_SO | 1.014 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | -0.003 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.842 | -0.177 |
| predicted_AVG | 0.268 | 0.015 |
| predicted_BB | 0.511 | 0.059 |
| predicted_H | 1.026 | 0.006 |
| predicted_HBP | 0.106 | - |
| predicted_HR | 0.216 | 0.006 |
| predicted_OBP | 0.378 | 0.010 |
| predicted_R | 0.598 | 0.009 |
| predicted_RBI | 0.704 | 0.004 |
| predicted_SLG | 0.500 | 0.017 |
| predicted_SO | 1.009 | -0.005 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.842 | 0.000 |
| predicted_AVG | 0.264 | -0.004 |
| predicted_BB | 0.509 | -0.002 |
| predicted_H | 1.014 | -0.012 |
| predicted_HBP | 0.106 | 0.000 |
| predicted_HR | 0.213 | -0.003 |
| predicted_OBP | 0.350 | -0.028 |
| predicted_R | 0.586 | -0.012 |
| predicted_RBI | 0.690 | -0.014 |
| predicted_SLG | 0.476 | -0.024 |
| predicted_SO | 1.012 | 0.003 |
AB rounded to 4 (raw=4.02), rates preserved: AVG=0.252 HR/AB=0.053
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.175 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.158 |
| predicted_AVG | 0.250 | -0.014 |
| predicted_BB | 0.000 | -0.509 |
| predicted_H | 1.000 | -0.014 |
| predicted_HR | 0.000 | -0.213 |
| predicted_OBP | 0.250 | -0.100 |
| predicted_R | 1.000 | 0.414 |
| predicted_RBI | 1.000 | 0.310 |
| predicted_SLG | 0.250 | -0.226 |
| predicted_SO | 1.000 | -0.012 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 6.000 | 1.000 | 0.000 | 1.000 | 4.000 | 3.000 | 5.000 | 5.000 | 0.4000 | 0.5714 | 0.6667 | 0.4000 | 0.0667 | 0.2667 | 0.3333 | 0.3333 |
| last_10 | 0.20 | 10 | - | 35.000 | 10.000 | 1.000 | 0.000 | 3.000 | 8.000 | 7.000 | 6.000 | 10.000 | 0.2857 | 0.4091 | 0.5714 | 0.2857 | 0.0857 | 0.2286 | 0.1714 | 0.2857 |
| season | 0.60 | 73 | - | 277.000 | 71.000 | 13.000 | 0.000 | 16.000 | 48.000 | 43.000 | 33.000 | 74.000 | 0.2563 | 0.3386 | 0.4765 | 0.2563 | 0.0578 | 0.1733 | 0.1191 | 0.2671 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1710 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6020 |
| predicted_AVG | 0.2874 |
| predicted_BB | 0.5910 |
| predicted_H | 1.0350 |
| predicted_HBP | 0.1060 |
| predicted_HR | 0.2250 |
| predicted_OBP | 0.3918 |
| predicted_R | 0.6100 |
| predicted_RBI | 0.7090 |
| predicted_SLG | 0.5228 |
| predicted_SO | 1.0030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1780 | 0.1710 | 0.1750 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0200 | 3.6020 | 3.8425 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2874 | 0.2676 | model_form_blend |
| predicted_BB | 0.4520 | 0.5910 | 0.5110 | model_form_blend |
| predicted_H | 1.0200 | 1.0350 | 1.0264 | model_form_blend |
| predicted_HBP | - | 0.1060 | 0.1060 | form_only |
| predicted_HR | 0.2100 | 0.2250 | 0.2164 | model_form_blend |
| predicted_OBP | 0.3680 | 0.3918 | 0.3781 | model_form_blend |
| predicted_R | 0.5890 | 0.6100 | 0.5979 | model_form_blend |
| predicted_RBI | 0.7000 | 0.7090 | 0.7038 | model_form_blend |
| predicted_SLG | 0.4830 | 0.5228 | 0.4999 | model_form_blend |
| predicted_SO | 1.0140 | 1.0030 | 1.0093 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 261 |
| Season rows before report date | 261 |
| Report year | 2026 |
| Profile rows used | 73 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.256 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 624413 |
| playerID | 624413 |
| playerName | Pete Alonso |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 10.8 |
| sl_woba | 0.348 |
| sl_xwoba | 0.374 |
| sl_xba | 0.273 |
| sl_xslg | 0.521 |
| sl_sweet_spot_percent | 32.1 |
| sl_barrel_batted_rate | 12.3 |
| sl_hard_hit_percent | 55.7 |
| sl_exit_velocity_avg | 94.9 |
| sl_launch_angle_avg | 14.1 |
| sl_whiff_percent | 26.6 |
| sl_swing_percent | 44.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.181 | 0.000 | 0.000 | Hitting_2B | 0.207 | 0.000 | -0.207 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 4.570 | 3.000 | 5.000 | Hitting_AB | 4.247 | 4.000 | -1.247 | -1.000 |
| predicted_AVG | 0.229 | 0.000 | 0.200 | Hitting_AVG | 0.213 | 0.250 | -0.213 | -0.250 |
| predicted_BB | 0.347 | 1.000 | 0.000 | Hitting_BB | 0.299 | 0.000 | 0.701 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.063 | 0.000 | -0.063 | 0.000 |
| predicted_H | 1.050 | 0.000 | 1.000 | Hitting_H | 0.904 | 1.000 | -0.904 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.207 | 1.000 | -0.207 | -1.000 |
| predicted_OBP | 0.326 | 0.250 | 0.200 | Hitting_OBP | 0.271 | 0.250 | -0.021 | 0.000 |
| predicted_R | 0.528 | 0.000 | 1.000 | Hitting_R | 0.520 | 1.000 | -0.520 | -1.000 |
| predicted_RBI | 0.570 | 0.000 | 1.000 | Hitting_RBI | 0.520 | 2.000 | -0.520 | -2.000 |
| predicted_SLG | 0.428 | 0.000 | 0.200 | Hitting_SLG | 0.416 | 1.000 | -0.416 | -1.000 |
| predicted_SO | 1.097 | 2.000 | 1.000 | Hitting_SO | 1.262 | 1.000 | 0.738 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 1 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.0970 -> 2.0000 (boost 0.9030, worse) |
| Biggest Deboost | predicted_AB: 4.5700 -> 3.0000 (deboost -1.5700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 3 | 1 | predicted_SLG: 0.4280 -> 0.4398 (boost 0.0118, better) | predicted_AB: 4.5700 -> 4.2959 (deboost -0.2741, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3285 -> 0.2956 (deboost -0.0329, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_AB: 4.2959 -> 5.0000 (boost 0.7041, better) | predicted_BB: 0.3795 -> 0.0000 (deboost -0.3795, worse) | AB rounded to 5 (raw=4.57), rates preserved: AVG=0.219 HR/AB=0.047 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5381 -> 1.0000 (boost 0.4619, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4247 -> 0.2000 (deboost -0.2247, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 3.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4247 (boost 0.2247, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683002",
"player_name": "Gunnar Henderson",
"position": "SS",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.181,
"predicted_3B": 0.014,
"predicted_AB": 4.57,
"predicted_AVG": 0.229,
"predicted_BB": 0.347,
"predicted_H": 1.05,
"predicted_HR": 0.21,
"predicted_OBP": 0.326,
"predicted_R": 0.528,
"predicted_RBI": 0.57,
"predicted_SLG": 0.428,
"predicted_SO": 1.097
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1508,
"predicted_3B": 0.0114,
"predicted_AB": 4.2959,
"predicted_AVG": 0.2362,
"predicted_BB": 0.3806,
"predicted_H": 1.0143,
"predicted_HBP": 0.092,
"predicted_HR": 0.2194,
"predicted_OBP": 0.3285,
"predicted_R": 0.5489,
"predicted_RBI": 0.5555,
"predicted_SLG": 0.4398,
"predicted_SO": 1.0144
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 0.1508,
"delta": -0.0302,
"percent_delta": -0.1669,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0114,
"delta": -0.0026,
"percent_delta": -0.1857,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.57,
"after": 4.2959,
"delta": -0.2741,
"percent_delta": -0.06,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2362,
"delta": 0.0072,
"percent_delta": 0.0314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.347,
"after": 0.3806,
"delta": 0.0336,
"percent_delta": 0.0968,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0143,
"delta": -0.0357,
"percent_delta": -0.034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.2194,
"delta": 0.0094,
"percent_delta": 0.0448,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3285,
"delta": 0.0025,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.528,
"after": 0.5489,
"delta": 0.0209,
"percent_delta": 0.0396,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.57,
"after": 0.5555,
"delta": -0.0145,
"percent_delta": -0.0254,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.4398,
"delta": 0.0118,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.097,
"after": 1.0144,
"delta": -0.0826,
"percent_delta": -0.0753,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.4398,
"delta": 0.0118,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.57,
"after": 4.2959,
"delta": -0.2741,
"percent_delta": -0.06,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 72
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1508,
"predicted_3B": 0.0114,
"predicted_AB": 4.2959,
"predicted_AVG": 0.2333,
"predicted_BB": 0.3795,
"predicted_H": 1.0024,
"predicted_HBP": 0.092,
"predicted_HR": 0.2162,
"predicted_OBP": 0.2956,
"predicted_R": 0.5381,
"predicted_RBI": 0.5446,
"predicted_SLG": 0.4247,
"predicted_SO": 1.0173
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1508,
"after": 0.1508,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0114,
"after": 0.0114,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2959,
"after": 4.2959,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2362,
"after": 0.2333,
"delta": -0.0029,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3806,
"after": 0.3795,
"delta": -0.0011,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0143,
"after": 1.0024,
"delta": -0.0119,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2194,
"after": 0.2162,
"delta": -0.0032,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3285,
"after": 0.2956,
"delta": -0.0329,
"percent_delta": -0.1002,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5489,
"after": 0.5381,
"delta": -0.0108,
"percent_delta": -0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5555,
"after": 0.5446,
"delta": -0.0109,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4398,
"after": 0.4247,
"delta": -0.0151,
"percent_delta": -0.0343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0144,
"after": 1.0173,
"delta": 0.0029,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3285,
"after": 0.2956,
"delta": -0.0329,
"percent_delta": -0.1002,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.57), rates preserved: AVG=0.219 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1508,
"after": 0.0,
"delta": -0.1508,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0114,
"after": 0.0,
"delta": -0.0114,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2959,
"after": 5.0,
"delta": 0.7041,
"percent_delta": 0.1639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3795,
"after": 0.0,
"delta": -0.3795,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0024,
"after": 1.0,
"delta": -0.0024,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.0,
"delta": -0.092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2162,
"after": 0.0,
"delta": -0.2162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5446,
"after": 1.0,
"delta": 0.4554,
"percent_delta": 0.8362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0173,
"after": 1.0,
"delta": -0.0173,
"percent_delta": -0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.2959,
"after": 5.0,
"delta": 0.7041,
"percent_delta": 0.1639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3795,
"after": 0.0,
"delta": -0.3795,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5381,
"after": 1.0,
"delta": 0.4619,
"percent_delta": 0.8584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5381,
"after": 1.0,
"delta": 0.4619,
"percent_delta": 0.8584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2333,
"after": 0.2,
"delta": -0.0333,
"percent_delta": -0.1427,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2956,
"after": 0.2,
"delta": -0.0956,
"percent_delta": -0.3234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4247,
"after": 0.2,
"delta": -0.2247,
"percent_delta": -0.5291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4247,
"after": 0.2,
"delta": -0.2247,
"percent_delta": -0.5291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2333,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2956,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4247,
"predicted_SO": 2.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2333,
"delta": 0.0333,
"percent_delta": 0.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.2956,
"delta": 0.0956,
"percent_delta": 0.4779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4247,
"delta": 0.2247,
"percent_delta": 1.1236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4247,
"delta": 0.2247,
"percent_delta": 1.1236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 0.0,
"delta": -0.181,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.57,
"after": 3.0,
"delta": -1.57,
"percent_delta": -0.3435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2333,
"delta": 0.0043,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.347,
"after": 1.0,
"delta": 0.653,
"percent_delta": 1.8818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 0.0,
"delta": -1.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.2956,
"delta": -0.0304,
"percent_delta": -0.0933,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.528,
"after": 0.0,
"delta": -0.528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.57,
"after": 0.0,
"delta": -0.57,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.4247,
"delta": -0.0033,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.097,
"after": 2.0,
"delta": 0.903,
"percent_delta": 0.8232,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 1,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.097,
"after": 2.0,
"delta": 0.903,
"percent_delta": 0.8232,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.57,
"after": 3.0,
"delta": -1.57,
"percent_delta": -0.3435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.181 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.570 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.347 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.528 | - |
| predicted_RBI | 0.570 | - |
| predicted_SLG | 0.428 | - |
| predicted_SO | 1.097 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.151 | -0.030 |
| predicted_3B | 0.011 | -0.003 |
| predicted_AB | 4.296 | -0.274 |
| predicted_AVG | 0.236 | 0.007 |
| predicted_BB | 0.381 | 0.034 |
| predicted_H | 1.014 | -0.036 |
| predicted_HBP | 0.092 | - |
| predicted_HR | 0.219 | 0.009 |
| predicted_OBP | 0.329 | 0.003 |
| predicted_R | 0.549 | 0.021 |
| predicted_RBI | 0.555 | -0.014 |
| predicted_SLG | 0.440 | 0.012 |
| predicted_SO | 1.014 | -0.083 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.151 | 0.000 |
| predicted_3B | 0.011 | 0.000 |
| predicted_AB | 4.296 | 0.000 |
| predicted_AVG | 0.233 | -0.003 |
| predicted_BB | 0.380 | -0.001 |
| predicted_H | 1.002 | -0.012 |
| predicted_HBP | 0.092 | 0.000 |
| predicted_HR | 0.216 | -0.003 |
| predicted_OBP | 0.296 | -0.033 |
| predicted_R | 0.538 | -0.011 |
| predicted_RBI | 0.545 | -0.011 |
| predicted_SLG | 0.425 | -0.015 |
| predicted_SO | 1.017 | 0.003 |
AB rounded to 5 (raw=4.57), rates preserved: AVG=0.219 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.151 |
| predicted_3B | 0.000 | -0.011 |
| predicted_AB | 5.000 | 0.704 |
| predicted_AVG | 0.200 | -0.033 |
| predicted_BB | 0.000 | -0.380 |
| predicted_H | 1.000 | -0.002 |
| predicted_HR | 0.000 | -0.216 |
| predicted_OBP | 0.200 | -0.096 |
| predicted_R | 1.000 | 0.462 |
| predicted_RBI | 1.000 | 0.455 |
| predicted_SLG | 0.200 | -0.225 |
| predicted_SO | 1.000 | -0.017 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -2.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 0.000 | 0.000 | 2.000 | 4.000 | 4.000 | 2.000 | 3.000 | 0.3333 | 0.4286 | 0.6667 | 0.3333 | 0.1111 | 0.2222 | 0.1111 | 0.1667 |
| last_10 | 0.20 | 10 | - | 36.000 | 8.000 | 0.000 | 0.000 | 2.000 | 4.000 | 5.000 | 7.000 | 7.000 | 0.2222 | 0.3636 | 0.3889 | 0.2222 | 0.0556 | 0.1111 | 0.1944 | 0.1944 |
| season | 0.60 | 72 | - | 299.000 | 67.000 | 13.000 | 1.000 | 14.000 | 35.000 | 38.000 | 25.000 | 79.000 | 0.2241 | 0.2918 | 0.4147 | 0.2241 | 0.0468 | 0.1171 | 0.0836 | 0.2642 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1100 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.9260 |
| predicted_AVG | 0.2460 |
| predicted_BB | 0.4260 |
| predicted_H | 0.9660 |
| predicted_HBP | 0.0920 |
| predicted_HR | 0.2320 |
| predicted_OBP | 0.3318 |
| predicted_R | 0.5770 |
| predicted_RBI | 0.5360 |
| predicted_SLG | 0.4557 |
| predicted_SO | 0.9030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1810 | 0.1100 | 0.1508 | model_form_blend |
| predicted_3B | 0.0140 | 0.0080 | 0.0114 | model_form_blend |
| predicted_AB | 4.5700 | 3.9260 | 4.2959 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2460 | 0.2362 | model_form_blend |
| predicted_BB | 0.3470 | 0.4260 | 0.3806 | model_form_blend |
| predicted_H | 1.0500 | 0.9660 | 1.0143 | model_form_blend |
| predicted_HBP | - | 0.0920 | 0.0920 | form_only |
| predicted_HR | 0.2100 | 0.2320 | 0.2194 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3318 | 0.3285 | model_form_blend |
| predicted_R | 0.5280 | 0.5770 | 0.5489 | model_form_blend |
| predicted_RBI | 0.5700 | 0.5360 | 0.5555 | model_form_blend |
| predicted_SLG | 0.4280 | 0.4557 | 0.4398 | model_form_blend |
| predicted_SO | 1.0970 | 0.9030 | 1.0144 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 271 |
| Season rows before report date | 271 |
| Report year | 2026 |
| Profile rows used | 72 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.224 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 683002 |
| playerID | 683002 |
| playerName | Gunnar Henderson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.3 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.313 |
| sl_xwoba | 0.31 |
| sl_xba | 0.237 |
| sl_xslg | 0.401 |
| sl_sweet_spot_percent | 30.1 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 45.6 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 12.0 |
| sl_whiff_percent | 24.6 |
| sl_swing_percent | 49.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.236 | 0.000 | 0.000 | Hitting_2B | 0.275 | 0.000 | -0.275 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.210 | 3.000 | 4.000 | Hitting_AB | 3.677 | 5.000 | -0.677 | -2.000 |
| predicted_AVG | 0.235 | 0.333 | 0.250 | Hitting_AVG | 0.263 | 0.200 | 0.070 | 0.133 |
| predicted_BB | 0.847 | 1.000 | 1.000 | Hitting_BB | 0.892 | 0.000 | 0.108 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_H | 0.990 | 1.000 | 1.000 | Hitting_H | 0.967 | 1.000 | 0.033 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_OBP | 0.351 | 0.500 | 0.400 | Hitting_OBP | 0.407 | 0.200 | 0.093 | 0.300 |
| predicted_R | 0.611 | 0.000 | 1.000 | Hitting_R | 0.591 | 0.000 | -0.591 | 0.000 |
| predicted_RBI | 0.320 | 0.000 | 0.000 | Hitting_RBI | 0.283 | 0.000 | -0.283 | 0.000 |
| predicted_SLG | 0.361 | 0.333 | 0.250 | Hitting_SLG | 0.368 | 0.200 | -0.035 | 0.133 |
| predicted_SO | 0.917 | 1.000 | 1.000 | Hitting_SO | 0.900 | 1.000 | 0.100 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.8470 -> 1.0000 (boost 0.1530, better) |
| Biggest Deboost | predicted_AB: 4.2100 -> 3.0000 (deboost -1.2100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 1 | 3 | predicted_OBP: 0.3510 -> 0.3573 (boost 0.0063, better) | predicted_AB: 4.2100 -> 4.0631 (deboost -0.1469, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3516 -> 0.3452 (deboost -0.0064, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_BB: 0.7847 -> 1.0000 (boost 0.2153, better) | predicted_RBI: 0.2766 -> 0.0000 (deboost -0.2766, worse) | AB rounded to 4 (raw=4.21), rates preserved: AVG=0.228 HR/AB=0.017 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.067) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5890 -> 1.0000 (boost 0.4110, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3598 -> 0.4000 (boost 0.0402, better) | predicted_SLG: 0.3452 -> 0.2500 (deboost -0.0952, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 0 | 2 | 0 | 2 | - | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3452 (boost 0.0952, better) | predicted_OBP: 0.4000 -> 0.3598 (deboost -0.0402, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621493",
"player_name": "Taylor Ward",
"position": "LF",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.236,
"predicted_3B": 0.0,
"predicted_AB": 4.21,
"predicted_AVG": 0.235,
"predicted_BB": 0.847,
"predicted_H": 0.99,
"predicted_HR": 0.09,
"predicted_OBP": 0.351,
"predicted_R": 0.611,
"predicted_RBI": 0.32,
"predicted_SLG": 0.361,
"predicted_SO": 0.917
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2215,
"predicted_3B": 0.0004,
"predicted_AB": 4.0631,
"predicted_AVG": 0.2391,
"predicted_BB": 0.787,
"predicted_H": 0.9708,
"predicted_HBP": 0.064,
"predicted_HR": 0.0747,
"predicted_OBP": 0.3573,
"predicted_R": 0.6008,
"predicted_RBI": 0.2821,
"predicted_SLG": 0.3516,
"predicted_SO": 0.8753
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.236,
"after": 0.2215,
"delta": -0.0145,
"percent_delta": -0.0614,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 4.0631,
"delta": -0.1469,
"percent_delta": -0.0349,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2391,
"delta": 0.0041,
"percent_delta": 0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.847,
"after": 0.787,
"delta": -0.06,
"percent_delta": -0.0708,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9708,
"delta": -0.0192,
"percent_delta": -0.0194,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0747,
"delta": -0.0153,
"percent_delta": -0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3573,
"delta": 0.0063,
"percent_delta": 0.0179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.611,
"after": 0.6008,
"delta": -0.0102,
"percent_delta": -0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.2821,
"delta": -0.0379,
"percent_delta": -0.1184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.3516,
"delta": -0.0094,
"percent_delta": -0.026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.917,
"after": 0.8753,
"delta": -0.0417,
"percent_delta": -0.0455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3573,
"delta": 0.0063,
"percent_delta": 0.0179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 4.0631,
"delta": -0.1469,
"percent_delta": -0.0349,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 72
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2215,
"predicted_3B": 0.0004,
"predicted_AB": 4.0631,
"predicted_AVG": 0.2361,
"predicted_BB": 0.7847,
"predicted_H": 0.9594,
"predicted_HBP": 0.064,
"predicted_HR": 0.0736,
"predicted_OBP": 0.3598,
"predicted_R": 0.589,
"predicted_RBI": 0.2766,
"predicted_SLG": 0.3452,
"predicted_SO": 0.8778
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2215,
"after": 0.2215,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0631,
"after": 4.0631,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2391,
"after": 0.2361,
"delta": -0.003,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.787,
"after": 0.7847,
"delta": -0.0023,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9708,
"after": 0.9594,
"delta": -0.0114,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0747,
"after": 0.0736,
"delta": -0.0011,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3573,
"after": 0.3598,
"delta": 0.0025,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6008,
"after": 0.589,
"delta": -0.0118,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2821,
"after": 0.2766,
"delta": -0.0055,
"percent_delta": -0.0195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3516,
"after": 0.3452,
"delta": -0.0064,
"percent_delta": -0.0182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8753,
"after": 0.8778,
"delta": 0.0025,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3516,
"after": 0.3452,
"delta": -0.0064,
"percent_delta": -0.0182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.21), rates preserved: AVG=0.228 HR/AB=0.017",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2215,
"after": 0.0,
"delta": -0.2215,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0631,
"after": 4.0,
"delta": -0.0631,
"percent_delta": -0.0155,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7847,
"after": 1.0,
"delta": 0.2153,
"percent_delta": 0.2744,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9594,
"after": 1.0,
"delta": 0.0406,
"percent_delta": 0.0423,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0736,
"after": 0.0,
"delta": -0.0736,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2766,
"after": 0.0,
"delta": -0.2766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8778,
"after": 1.0,
"delta": 0.1222,
"percent_delta": 0.1392,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.7847,
"after": 1.0,
"delta": 0.2153,
"percent_delta": 0.2744,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2766,
"after": 0.0,
"delta": -0.2766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.067)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8667,
"bvp": 0.1333
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.589,
"after": 1.0,
"delta": 0.411,
"percent_delta": 0.6978,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.589,
"after": 1.0,
"delta": 0.411,
"percent_delta": 0.6978,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2361,
"after": 0.25,
"delta": 0.0139,
"percent_delta": 0.0589,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3598,
"after": 0.4,
"delta": 0.0402,
"percent_delta": 0.1117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3452,
"after": 0.25,
"delta": -0.0952,
"percent_delta": -0.2758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3598,
"after": 0.4,
"delta": 0.0402,
"percent_delta": 0.1117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3452,
"after": 0.25,
"delta": -0.0952,
"percent_delta": -0.2758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2361,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3598,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3452,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2361,
"delta": -0.0139,
"percent_delta": -0.0555,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3598,
"delta": -0.0402,
"percent_delta": -0.1005,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3452,
"delta": 0.0952,
"percent_delta": 0.3808,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3452,
"delta": 0.0952,
"percent_delta": 0.3808,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3598,
"delta": -0.0402,
"percent_delta": -0.1005,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.236,
"after": 0.0,
"delta": -0.236,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 3.0,
"delta": -1.21,
"percent_delta": -0.2874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2361,
"delta": 0.0011,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.847,
"after": 1.0,
"delta": 0.153,
"percent_delta": 0.1806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.0,
"delta": 0.01,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3598,
"delta": 0.0088,
"percent_delta": 0.0251,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.611,
"after": 0.0,
"delta": -0.611,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.3452,
"delta": -0.0158,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.917,
"after": 1.0,
"delta": 0.083,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.847,
"after": 1.0,
"delta": 0.153,
"percent_delta": 0.1806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 3.0,
"delta": -1.21,
"percent_delta": -0.2874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.236 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.847 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.351 | - |
| predicted_R | 0.611 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.361 | - |
| predicted_SO | 0.917 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.222 | -0.014 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.063 | -0.147 |
| predicted_AVG | 0.239 | 0.004 |
| predicted_BB | 0.787 | -0.060 |
| predicted_H | 0.971 | -0.019 |
| predicted_HBP | 0.064 | - |
| predicted_HR | 0.075 | -0.015 |
| predicted_OBP | 0.357 | 0.006 |
| predicted_R | 0.601 | -0.010 |
| predicted_RBI | 0.282 | -0.038 |
| predicted_SLG | 0.352 | -0.009 |
| predicted_SO | 0.875 | -0.042 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.222 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.063 | 0.000 |
| predicted_AVG | 0.236 | -0.003 |
| predicted_BB | 0.785 | -0.002 |
| predicted_H | 0.959 | -0.011 |
| predicted_HBP | 0.064 | 0.000 |
| predicted_HR | 0.074 | -0.001 |
| predicted_OBP | 0.360 | 0.003 |
| predicted_R | 0.589 | -0.012 |
| predicted_RBI | 0.277 | -0.006 |
| predicted_SLG | 0.345 | -0.006 |
| predicted_SO | 0.878 | 0.003 |
AB rounded to 4 (raw=4.21), rates preserved: AVG=0.228 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.067)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.222 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.063 |
| predicted_AVG | 0.250 | 0.014 |
| predicted_BB | 1.000 | 0.215 |
| predicted_H | 1.000 | 0.041 |
| predicted_HR | 0.000 | -0.074 |
| predicted_OBP | 0.400 | 0.040 |
| predicted_R | 1.000 | 0.411 |
| predicted_RBI | 0.000 | -0.277 |
| predicted_SLG | 0.250 | -0.095 |
| predicted_SO | 1.000 | 0.122 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 4.000 | 0.1818 | 0.2500 | 0.2273 | 0.1818 | 0.0000 | 0.0000 | 0.0909 | 0.1818 |
| last_10 | 0.20 | 10 | - | 38.000 | 10.000 | 1.000 | 0.000 | 1.000 | 2.000 | 7.000 | 7.000 | 5.000 | 0.2632 | 0.4043 | 0.3684 | 0.2632 | 0.0263 | 0.0526 | 0.1842 | 0.1316 |
| season | 0.60 | 72 | - | 267.000 | 69.000 | 17.000 | 0.000 | 3.000 | 19.000 | 44.000 | 61.000 | 66.000 | 0.2584 | 0.3994 | 0.3558 | 0.2584 | 0.0112 | 0.0712 | 0.2285 | 0.2472 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2020 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.8650 |
| predicted_AVG | 0.2446 |
| predicted_BB | 0.7060 |
| predicted_H | 0.9450 |
| predicted_HBP | 0.0640 |
| predicted_HR | 0.0540 |
| predicted_OBP | 0.3658 |
| predicted_R | 0.5870 |
| predicted_RBI | 0.2310 |
| predicted_SLG | 0.3390 |
| predicted_SO | 0.8190 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2360 | 0.2020 | 0.2215 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2100 | 3.8650 | 4.0631 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2446 | 0.2391 | model_form_blend |
| predicted_BB | 0.8470 | 0.7060 | 0.7870 | model_form_blend |
| predicted_H | 0.9900 | 0.9450 | 0.9708 | model_form_blend |
| predicted_HBP | - | 0.0640 | 0.0640 | form_only |
| predicted_HR | 0.0900 | 0.0540 | 0.0747 | model_form_blend |
| predicted_OBP | 0.3510 | 0.3658 | 0.3573 | model_form_blend |
| predicted_R | 0.6110 | 0.5870 | 0.6008 | model_form_blend |
| predicted_RBI | 0.3200 | 0.2310 | 0.2821 | model_form_blend |
| predicted_SLG | 0.3610 | 0.3390 | 0.3516 | model_form_blend |
| predicted_SO | 0.9170 | 0.8190 | 0.8753 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 269 |
| Season rows before report date | 269 |
| Report year | 2026 |
| Profile rows used | 72 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.258 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 621493 |
| playerID | 621493 |
| playerName | Taylor Ward |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.9 |
| sl_bb_percent | 18.5 |
| sl_woba | 0.347 |
| sl_xwoba | 0.356 |
| sl_xba | 0.257 |
| sl_xslg | 0.382 |
| sl_sweet_spot_percent | 35.3 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 40.6 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 14.7 |
| sl_whiff_percent | 17.4 |
| sl_swing_percent | 32.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.150 | 0.000 | 0.000 | Hitting_2B | 0.162 | 0.000 | -0.162 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_AB | 3.450 | 4.000 | 3.000 | Hitting_AB | 3.575 | 4.000 | 0.425 | 0.000 |
| predicted_AVG | 0.251 | 0.000 | 0.333 | Hitting_AVG | 0.267 | 0.500 | -0.267 | -0.500 |
| predicted_BB | 0.300 | 0.000 | 0.000 | Hitting_BB | 0.335 | 0.000 | -0.335 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.870 | 0.000 | 1.000 | Hitting_H | 0.955 | 2.000 | -0.955 | -2.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.184 | 0.000 | -0.184 | 0.000 |
| predicted_OBP | 0.309 | 0.000 | 0.333 | Hitting_OBP | 0.327 | 0.500 | -0.327 | -0.500 |
| predicted_R | 0.450 | 0.000 | 0.000 | Hitting_R | 0.508 | 0.000 | -0.508 | 0.000 |
| predicted_RBI | 0.490 | 0.000 | 0.000 | Hitting_RBI | 0.525 | 0.000 | -0.525 | 0.000 |
| predicted_SLG | 0.425 | 0.000 | 0.333 | Hitting_SLG | 0.480 | 0.500 | -0.480 | -0.500 |
| predicted_SO | 0.933 | 0.000 | 1.000 | Hitting_SO | 1.039 | 0.000 | -1.039 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.4500 -> 4.0000 (boost 0.5500, better) |
| Biggest Deboost | predicted_SO: 0.9330 -> 0.0000 (deboost -0.9330, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.8688 -> 1.0000 (boost 0.1312, better) | predicted_RBI: 0.4845 -> 0.0000 (deboost -0.4845, worse) | AB rounded to 3 (raw=3.45), rates preserved: AVG=0.252 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4208 -> 0.0000 (deboost -0.4208, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2525 -> 0.3330 (boost 0.0805, better) | predicted_SLG: 0.4296 -> 0.3330 (deboost -0.0966, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4296 (boost 0.0966, better) | predicted_AVG: 0.3330 -> 0.2525 (deboost -0.0805, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694212",
"player_name": "Samuel Basallo",
"position": "C",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.15,
"predicted_3B": 0.017,
"predicted_AB": 3.45,
"predicted_AVG": 0.251,
"predicted_BB": 0.3,
"predicted_H": 0.87,
"predicted_HR": 0.15,
"predicted_OBP": 0.309,
"predicted_R": 0.45,
"predicted_RBI": 0.49,
"predicted_SLG": 0.425,
"predicted_SO": 0.933
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1297,
"predicted_3B": 0.0145,
"predicted_AB": 3.4413,
"predicted_AVG": 0.2548,
"predicted_BB": 0.2776,
"predicted_H": 0.8791,
"predicted_HBP": 0.004,
"predicted_HR": 0.1525,
"predicted_OBP": 0.3088,
"predicted_R": 0.4292,
"predicted_RBI": 0.4942,
"predicted_SLG": 0.428,
"predicted_SO": 0.9122
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.15,
"after": 0.1297,
"delta": -0.0203,
"percent_delta": -0.1353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0145,
"delta": -0.0025,
"percent_delta": -0.1471,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.45,
"after": 3.4413,
"delta": -0.0087,
"percent_delta": -0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2548,
"delta": 0.0038,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.2776,
"delta": -0.0224,
"percent_delta": -0.0747,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.8791,
"delta": 0.0091,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1525,
"delta": 0.0025,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3088,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.45,
"after": 0.4292,
"delta": -0.0208,
"percent_delta": -0.0462,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.4942,
"delta": 0.0042,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.425,
"after": 0.428,
"delta": 0.003,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.933,
"after": 0.9122,
"delta": -0.0208,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 60
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1297,
"predicted_3B": 0.0145,
"predicted_AB": 3.4413,
"predicted_AVG": 0.2525,
"predicted_BB": 0.2768,
"predicted_H": 0.8688,
"predicted_HBP": 0.004,
"predicted_HR": 0.1503,
"predicted_OBP": 0.3081,
"predicted_R": 0.4208,
"predicted_RBI": 0.4845,
"predicted_SLG": 0.4296,
"predicted_SO": 0.9148
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1297,
"after": 0.1297,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0145,
"after": 0.0145,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4413,
"after": 3.4413,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2548,
"after": 0.2525,
"delta": -0.0023,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2776,
"after": 0.2768,
"delta": -0.0008,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8791,
"after": 0.8688,
"delta": -0.0103,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1525,
"after": 0.1503,
"delta": -0.0022,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3088,
"after": 0.3081,
"delta": -0.0007,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4292,
"after": 0.4208,
"delta": -0.0084,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4942,
"after": 0.4845,
"delta": -0.0097,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.428,
"after": 0.4296,
"delta": 0.0016,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9122,
"after": 0.9148,
"delta": 0.0026,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.45), rates preserved: AVG=0.252 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1297,
"after": 0.0,
"delta": -0.1297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0145,
"after": 0.0,
"delta": -0.0145,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4413,
"after": 3.0,
"delta": -0.4413,
"percent_delta": -0.1282,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2768,
"after": 0.0,
"delta": -0.2768,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8688,
"after": 1.0,
"delta": 0.1312,
"percent_delta": 0.151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1503,
"after": 0.0,
"delta": -0.1503,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4845,
"after": 0.0,
"delta": -0.4845,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9148,
"after": 1.0,
"delta": 0.0852,
"percent_delta": 0.0931,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8688,
"after": 1.0,
"delta": 0.1312,
"percent_delta": 0.151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4845,
"after": 0.0,
"delta": -0.4845,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4208,
"after": 0.0,
"delta": -0.4208,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4208,
"after": 0.0,
"delta": -0.4208,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2525,
"after": 0.333,
"delta": 0.0805,
"percent_delta": 0.3188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3081,
"after": 0.333,
"delta": 0.0249,
"percent_delta": 0.0808,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4296,
"after": 0.333,
"delta": -0.0966,
"percent_delta": -0.2249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2525,
"after": 0.333,
"delta": 0.0805,
"percent_delta": 0.3188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4296,
"after": 0.333,
"delta": -0.0966,
"percent_delta": -0.2249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2525,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3081,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4296,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2525,
"delta": -0.0805,
"percent_delta": -0.2418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3081,
"delta": -0.0249,
"percent_delta": -0.0747,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4296,
"delta": 0.0966,
"percent_delta": 0.29,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4296,
"delta": 0.0966,
"percent_delta": 0.29,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2525,
"delta": -0.0805,
"percent_delta": -0.2418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.45,
"after": 4.0,
"delta": 0.55,
"percent_delta": 0.1594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2525,
"delta": 0.0015,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3081,
"delta": -0.0009,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.0,
"delta": -0.49,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.425,
"after": 0.4296,
"delta": 0.0046,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.933,
"after": 0.0,
"delta": -0.933,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.45,
"after": 4.0,
"delta": 0.55,
"percent_delta": 0.1594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.933,
"after": 0.0,
"delta": -0.933,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.150 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 3.450 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.300 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.450 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.425 | - |
| predicted_SO | 0.933 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.130 | -0.020 |
| predicted_3B | 0.015 | -0.003 |
| predicted_AB | 3.441 | -0.009 |
| predicted_AVG | 0.255 | 0.004 |
| predicted_BB | 0.278 | -0.022 |
| predicted_H | 0.879 | 0.009 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.152 | 0.003 |
| predicted_OBP | 0.309 | -0.000 |
| predicted_R | 0.429 | -0.021 |
| predicted_RBI | 0.494 | 0.004 |
| predicted_SLG | 0.428 | 0.003 |
| predicted_SO | 0.912 | -0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.130 | 0.000 |
| predicted_3B | 0.015 | 0.000 |
| predicted_AB | 3.441 | 0.000 |
| predicted_AVG | 0.253 | -0.002 |
| predicted_BB | 0.277 | -0.001 |
| predicted_H | 0.869 | -0.010 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.150 | -0.002 |
| predicted_OBP | 0.308 | -0.001 |
| predicted_R | 0.421 | -0.008 |
| predicted_RBI | 0.484 | -0.010 |
| predicted_SLG | 0.430 | 0.002 |
| predicted_SO | 0.915 | 0.003 |
AB rounded to 3 (raw=3.45), rates preserved: AVG=0.252 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.130 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 3.000 | -0.441 |
| predicted_AVG | 0.333 | 0.081 |
| predicted_BB | 0.000 | -0.277 |
| predicted_H | 1.000 | 0.131 |
| predicted_HR | 0.000 | -0.150 |
| predicted_OBP | 0.333 | 0.025 |
| predicted_R | 0.000 | -0.421 |
| predicted_RBI | 0.000 | -0.484 |
| predicted_SLG | 0.333 | -0.097 |
| predicted_SO | 1.000 | 0.085 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 6.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 1.000 | 4.000 | 0.3158 | 0.3500 | 0.4737 | 0.3158 | 0.0526 | 0.1579 | 0.0526 | 0.2105 |
| last_10 | 0.20 | 10 | - | 30.000 | 6.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 1.000 | 8.000 | 0.2000 | 0.2258 | 0.3000 | 0.2000 | 0.0333 | 0.1333 | 0.0333 | 0.2667 |
| season | 0.60 | 60 | - | 201.000 | 53.000 | 9.000 | 1.000 | 10.000 | 30.000 | 27.000 | 18.000 | 56.000 | 0.2637 | 0.3213 | 0.4677 | 0.2637 | 0.0498 | 0.1492 | 0.0896 | 0.2786 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1010 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.4290 |
| predicted_AVG | 0.2601 |
| predicted_BB | 0.2460 |
| predicted_H | 0.8920 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1560 |
| predicted_OBP | 0.3086 |
| predicted_R | 0.4000 |
| predicted_RBI | 0.5000 |
| predicted_SLG | 0.4323 |
| predicted_SO | 0.8830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1500 | 0.1010 | 0.1297 | model_form_blend |
| predicted_3B | 0.0170 | 0.0110 | 0.0145 | model_form_blend |
| predicted_AB | 3.4500 | 3.4290 | 3.4413 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2601 | 0.2548 | model_form_blend |
| predicted_BB | 0.3000 | 0.2460 | 0.2776 | model_form_blend |
| predicted_H | 0.8700 | 0.8920 | 0.8791 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.1500 | 0.1560 | 0.1525 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3086 | 0.3088 | model_form_blend |
| predicted_R | 0.4500 | 0.4000 | 0.4292 | model_form_blend |
| predicted_RBI | 0.4900 | 0.5000 | 0.4942 | model_form_blend |
| predicted_SLG | 0.4250 | 0.4323 | 0.4280 | model_form_blend |
| predicted_SO | 0.9330 | 0.8830 | 0.9122 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 179 |
| Season rows before report date | 179 |
| Report year | 2026 |
| Profile rows used | 60 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.264 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 694212 |
| playerID | 694212 |
| playerName | Samuel Basallo |
| pos | C |
| started | True |
| startingPosition | DH |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 25.1 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.341 |
| sl_xwoba | 0.343 |
| sl_xba | 0.264 |
| sl_xslg | 0.475 |
| sl_sweet_spot_percent | 35.1 |
| sl_barrel_batted_rate | 12.2 |
| sl_hard_hit_percent | 45.9 |
| sl_exit_velocity_avg | 91.7 |
| sl_launch_angle_avg | 13.7 |
| sl_whiff_percent | 30.5 |
| sl_swing_percent | 52.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.053 | 0.000 | 0.000 | Hitting_2B | 0.051 | 0.000 | -0.051 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.544 | 3.000 | 3.000 | Hitting_AB | 2.657 | 3.000 | 0.343 | 0.000 |
| predicted_AVG | 0.253 | 0.000 | 0.333 | Hitting_AVG | 0.206 | 0.000 | -0.206 | 0.000 |
| predicted_BB | 0.298 | 1.000 | 0.000 | Hitting_BB | 0.387 | 0.000 | 0.613 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.036 | 0.000 | -0.036 | 0.000 |
| predicted_H | 0.590 | 0.000 | 1.000 | Hitting_H | 0.547 | 0.000 | -0.547 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.088 | 0.000 | -0.088 | 0.000 |
| predicted_OBP | 0.296 | 0.250 | 0.333 | Hitting_OBP | 0.306 | 0.000 | -0.056 | 0.250 |
| predicted_R | 0.368 | 0.000 | 0.000 | Hitting_R | 0.380 | 0.000 | -0.380 | 0.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.343 | 0.000 | -0.343 | 0.000 |
| predicted_SLG | 0.392 | 0.000 | 0.333 | Hitting_SLG | 0.324 | 0.000 | -0.324 | 0.000 |
| predicted_SO | 0.877 | 1.000 | 1.000 | Hitting_SO | 0.985 | 2.000 | 0.015 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.2980 -> 1.0000 (boost 0.7020, better) |
| Biggest Deboost | predicted_H: 0.5900 -> 0.0000 (deboost -0.5900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 1 | 2 | predicted_AB: 2.5440 -> 2.6752 (boost 0.1312, better) | predicted_AVG: 0.2530 -> 0.2327 (deboost -0.0203, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_AVG: 0.2327 -> 0.2168 (deboost -0.0159, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_H: 0.5799 -> 1.0000 (boost 0.4201, better) | predicted_RBI: 0.3341 -> 0.0000 (deboost -0.3341, worse) | AB rounded to 3 (raw=2.68), rates preserved: AVG=0.217 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3807 -> 0.0000 (deboost -0.3807, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2168 -> 0.3330 (boost 0.1162, better) | predicted_SLG: 0.3936 -> 0.3330 (deboost -0.0606, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3936 (boost 0.0606, better) | predicted_AVG: 0.3330 -> 0.2168 (deboost -0.1162, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681297",
"player_name": "Colton Cowser",
"position": "CF",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.053,
"predicted_3B": 0.0,
"predicted_AB": 2.544,
"predicted_AVG": 0.253,
"predicted_BB": 0.298,
"predicted_H": 0.59,
"predicted_HR": 0.13,
"predicted_OBP": 0.296,
"predicted_R": 0.368,
"predicted_RBI": 0.34,
"predicted_SLG": 0.392,
"predicted_SO": 0.877
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0526,
"predicted_3B": 0.0008,
"predicted_AB": 2.6752,
"predicted_AVG": 0.2327,
"predicted_BB": 0.2939,
"predicted_H": 0.5868,
"predicted_HBP": 0.065,
"predicted_HR": 0.1417,
"predicted_OBP": 0.2932,
"predicted_R": 0.3883,
"predicted_RBI": 0.3408,
"predicted_SLG": 0.3904,
"predicted_SO": 0.9284
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.053,
"after": 0.0526,
"delta": -0.0004,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.544,
"after": 2.6752,
"delta": 0.1312,
"percent_delta": 0.0516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2327,
"delta": -0.0203,
"percent_delta": -0.0802,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.298,
"after": 0.2939,
"delta": -0.0041,
"percent_delta": -0.0138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.59,
"after": 0.5868,
"delta": -0.0032,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1417,
"delta": 0.0117,
"percent_delta": 0.09,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.296,
"after": 0.2932,
"delta": -0.0028,
"percent_delta": -0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.368,
"after": 0.3883,
"delta": 0.0203,
"percent_delta": 0.0552,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.3408,
"delta": 0.0008,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3904,
"delta": -0.0016,
"percent_delta": -0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.877,
"after": 0.9284,
"delta": 0.0514,
"percent_delta": 0.0586,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.544,
"after": 2.6752,
"delta": 0.1312,
"percent_delta": 0.0516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2327,
"delta": -0.0203,
"percent_delta": -0.0802,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 57
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0526,
"predicted_3B": 0.0008,
"predicted_AB": 2.6752,
"predicted_AVG": 0.2168,
"predicted_BB": 0.293,
"predicted_H": 0.5799,
"predicted_HBP": 0.065,
"predicted_HR": 0.1396,
"predicted_OBP": 0.2941,
"predicted_R": 0.3807,
"predicted_RBI": 0.3341,
"predicted_SLG": 0.3936,
"predicted_SO": 0.9311
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0526,
"after": 0.0526,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6752,
"after": 2.6752,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2327,
"after": 0.2168,
"delta": -0.0159,
"percent_delta": -0.0683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2939,
"after": 0.293,
"delta": -0.0009,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5868,
"after": 0.5799,
"delta": -0.0069,
"percent_delta": -0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.065,
"after": 0.065,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1417,
"after": 0.1396,
"delta": -0.0021,
"percent_delta": -0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2932,
"after": 0.2941,
"delta": 0.0009,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3883,
"after": 0.3807,
"delta": -0.0076,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3408,
"after": 0.3341,
"delta": -0.0067,
"percent_delta": -0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3904,
"after": 0.3936,
"delta": 0.0032,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9284,
"after": 0.9311,
"delta": 0.0027,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2327,
"after": 0.2168,
"delta": -0.0159,
"percent_delta": -0.0683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.68), rates preserved: AVG=0.217 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0526,
"after": 0.0,
"delta": -0.0526,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6752,
"after": 3.0,
"delta": 0.3248,
"percent_delta": 0.1214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.293,
"after": 0.0,
"delta": -0.293,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5799,
"after": 1.0,
"delta": 0.4201,
"percent_delta": 0.7244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.065,
"after": 0.0,
"delta": -0.065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1396,
"after": 0.0,
"delta": -0.1396,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3341,
"after": 0.0,
"delta": -0.3341,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9311,
"after": 1.0,
"delta": 0.0689,
"percent_delta": 0.074,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5799,
"after": 1.0,
"delta": 0.4201,
"percent_delta": 0.7244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3341,
"after": 0.0,
"delta": -0.3341,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3807,
"after": 0.0,
"delta": -0.3807,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3807,
"after": 0.0,
"delta": -0.3807,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2168,
"after": 0.333,
"delta": 0.1162,
"percent_delta": 0.536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2941,
"after": 0.333,
"delta": 0.0389,
"percent_delta": 0.1323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3936,
"after": 0.333,
"delta": -0.0606,
"percent_delta": -0.154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2168,
"after": 0.333,
"delta": 0.1162,
"percent_delta": 0.536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3936,
"after": 0.333,
"delta": -0.0606,
"percent_delta": -0.154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2168,
"predicted_BB": 1.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2941,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3936,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2168,
"delta": -0.1162,
"percent_delta": -0.349,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2941,
"delta": -0.0389,
"percent_delta": -0.1168,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3936,
"delta": 0.0606,
"percent_delta": 0.182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3936,
"delta": 0.0606,
"percent_delta": 0.182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2168,
"delta": -0.1162,
"percent_delta": -0.349,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.053,
"after": 0.0,
"delta": -0.053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.544,
"after": 3.0,
"delta": 0.456,
"percent_delta": 0.1792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2168,
"delta": -0.0362,
"percent_delta": -0.1431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.298,
"after": 1.0,
"delta": 0.702,
"percent_delta": 2.3557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.296,
"after": 0.2941,
"delta": -0.0019,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.368,
"after": 0.0,
"delta": -0.368,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3936,
"delta": 0.0016,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.877,
"after": 1.0,
"delta": 0.123,
"percent_delta": 0.1403,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.298,
"after": 1.0,
"delta": 0.702,
"percent_delta": 2.3557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.053 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.544 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.298 | - |
| predicted_H | 0.590 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.296 | - |
| predicted_R | 0.368 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.392 | - |
| predicted_SO | 0.877 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.053 | -0.000 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.675 | 0.131 |
| predicted_AVG | 0.233 | -0.020 |
| predicted_BB | 0.294 | -0.004 |
| predicted_H | 0.587 | -0.003 |
| predicted_HBP | 0.065 | - |
| predicted_HR | 0.142 | 0.012 |
| predicted_OBP | 0.293 | -0.003 |
| predicted_R | 0.388 | 0.020 |
| predicted_RBI | 0.341 | 0.001 |
| predicted_SLG | 0.390 | -0.002 |
| predicted_SO | 0.928 | 0.051 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.053 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.675 | 0.000 |
| predicted_AVG | 0.217 | -0.016 |
| predicted_BB | 0.293 | -0.001 |
| predicted_H | 0.580 | -0.007 |
| predicted_HBP | 0.065 | 0.000 |
| predicted_HR | 0.140 | -0.002 |
| predicted_OBP | 0.294 | 0.001 |
| predicted_R | 0.381 | -0.008 |
| predicted_RBI | 0.334 | -0.007 |
| predicted_SLG | 0.394 | 0.003 |
| predicted_SO | 0.931 | 0.003 |
AB rounded to 3 (raw=2.68), rates preserved: AVG=0.217 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.053 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.325 |
| predicted_AVG | 0.333 | 0.116 |
| predicted_BB | 0.000 | -0.293 |
| predicted_H | 1.000 | 0.420 |
| predicted_HR | 0.000 | -0.140 |
| predicted_OBP | 0.333 | 0.039 |
| predicted_R | 0.000 | -0.381 |
| predicted_RBI | 0.000 | -0.334 |
| predicted_SLG | 0.333 | -0.061 |
| predicted_SO | 1.000 | 0.069 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 1.000 | 7.000 | 0.1429 | 0.2500 | 0.3571 | 0.1429 | 0.0714 | 0.0714 | 0.0714 | 0.5000 |
| last_10 | 0.20 | 10 | - | 30.000 | 5.000 | 0.000 | 0.000 | 3.000 | 3.000 | 5.000 | 3.000 | 10.000 | 0.1667 | 0.2647 | 0.4667 | 0.1667 | 0.1000 | 0.1000 | 0.1000 | 0.3333 |
| season | 0.60 | 57 | - | 145.000 | 32.000 | 3.000 | 0.000 | 6.000 | 20.000 | 21.000 | 17.000 | 50.000 | 0.2207 | 0.3030 | 0.3655 | 0.2207 | 0.0414 | 0.1379 | 0.1172 | 0.3448 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0520 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.8680 |
| predicted_AVG | 0.2030 |
| predicted_BB | 0.2880 |
| predicted_H | 0.5820 |
| predicted_HBP | 0.0650 |
| predicted_HR | 0.1590 |
| predicted_OBP | 0.2892 |
| predicted_R | 0.4180 |
| predicted_RBI | 0.3420 |
| predicted_SLG | 0.3880 |
| predicted_SO | 1.0040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0530 | 0.0520 | 0.0526 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5440 | 2.8680 | 2.6752 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2030 | 0.2327 | model_form_blend |
| predicted_BB | 0.2980 | 0.2880 | 0.2939 | model_form_blend |
| predicted_H | 0.5900 | 0.5820 | 0.5868 | model_form_blend |
| predicted_HBP | - | 0.0650 | 0.0650 | form_only |
| predicted_HR | 0.1300 | 0.1590 | 0.1417 | model_form_blend |
| predicted_OBP | 0.2960 | 0.2892 | 0.2932 | model_form_blend |
| predicted_R | 0.3680 | 0.4180 | 0.3883 | model_form_blend |
| predicted_RBI | 0.3400 | 0.3420 | 0.3408 | model_form_blend |
| predicted_SLG | 0.3920 | 0.3880 | 0.3904 | model_form_blend |
| predicted_SO | 0.8770 | 1.0040 | 0.9284 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 137 |
| Season rows before report date | 137 |
| Report year | 2026 |
| Profile rows used | 57 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.221 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260616_BAL@SEA |
| game_type | full |
| mlbID | 681297 |
| playerID | 681297 |
| playerName | Colton Cowser |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-16 |
| sl_k_percent | 29.3 |
| sl_bb_percent | 10.9 |
| sl_woba | 0.305 |
| sl_xwoba | 0.319 |
| sl_xba | 0.209 |
| sl_xslg | 0.436 |
| sl_sweet_spot_percent | 30.1 |
| sl_barrel_batted_rate | 12.6 |
| sl_hard_hit_percent | 32.0 |
| sl_exit_velocity_avg | 86.4 |
| sl_launch_angle_avg | 12.4 |
| sl_whiff_percent | 33.0 |
| sl_swing_percent | 44.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.153 | 0.000 | 0.000 | Hitting_2B | 0.196 | 0.000 | -0.196 | 0.000 |
| predicted_3B | 0.068 | 0.000 | 0.000 | Hitting_3B | 0.039 | 1.000 | -0.039 | -1.000 |
| predicted_AB | 3.203 | 3.000 | 3.000 | Hitting_AB | 3.335 | 4.000 | -0.335 | -1.000 |
| predicted_AVG | 0.232 | 0.000 | 0.333 | Hitting_AVG | 0.270 | 0.250 | -0.270 | -0.250 |
| predicted_BB | 0.356 | 1.000 | 0.000 | Hitting_BB | 0.436 | 0.000 | 0.564 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_H | 0.300 | 0.000 | 1.000 | Hitting_H | 0.899 | 1.000 | -0.899 | -1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.050 | 0.000 | -0.050 | 0.000 |
| predicted_OBP | 0.267 | 0.250 | 0.333 | Hitting_OBP | 0.357 | 0.250 | -0.107 | 0.000 |
| predicted_R | 0.424 | 0.000 | 0.000 | Hitting_R | 0.497 | 0.000 | -0.497 | 0.000 |
| predicted_RBI | 0.200 | 0.000 | 0.000 | Hitting_RBI | 0.542 | 1.000 | -0.542 | -1.000 |
| predicted_SLG | 0.369 | 0.000 | 0.333 | Hitting_SLG | 0.397 | 0.750 | -0.397 | -0.750 |
| predicted_SO | 0.847 | 0.000 | 1.000 | Hitting_SO | 0.810 | 2.000 | -0.810 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.3560 -> 1.0000 (boost 0.6440, better) |
| Biggest Deboost | predicted_SO: 0.8470 -> 0.0000 (deboost -0.8470, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 4 | 1 | predicted_H: 0.3000 -> 0.4982 (boost 0.1982, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3728 -> 0.2807 (deboost -0.0921, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.9075 -> 1.0000 (boost 0.0925, worse) | predicted_H: 0.4924 -> 0.0000 (deboost -0.4924, worse) | AB rounded to 3 (raw=3.28), rates preserved: AVG=0.150 HR/AB=0.009 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.154) |
| 6 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3828 -> 0.0000 (deboost -0.3828, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1501 -> 0.3330 (boost 0.1829, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1501 (deboost -0.1829, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665750",
"player_name": "Leody Taveras",
"position": "RF",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.153,
"predicted_3B": 0.068,
"predicted_AB": 3.203,
"predicted_AVG": 0.232,
"predicted_BB": 0.356,
"predicted_H": 0.3,
"predicted_HR": 0.03,
"predicted_OBP": 0.267,
"predicted_R": 0.424,
"predicted_RBI": 0.2,
"predicted_SLG": 0.369,
"predicted_SO": 0.847
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1406,
"predicted_3B": 0.0978,
"predicted_AB": 3.28,
"predicted_AVG": 0.2311,
"predicted_BB": 0.3113,
"predicted_H": 0.4982,
"predicted_HBP": 0.013,
"predicted_HR": 0.0312,
"predicted_OBP": 0.2726,
"predicted_R": 0.3905,
"predicted_RBI": 0.3167,
"predicted_SLG": 0.3728,
"predicted_SO": 0.9049
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.153,
"after": 0.1406,
"delta": -0.0124,
"percent_delta": -0.081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.068,
"after": 0.0978,
"delta": 0.0298,
"percent_delta": 0.4382,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.203,
"after": 3.28,
"delta": 0.077,
"percent_delta": 0.024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2311,
"delta": -0.0009,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.356,
"after": 0.3113,
"delta": -0.0447,
"percent_delta": -0.1256,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.4982,
"delta": 0.1982,
"percent_delta": 0.6607,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0312,
"delta": 0.0012,
"percent_delta": 0.04,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.267,
"after": 0.2726,
"delta": 0.0056,
"percent_delta": 0.021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.424,
"after": 0.3905,
"delta": -0.0335,
"percent_delta": -0.079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 0.3167,
"delta": 0.1167,
"percent_delta": 0.5835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.369,
"after": 0.3728,
"delta": 0.0038,
"percent_delta": 0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.847,
"after": 0.9049,
"delta": 0.0579,
"percent_delta": 0.0684,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.3,
"after": 0.4982,
"delta": 0.1982,
"percent_delta": 0.6607,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 59
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1406,
"predicted_3B": 0.0978,
"predicted_AB": 3.28,
"predicted_AVG": 0.1501,
"predicted_BB": 0.3104,
"predicted_H": 0.4924,
"predicted_HBP": 0.013,
"predicted_HR": 0.0307,
"predicted_OBP": 0.2236,
"predicted_R": 0.3828,
"predicted_RBI": 0.3105,
"predicted_SLG": 0.2807,
"predicted_SO": 0.9075
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1406,
"after": 0.1406,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0978,
"after": 0.0978,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.28,
"after": 3.28,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2311,
"after": 0.1501,
"delta": -0.081,
"percent_delta": -0.3505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3113,
"after": 0.3104,
"delta": -0.0009,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4982,
"after": 0.4924,
"delta": -0.0058,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.013,
"after": 0.013,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0312,
"after": 0.0307,
"delta": -0.0005,
"percent_delta": -0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2726,
"after": 0.2236,
"delta": -0.049,
"percent_delta": -0.1798,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3905,
"after": 0.3828,
"delta": -0.0077,
"percent_delta": -0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3167,
"after": 0.3105,
"delta": -0.0062,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3728,
"after": 0.2807,
"delta": -0.0921,
"percent_delta": -0.247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9049,
"after": 0.9075,
"delta": 0.0026,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3728,
"after": 0.2807,
"delta": -0.0921,
"percent_delta": -0.247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.28), rates preserved: AVG=0.150 HR/AB=0.009",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1406,
"after": 0.0,
"delta": -0.1406,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0978,
"after": 0.0,
"delta": -0.0978,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.28,
"after": 3.0,
"delta": -0.28,
"percent_delta": -0.0854,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3104,
"after": 0.0,
"delta": -0.3104,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4924,
"after": 0.0,
"delta": -0.4924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.013,
"after": 0.0,
"delta": -0.013,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0307,
"after": 0.0,
"delta": -0.0307,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3105,
"after": 0.0,
"delta": -0.3105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9075,
"after": 1.0,
"delta": 0.0925,
"percent_delta": 0.1019,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.9075,
"after": 1.0,
"delta": 0.0925,
"percent_delta": 0.1019,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4924,
"after": 0.0,
"delta": -0.4924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.154)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8791,
"bvp": 0.1209
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3828,
"after": 0.0,
"delta": -0.3828,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3828,
"after": 0.0,
"delta": -0.3828,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1501,
"after": 0.333,
"delta": 0.1829,
"percent_delta": 1.2185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2236,
"after": 0.333,
"delta": 0.1094,
"percent_delta": 0.4893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2807,
"after": 0.333,
"delta": 0.0523,
"percent_delta": 0.1863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1501,
"after": 0.333,
"delta": 0.1829,
"percent_delta": 1.2185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1501,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2236,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2807,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1501,
"delta": -0.1829,
"percent_delta": -0.5492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2236,
"delta": -0.1094,
"percent_delta": -0.3286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2807,
"delta": -0.0523,
"percent_delta": -0.157,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1501,
"delta": -0.1829,
"percent_delta": -0.5492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.153,
"after": 0.0,
"delta": -0.153,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.068,
"after": 0.0,
"delta": -0.068,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.203,
"after": 3.0,
"delta": -0.203,
"percent_delta": -0.0634,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.1501,
"delta": -0.0819,
"percent_delta": -0.353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.356,
"after": 1.0,
"delta": 0.644,
"percent_delta": 1.809,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.267,
"after": 0.2236,
"delta": -0.0434,
"percent_delta": -0.1625,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.424,
"after": 0.0,
"delta": -0.424,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.369,
"after": 0.2807,
"delta": -0.0883,
"percent_delta": -0.2393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.847,
"after": 0.0,
"delta": -0.847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.356,
"after": 1.0,
"delta": 0.644,
"percent_delta": 1.809,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.847,
"after": 0.0,
"delta": -0.847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.153 | - |
| predicted_3B | 0.068 | - |
| predicted_AB | 3.203 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.356 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.267 | - |
| predicted_R | 0.424 | - |
| predicted_RBI | 0.200 | - |
| predicted_SLG | 0.369 | - |
| predicted_SO | 0.847 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | -0.012 |
| predicted_3B | 0.098 | 0.030 |
| predicted_AB | 3.280 | 0.077 |
| predicted_AVG | 0.231 | -0.001 |
| predicted_BB | 0.311 | -0.045 |
| predicted_H | 0.498 | 0.198 |
| predicted_HBP | 0.013 | - |
| predicted_HR | 0.031 | 0.001 |
| predicted_OBP | 0.273 | 0.006 |
| predicted_R | 0.391 | -0.033 |
| predicted_RBI | 0.317 | 0.117 |
| predicted_SLG | 0.373 | 0.004 |
| predicted_SO | 0.905 | 0.058 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | 0.000 |
| predicted_3B | 0.098 | 0.000 |
| predicted_AB | 3.280 | 0.000 |
| predicted_AVG | 0.150 | -0.081 |
| predicted_BB | 0.310 | -0.001 |
| predicted_H | 0.492 | -0.006 |
| predicted_HBP | 0.013 | 0.000 |
| predicted_HR | 0.031 | -0.000 |
| predicted_OBP | 0.224 | -0.049 |
| predicted_R | 0.383 | -0.008 |
| predicted_RBI | 0.310 | -0.006 |
| predicted_SLG | 0.281 | -0.092 |
| predicted_SO | 0.907 | 0.003 |
AB rounded to 3 (raw=3.28), rates preserved: AVG=0.150 HR/AB=0.009
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.154)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.141 |
| predicted_3B | 0.000 | -0.098 |
| predicted_AB | 3.000 | -0.280 |
| predicted_AVG | 0.333 | 0.183 |
| predicted_BB | 0.000 | -0.310 |
| predicted_H | 1.000 | 0.508 |
| predicted_HR | 0.000 | -0.031 |
| predicted_OBP | 0.333 | 0.109 |
| predicted_R | 0.000 | -0.383 |
| predicted_RBI | 0.000 | -0.310 |
| predicted_SLG | 0.333 | 0.052 |
| predicted_SO | 1.000 | 0.093 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 2.000 | 0.000 | 2.000 | 0.000 | 0.000 | 7.000 | 0.1667 | 0.1667 | 0.3889 | 0.1667 | 0.0000 | 0.1111 | 0.0000 | 0.3889 |
| last_10 | 0.20 | 10 | - | 34.000 | 7.000 | 1.000 | 2.000 | 0.000 | 5.000 | 3.000 | 1.000 | 11.000 | 0.2059 | 0.2222 | 0.3529 | 0.2059 | 0.0000 | 0.1471 | 0.0294 | 0.3235 |
| season | 0.60 | 59 | - | 189.000 | 48.000 | 9.000 | 4.000 | 2.000 | 29.000 | 25.000 | 21.000 | 50.000 | 0.2540 | 0.3302 | 0.3757 | 0.2540 | 0.0106 | 0.1534 | 0.1111 | 0.2646 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1230 |
| predicted_3B | 0.1400 |
| predicted_AB | 3.3890 |
| predicted_AVG | 0.2298 |
| predicted_BB | 0.2480 |
| predicted_H | 0.7790 |
| predicted_HBP | 0.0130 |
| predicted_HR | 0.0330 |
| predicted_OBP | 0.2806 |
| predicted_R | 0.3430 |
| predicted_RBI | 0.4820 |
| predicted_SLG | 0.3782 |
| predicted_SO | 0.9870 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1530 | 0.1230 | 0.1406 | model_form_blend |
| predicted_3B | 0.0680 | 0.1400 | 0.0978 | model_form_blend |
| predicted_AB | 3.2030 | 3.3890 | 3.2800 | model_form_blend |
| predicted_AVG | 0.2320 | 0.2298 | 0.2311 | model_form_blend |
| predicted_BB | 0.3560 | 0.2480 | 0.3113 | model_form_blend |
| predicted_H | 0.3000 | 0.7790 | 0.4982 | model_form_blend |
| predicted_HBP | - | 0.0130 | 0.0130 | form_only |
| predicted_HR | 0.0300 | 0.0330 | 0.0312 | model_form_blend |
| predicted_OBP | 0.2670 | 0.2806 | 0.2726 | model_form_blend |
| predicted_R | 0.4240 | 0.3430 | 0.3905 | model_form_blend |
| predicted_RBI | 0.2000 | 0.4820 | 0.3167 | model_form_blend |
| predicted_SLG | 0.3690 | 0.3782 | 0.3728 | model_form_blend |
| predicted_SO | 0.8470 | 0.9870 | 0.9049 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 179 |
| Season rows before report date | 179 |
| Report year | 2026 |
| Profile rows used | 59 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.254 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 1 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 1 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 665750 |
| playerID | 665750 |
| playerName | Leody Taveras |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.319 |
| sl_xwoba | 0.297 |
| sl_xba | 0.234 |
| sl_xslg | 0.335 |
| sl_sweet_spot_percent | 33.6 |
| sl_barrel_batted_rate | 4.0 |
| sl_hard_hit_percent | 29.5 |
| sl_exit_velocity_avg | 87.0 |
| sl_launch_angle_avg | 16.2 |
| sl_whiff_percent | 24.9 |
| sl_swing_percent | 47.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.176 | 0.000 | 0.000 | Hitting_2B | 0.137 | 0.000 | -0.137 | 0.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_AB | 3.000 | 4.000 | 3.000 | Hitting_AB | 3.072 | 3.000 | 0.928 | 1.000 |
| predicted_AVG | 0.318 | 0.250 | 0.333 | Hitting_AVG | 0.287 | 1.000 | -0.037 | -0.750 |
| predicted_BB | 0.196 | 0.000 | 0.000 | Hitting_BB | 0.203 | 1.000 | -0.203 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_H | 0.750 | 1.000 | 1.000 | Hitting_H | 0.882 | 3.000 | 0.118 | -2.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_OBP | 0.385 | 0.250 | 0.333 | Hitting_OBP | 0.340 | 1.000 | -0.090 | -0.750 |
| predicted_R | 0.373 | 1.000 | 0.000 | Hitting_R | 0.412 | 1.000 | 0.588 | 0.000 |
| predicted_RBI | 0.330 | 1.000 | 0.000 | Hitting_RBI | 0.386 | 0.000 | 0.614 | 1.000 |
| predicted_SLG | 0.466 | 0.250 | 0.333 | Hitting_SLG | 0.368 | 1.000 | -0.118 | -0.750 |
| predicted_SO | 0.784 | 1.000 | 1.000 | Hitting_SO | 0.876 | 0.000 | 0.124 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_BB: 0.1960 -> 0.0000 (deboost -0.1960, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.7500 -> 0.9215 (boost 0.1715, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3982 -> 0.3389 (deboost -0.0593, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 0.7395 -> 1.0000 (boost 0.2605, worse) | predicted_RBI: 0.3394 -> 0.0000 (deboost -0.3394, worse) | AB rounded to 3 (raw=3.08), rates preserved: AVG=0.296 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3840 -> 0.0000 (deboost -0.3840, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2956 -> 0.3330 (boost 0.0374, better) | predicted_SLG: 0.4361 -> 0.3330 (deboost -0.1031, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.4361 (boost 0.1031, better) | predicted_AVG: 0.3330 -> 0.2956 (deboost -0.0374, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677942",
"player_name": "Blaze Alexander",
"position": "3B",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.02,
"predicted_AB": 3.0,
"predicted_AVG": 0.318,
"predicted_BB": 0.196,
"predicted_H": 0.75,
"predicted_HR": 0.07,
"predicted_OBP": 0.385,
"predicted_R": 0.373,
"predicted_RBI": 0.33,
"predicted_SLG": 0.466,
"predicted_SO": 0.784
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2084,
"predicted_3B": 0.0172,
"predicted_AB": 3.0811,
"predicted_AVG": 0.3377,
"predicted_BB": 0.2025,
"predicted_H": 0.9215,
"predicted_HBP": 0.073,
"predicted_HR": 0.0643,
"predicted_OBP": 0.3982,
"predicted_R": 0.3917,
"predicted_RBI": 0.3462,
"predicted_SLG": 0.4826,
"predicted_SO": 0.7374
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.2084,
"delta": 0.0324,
"percent_delta": 0.1841,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0172,
"delta": -0.0028,
"percent_delta": -0.14,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0811,
"delta": 0.0811,
"percent_delta": 0.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.318,
"after": 0.3377,
"delta": 0.0197,
"percent_delta": 0.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.196,
"after": 0.2025,
"delta": 0.0065,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 0.9215,
"delta": 0.1715,
"percent_delta": 0.2287,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0643,
"delta": -0.0057,
"percent_delta": -0.0814,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.385,
"after": 0.3982,
"delta": 0.0132,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.373,
"after": 0.3917,
"delta": 0.0187,
"percent_delta": 0.0501,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.3462,
"delta": 0.0162,
"percent_delta": 0.0491,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.466,
"after": 0.4826,
"delta": 0.0166,
"percent_delta": 0.0356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.784,
"after": 0.7374,
"delta": -0.0466,
"percent_delta": -0.0594,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.75,
"after": 0.9215,
"delta": 0.1715,
"percent_delta": 0.2287,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 51
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2084,
"predicted_3B": 0.0172,
"predicted_AB": 3.0811,
"predicted_AVG": 0.2956,
"predicted_BB": 0.2019,
"predicted_H": 0.9107,
"predicted_HBP": 0.073,
"predicted_HR": 0.0634,
"predicted_OBP": 0.3389,
"predicted_R": 0.384,
"predicted_RBI": 0.3394,
"predicted_SLG": 0.4361,
"predicted_SO": 0.7395
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2084,
"after": 0.2084,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0172,
"after": 0.0172,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0811,
"after": 3.0811,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3377,
"after": 0.2956,
"delta": -0.0421,
"percent_delta": -0.1247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2025,
"after": 0.2019,
"delta": -0.0006,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9215,
"after": 0.9107,
"delta": -0.0108,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.073,
"after": 0.073,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0643,
"after": 0.0634,
"delta": -0.0009,
"percent_delta": -0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3982,
"after": 0.3389,
"delta": -0.0593,
"percent_delta": -0.1489,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3917,
"after": 0.384,
"delta": -0.0077,
"percent_delta": -0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3462,
"after": 0.3394,
"delta": -0.0068,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4826,
"after": 0.4361,
"delta": -0.0465,
"percent_delta": -0.0964,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7374,
"after": 0.7395,
"delta": 0.0021,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3982,
"after": 0.3389,
"delta": -0.0593,
"percent_delta": -0.1489,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.08), rates preserved: AVG=0.296 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2084,
"after": 0.0,
"delta": -0.2084,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0172,
"after": 0.0,
"delta": -0.0172,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0811,
"after": 3.0,
"delta": -0.0811,
"percent_delta": -0.0263,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2019,
"after": 0.0,
"delta": -0.2019,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9107,
"after": 1.0,
"delta": 0.0893,
"percent_delta": 0.0981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.073,
"after": 0.0,
"delta": -0.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0634,
"after": 0.0,
"delta": -0.0634,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3394,
"after": 0.0,
"delta": -0.3394,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7395,
"after": 1.0,
"delta": 0.2605,
"percent_delta": 0.3523,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7395,
"after": 1.0,
"delta": 0.2605,
"percent_delta": 0.3523,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3394,
"after": 0.0,
"delta": -0.3394,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.384,
"after": 0.0,
"delta": -0.384,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.384,
"after": 0.0,
"delta": -0.384,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2956,
"after": 0.333,
"delta": 0.0374,
"percent_delta": 0.1265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3389,
"after": 0.333,
"delta": -0.0059,
"percent_delta": -0.0174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4361,
"after": 0.333,
"delta": -0.1031,
"percent_delta": -0.2364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2956,
"after": 0.333,
"delta": 0.0374,
"percent_delta": 0.1265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4361,
"after": 0.333,
"delta": -0.1031,
"percent_delta": -0.2364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2956,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3389,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4361,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2956,
"delta": -0.0374,
"percent_delta": -0.1124,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3389,
"delta": 0.0059,
"percent_delta": 0.0177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4361,
"delta": 0.1031,
"percent_delta": 0.3095,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4361,
"delta": 0.1031,
"percent_delta": 0.3095,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2956,
"delta": -0.0374,
"percent_delta": -0.1124,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.318,
"after": 0.2956,
"delta": -0.0224,
"percent_delta": -0.0704,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.196,
"after": 0.0,
"delta": -0.196,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 1.0,
"delta": 0.25,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.385,
"after": 0.3389,
"delta": -0.0461,
"percent_delta": -0.1197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.373,
"after": 1.0,
"delta": 0.627,
"percent_delta": 1.681,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 1.0,
"delta": 0.67,
"percent_delta": 2.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.466,
"after": 0.4361,
"delta": -0.0299,
"percent_delta": -0.0642,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.784,
"after": 1.0,
"delta": 0.216,
"percent_delta": 0.2755,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.196,
"after": 0.0,
"delta": -0.196,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 3.000 | - |
| predicted_AVG | 0.318 | - |
| predicted_BB | 0.196 | - |
| predicted_H | 0.750 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.385 | - |
| predicted_R | 0.373 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.466 | - |
| predicted_SO | 0.784 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.208 | 0.032 |
| predicted_3B | 0.017 | -0.003 |
| predicted_AB | 3.081 | 0.081 |
| predicted_AVG | 0.338 | 0.020 |
| predicted_BB | 0.203 | 0.007 |
| predicted_H | 0.921 | 0.171 |
| predicted_HBP | 0.073 | - |
| predicted_HR | 0.064 | -0.006 |
| predicted_OBP | 0.398 | 0.013 |
| predicted_R | 0.392 | 0.019 |
| predicted_RBI | 0.346 | 0.016 |
| predicted_SLG | 0.483 | 0.017 |
| predicted_SO | 0.737 | -0.047 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.208 | 0.000 |
| predicted_3B | 0.017 | 0.000 |
| predicted_AB | 3.081 | 0.000 |
| predicted_AVG | 0.296 | -0.042 |
| predicted_BB | 0.202 | -0.001 |
| predicted_H | 0.911 | -0.011 |
| predicted_HBP | 0.073 | 0.000 |
| predicted_HR | 0.063 | -0.001 |
| predicted_OBP | 0.339 | -0.059 |
| predicted_R | 0.384 | -0.008 |
| predicted_RBI | 0.339 | -0.007 |
| predicted_SLG | 0.436 | -0.046 |
| predicted_SO | 0.740 | 0.002 |
AB rounded to 3 (raw=3.08), rates preserved: AVG=0.296 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.208 |
| predicted_3B | 0.000 | -0.017 |
| predicted_AB | 3.000 | -0.081 |
| predicted_AVG | 0.333 | 0.037 |
| predicted_BB | 0.000 | -0.202 |
| predicted_H | 1.000 | 0.089 |
| predicted_HR | 0.000 | -0.063 |
| predicted_OBP | 0.333 | -0.006 |
| predicted_R | 0.000 | -0.384 |
| predicted_RBI | 0.000 | -0.339 |
| predicted_SLG | 0.333 | -0.103 |
| predicted_SO | 1.000 | 0.260 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 9.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 2.000 | 0.5294 | 0.5556 | 0.6471 | 0.5294 | 0.0000 | 0.0588 | 0.0588 | 0.1177 |
| last_10 | 0.20 | 10 | - | 30.000 | 14.000 | 4.000 | 0.000 | 1.000 | 4.000 | 5.000 | 2.000 | 4.000 | 0.4667 | 0.5294 | 0.7000 | 0.4667 | 0.0333 | 0.1333 | 0.0667 | 0.1333 |
| season | 0.60 | 51 | - | 153.000 | 48.000 | 9.000 | 1.000 | 2.000 | 19.000 | 19.000 | 10.000 | 40.000 | 0.3137 | 0.3653 | 0.4248 | 0.3137 | 0.0131 | 0.1242 | 0.0654 | 0.2614 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2560 |
| predicted_3B | 0.0130 |
| predicted_AB | 3.2000 |
| predicted_AVG | 0.3666 |
| predicted_BB | 0.2120 |
| predicted_H | 1.1730 |
| predicted_HBP | 0.0730 |
| predicted_HR | 0.0560 |
| predicted_OBP | 0.4175 |
| predicted_R | 0.4190 |
| predicted_RBI | 0.3700 |
| predicted_SLG | 0.5069 |
| predicted_SO | 0.6690 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.2560 | 0.2084 | model_form_blend |
| predicted_3B | 0.0200 | 0.0130 | 0.0172 | model_form_blend |
| predicted_AB | 3.0000 | 3.2000 | 3.0811 | model_form_blend |
| predicted_AVG | 0.3180 | 0.3666 | 0.3377 | model_form_blend |
| predicted_BB | 0.1960 | 0.2120 | 0.2025 | model_form_blend |
| predicted_H | 0.7500 | 1.1730 | 0.9215 | model_form_blend |
| predicted_HBP | - | 0.0730 | 0.0730 | form_only |
| predicted_HR | 0.0700 | 0.0560 | 0.0643 | model_form_blend |
| predicted_OBP | 0.3850 | 0.4175 | 0.3982 | model_form_blend |
| predicted_R | 0.3730 | 0.4190 | 0.3917 | model_form_blend |
| predicted_RBI | 0.3300 | 0.3700 | 0.3462 | model_form_blend |
| predicted_SLG | 0.4660 | 0.5069 | 0.4826 | model_form_blend |
| predicted_SO | 0.7840 | 0.6690 | 0.7374 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 153 |
| Season rows before report date | 153 |
| Report year | 2026 |
| Profile rows used | 51 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.314 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 677942 |
| playerID | 677942 |
| playerName | Blaze Alexander |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.6 |
| sl_bb_percent | 6.2 |
| sl_woba | 0.347 |
| sl_xwoba | 0.359 |
| sl_xba | 0.313 |
| sl_xslg | 0.461 |
| sl_sweet_spot_percent | 43.0 |
| sl_barrel_batted_rate | 6.6 |
| sl_hard_hit_percent | 47.1 |
| sl_exit_velocity_avg | 92.5 |
| sl_launch_angle_avg | 9.3 |
| sl_whiff_percent | 27.5 |
| sl_swing_percent | 56.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.040 | 0.000 | 0.000 | Hitting_2B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_3B | 0.040 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 3.040 | 3.000 | 3.000 | Hitting_AB | 3.186 | 3.000 | -0.186 | 0.000 |
| predicted_AVG | 0.228 | 0.000 | 0.333 | Hitting_AVG | 0.204 | 0.333 | -0.204 | -0.333 |
| predicted_BB | 0.360 | 0.000 | 0.000 | Hitting_BB | 0.395 | 1.000 | -0.395 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.620 | 0.000 | 1.000 | Hitting_H | 0.651 | 1.000 | -0.651 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.163 | 1.000 | -0.163 | -1.000 |
| predicted_OBP | 0.272 | 0.250 | 0.333 | Hitting_OBP | 0.280 | 0.500 | -0.030 | -0.250 |
| predicted_R | 0.480 | 0.000 | 0.000 | Hitting_R | 0.465 | 2.000 | -0.465 | -2.000 |
| predicted_RBI | 0.420 | 0.000 | 0.000 | Hitting_RBI | 0.581 | 1.000 | -0.581 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.093 | 0.000 | -0.093 | 0.000 |
| predicted_SLG | 0.384 | 0.000 | 0.333 | Hitting_SLG | 0.380 | 1.333 | -0.380 | -1.333 |
| predicted_SO | 1.080 | 1.000 | 1.000 | Hitting_SO | 1.070 | 1.000 | -0.070 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 7 |
| Biggest Boost | - |
| Biggest Deboost | predicted_H: 0.6200 -> 0.0000 (deboost -0.6200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AB: 3.0400 -> 3.1206 (boost 0.0806, better) | predicted_AVG: 0.2280 -> 0.2123 (deboost -0.0157, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2656 -> 0.2742 (boost 0.0086, better) | predicted_AVG: 0.2123 -> 0.1947 (deboost -0.0176, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_H: 0.6075 -> 1.0000 (boost 0.3925, better) | predicted_RBI: 0.4401 -> 0.0000 (deboost -0.4401, worse) | AB rounded to 3 (raw=3.12), rates preserved: AVG=0.195 HR/AB=0.048 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4706 -> 0.0000 (deboost -0.4706, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1947 -> 0.3330 (boost 0.1383, better) | predicted_SLG: 0.3776 -> 0.3330 (deboost -0.0446, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_HBP: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3776 (boost 0.0446, better) | predicted_AVG: 0.3330 -> 0.1947 (deboost -0.1383, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "702616",
"player_name": "Jackson Holliday",
"position": "2B",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.04,
"predicted_3B": 0.04,
"predicted_AB": 3.04,
"predicted_AVG": 0.228,
"predicted_BB": 0.36,
"predicted_H": 0.62,
"predicted_HR": 0.14,
"predicted_OBP": 0.272,
"predicted_R": 0.48,
"predicted_RBI": 0.42,
"predicted_SLG": 0.384,
"predicted_SO": 1.08
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0475,
"predicted_3B": 0.0392,
"predicted_AB": 3.1206,
"predicted_AVG": 0.2123,
"predicted_BB": 0.3431,
"predicted_H": 0.6147,
"predicted_HBP": 0.008,
"predicted_HR": 0.1505,
"predicted_OBP": 0.2656,
"predicted_R": 0.48,
"predicted_RBI": 0.4489,
"predicted_SLG": 0.3837,
"predicted_SO": 1.0924
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.04,
"after": 0.0475,
"delta": 0.0075,
"percent_delta": 0.1875,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0392,
"delta": -0.0008,
"percent_delta": -0.02,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.04,
"after": 3.1206,
"delta": 0.0806,
"percent_delta": 0.0265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2123,
"delta": -0.0157,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.36,
"after": 0.3431,
"delta": -0.0169,
"percent_delta": -0.0469,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.6147,
"delta": -0.0053,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1505,
"delta": 0.0105,
"percent_delta": 0.075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.272,
"after": 0.2656,
"delta": -0.0064,
"percent_delta": -0.0235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.48,
"after": 0.48,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.4489,
"delta": 0.0289,
"percent_delta": 0.0688,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.384,
"after": 0.3837,
"delta": -0.0003,
"percent_delta": -0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.08,
"after": 1.0924,
"delta": 0.0124,
"percent_delta": 0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.04,
"after": 3.1206,
"delta": 0.0806,
"percent_delta": 0.0265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2123,
"delta": -0.0157,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 25
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0475,
"predicted_3B": 0.0392,
"predicted_AB": 3.1206,
"predicted_AVG": 0.1947,
"predicted_BB": 0.3421,
"predicted_H": 0.6075,
"predicted_HBP": 0.008,
"predicted_HR": 0.1483,
"predicted_OBP": 0.2742,
"predicted_R": 0.4706,
"predicted_RBI": 0.4401,
"predicted_SLG": 0.3776,
"predicted_SO": 1.0956
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0475,
"after": 0.0475,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0392,
"after": 0.0392,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1206,
"after": 3.1206,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2123,
"after": 0.1947,
"delta": -0.0176,
"percent_delta": -0.0829,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3431,
"after": 0.3421,
"delta": -0.001,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6147,
"after": 0.6075,
"delta": -0.0072,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.008,
"after": 0.008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1505,
"after": 0.1483,
"delta": -0.0022,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2656,
"after": 0.2742,
"delta": 0.0086,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.48,
"after": 0.4706,
"delta": -0.0094,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4489,
"after": 0.4401,
"delta": -0.0088,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3837,
"after": 0.3776,
"delta": -0.0061,
"percent_delta": -0.0159,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0924,
"after": 1.0956,
"delta": 0.0032,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2656,
"after": 0.2742,
"delta": 0.0086,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2123,
"after": 0.1947,
"delta": -0.0176,
"percent_delta": -0.0829,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.12), rates preserved: AVG=0.195 HR/AB=0.048",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0475,
"after": 0.0,
"delta": -0.0475,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0392,
"after": 0.0,
"delta": -0.0392,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1206,
"after": 3.0,
"delta": -0.1206,
"percent_delta": -0.0386,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3421,
"after": 0.0,
"delta": -0.3421,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6075,
"after": 1.0,
"delta": 0.3925,
"percent_delta": 0.6461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.008,
"after": 0.0,
"delta": -0.008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1483,
"after": 0.0,
"delta": -0.1483,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4401,
"after": 0.0,
"delta": -0.4401,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0956,
"after": 1.0,
"delta": -0.0956,
"percent_delta": -0.0873,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6075,
"after": 1.0,
"delta": 0.3925,
"percent_delta": 0.6461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4401,
"after": 0.0,
"delta": -0.4401,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4706,
"after": 0.0,
"delta": -0.4706,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4706,
"after": 0.0,
"delta": -0.4706,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1947,
"after": 0.333,
"delta": 0.1383,
"percent_delta": 0.7103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2742,
"after": 0.333,
"delta": 0.0588,
"percent_delta": 0.2144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3776,
"after": 0.333,
"delta": -0.0446,
"percent_delta": -0.1181,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1947,
"after": 0.333,
"delta": 0.1383,
"percent_delta": 0.7103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3776,
"after": 0.333,
"delta": -0.0446,
"percent_delta": -0.1181,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_HBP",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1947,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2742,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3776,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1947,
"delta": -0.1383,
"percent_delta": -0.4154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2742,
"delta": -0.0588,
"percent_delta": -0.1765,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3776,
"delta": 0.0446,
"percent_delta": 0.1339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3776,
"delta": 0.0446,
"percent_delta": 0.1339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1947,
"delta": -0.1383,
"percent_delta": -0.4154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.04,
"after": 3.0,
"delta": -0.04,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.1947,
"delta": -0.0333,
"percent_delta": -0.1461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.272,
"after": 0.2742,
"delta": 0.0022,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.384,
"after": 0.3776,
"delta": -0.0064,
"percent_delta": -0.0167,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.08,
"after": 1.0,
"delta": -0.08,
"percent_delta": -0.0741,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 0,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.040 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 3.040 | - |
| predicted_AVG | 0.228 | - |
| predicted_BB | 0.360 | - |
| predicted_H | 0.620 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.272 | - |
| predicted_R | 0.480 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.384 | - |
| predicted_SO | 1.080 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.048 | 0.007 |
| predicted_3B | 0.039 | -0.001 |
| predicted_AB | 3.121 | 0.081 |
| predicted_AVG | 0.212 | -0.016 |
| predicted_BB | 0.343 | -0.017 |
| predicted_H | 0.615 | -0.005 |
| predicted_HBP | 0.008 | - |
| predicted_HR | 0.150 | 0.010 |
| predicted_OBP | 0.266 | -0.006 |
| predicted_R | 0.480 | 0.000 |
| predicted_RBI | 0.449 | 0.029 |
| predicted_SLG | 0.384 | -0.000 |
| predicted_SO | 1.092 | 0.012 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.048 | 0.000 |
| predicted_3B | 0.039 | 0.000 |
| predicted_AB | 3.121 | 0.000 |
| predicted_AVG | 0.195 | -0.018 |
| predicted_BB | 0.342 | -0.001 |
| predicted_H | 0.608 | -0.007 |
| predicted_HBP | 0.008 | 0.000 |
| predicted_HR | 0.148 | -0.002 |
| predicted_OBP | 0.274 | 0.009 |
| predicted_R | 0.471 | -0.009 |
| predicted_RBI | 0.440 | -0.009 |
| predicted_SLG | 0.378 | -0.006 |
| predicted_SO | 1.096 | 0.003 |
AB rounded to 3 (raw=3.12), rates preserved: AVG=0.195 HR/AB=0.048
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.048 |
| predicted_3B | 0.000 | -0.039 |
| predicted_AB | 3.000 | -0.121 |
| predicted_AVG | 0.333 | 0.138 |
| predicted_BB | 0.000 | -0.342 |
| predicted_H | 1.000 | 0.392 |
| predicted_HR | 0.000 | -0.148 |
| predicted_OBP | 0.333 | 0.059 |
| predicted_R | 0.000 | -0.471 |
| predicted_RBI | 0.000 | -0.440 |
| predicted_SLG | 0.333 | -0.045 |
| predicted_SO | 1.000 | -0.096 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 1.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 1.000 | 7.000 | 0.0667 | 0.1176 | 0.2667 | 0.0667 | 0.0667 | 0.1333 | 0.0667 | 0.4667 |
| last_10 | 0.20 | 10 | - | 31.000 | 5.000 | 0.000 | 1.000 | 2.000 | 6.000 | 5.000 | 3.000 | 12.000 | 0.1613 | 0.2286 | 0.4194 | 0.1613 | 0.0645 | 0.1935 | 0.0968 | 0.3871 |
| season | 0.60 | 25 | - | 76.000 | 15.000 | 1.000 | 1.000 | 4.000 | 12.000 | 12.000 | 9.000 | 27.000 | 0.1974 | 0.2759 | 0.3947 | 0.1974 | 0.0526 | 0.1579 | 0.1184 | 0.3553 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0600 |
| predicted_3B | 0.0380 |
| predicted_AB | 3.2550 |
| predicted_AVG | 0.1862 |
| predicted_BB | 0.3150 |
| predicted_H | 0.6060 |
| predicted_HBP | 0.0080 |
| predicted_HR | 0.1680 |
| predicted_OBP | 0.2549 |
| predicted_R | 0.4800 |
| predicted_RBI | 0.4970 |
| predicted_SLG | 0.3832 |
| predicted_SO | 1.1130 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0400 | 0.0600 | 0.0475 | model_form_blend |
| predicted_3B | 0.0400 | 0.0380 | 0.0392 | model_form_blend |
| predicted_AB | 3.0400 | 3.2550 | 3.1206 | model_form_blend |
| predicted_AVG | 0.2280 | 0.1862 | 0.2123 | model_form_blend |
| predicted_BB | 0.3600 | 0.3150 | 0.3431 | model_form_blend |
| predicted_H | 0.6200 | 0.6060 | 0.6147 | model_form_blend |
| predicted_HBP | - | 0.0080 | 0.0080 | form_only |
| predicted_HR | 0.1400 | 0.1680 | 0.1505 | model_form_blend |
| predicted_OBP | 0.2720 | 0.2549 | 0.2656 | model_form_blend |
| predicted_R | 0.4800 | 0.4800 | 0.4800 | model_form_blend |
| predicted_RBI | 0.4200 | 0.4970 | 0.4489 | model_form_blend |
| predicted_SLG | 0.3840 | 0.3832 | 0.3837 | model_form_blend |
| predicted_SO | 1.0800 | 1.1130 | 1.0924 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 43 |
| Season rows before report date | 43 |
| Report year | 2026 |
| Profile rows used | 25 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.197 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 702616 |
| playerID | 702616 |
| playerName | Jackson Holliday |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 30.3 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.294 |
| sl_xwoba | 0.324 |
| sl_xba | 0.221 |
| sl_xslg | 0.424 |
| sl_sweet_spot_percent | 46.2 |
| sl_barrel_batted_rate | 15.4 |
| sl_hard_hit_percent | 46.2 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 16.8 |
| sl_whiff_percent | 32.9 |
| sl_swing_percent | 44.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 2.286 | 2.000 | -0.286 | 0.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 2.643 | 2.000 | 0.357 | 1.000 |
| predicted_H | 7.000 | 7.000 | 7.000 | Pitching_H | 5.857 | 6.000 | 1.143 | 1.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.657 | 5.000 | 0.343 | 1.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 4.786 | 1.000 | -2.786 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "669358",
"player_name": "Shane Baz",
"position": "Starter",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 3.0,
"predicted_H": 7.0,
"predicted_HR": 2.0,
"predicted_IP": 6.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 3.0,
"predicted_H": 7.0,
"predicted_HR": 2.0,
"predicted_IP": 6.0,
"predicted_R": 3.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 3.000 | - |
| predicted_H | 7.000 | - |
| predicted_HR | 2.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 30.200 | 7.000 | 26.000 | 10.000 | 25.000 | 2.000 | 2.0543 | 1.1739 | 0.2283 | 0.8478 | 0.3261 | 0.8152 | 0.0652 |
| last_10 | 0.35 | 10 | 60.000 | 25.000 | 56.000 | 24.000 | 48.000 | 6.000 | 3.7500 | 1.3333 | 0.4167 | 0.9333 | 0.4000 | 0.8000 | 0.1000 |
| season | 0.20 | 14 | 82.000 | 37.000 | 82.000 | 32.000 | 67.000 | 8.000 | 4.0610 | 1.3902 | 0.4512 | 1.0000 | 0.3902 | 0.8171 | 0.0976 |
| Metric | Value |
|---|---|
| predicted_BB | 2.1860 |
| predicted_ER | 2.2890 |
| predicted_ERA | 3.4332 |
| predicted_H | 5.5530 |
| predicted_HR | 0.6010 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.0630 |
| predicted_WHIP | 1.2899 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 2.1860 | 2.1002 | model_form_blend |
| predicted_ER | 3.0000 | 2.2890 | 2.6169 | model_form_blend |
| predicted_ERA | - | 3.4332 | 3.4332 | form_only |
| predicted_H | 7.0000 | 5.5530 | 6.2204 | model_form_blend |
| predicted_HR | 2.0000 | 0.6010 | 1.2462 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 2.0000 | 5.0630 | 3.6503 | model_form_blend |
| predicted_WHIP | - | 1.2899 | 1.2899 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 6.0 |
| H | 7 |
| R | 3 |
| ER | 3 |
| BB | 2 |
| SO | 2 |
| HR | 2 |
| BF | 27 |
| Pitches | 105 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 24 |
| Pitching_ER | 2 |
| Pitching_ERA | 4.06 |
| Pitching_Flyouts | 5 |
| Pitching_Groundouts | 6 |
| Pitching_H | 6 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 103 |
| Pitching_R | 3 |
| Pitching_SO | 1 |
| Pitching_Strikes | 62 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_SD@BAL |
| game_type | full |
| mlbID | 669358 |
| playerID | 669358 |
| playerName | Shane Baz |
| pos | P |
| started | True |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-12 |
| sl_k_percent | 18.9 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.331 |
| sl_xwoba | 0.338 |
| sl_sweet_spot_percent | 37.2 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 41.1 |
| sl_whiff_percent | 21.0 |
| sl_swing_percent | 47.4 |
| sl_avg_best_speed | 80.217468968 |
| sl_avg_hyper_speed | 94.690975139 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.312 | 1.000 | 0.688 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.188 | 2.000 | -0.188 | -2.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.375 | 1.000 | 0.625 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.825 | 1.000 | 0.175 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 1.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "670329",
"player_name": "Rico Garcia",
"position": "Middle Reliever",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 4.000 | 5.000 | 1.000 | 4.000 | 3.000 | 8.3077 | 1.3846 | 0.9231 | 1.1539 | 0.2308 | 0.9231 | 0.6923 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 8.000 | 3.000 | 7.000 | 3.000 | 3.8571 | 1.1786 | 0.4286 | 0.8571 | 0.3214 | 0.7500 | 0.3214 |
| season | 0.20 | 32 | 29.200 | 6.000 | 12.000 | 10.000 | 32.000 | 4.000 | 1.8202 | 0.7416 | 0.2023 | 0.4045 | 0.3371 | 1.0787 | 0.1348 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3200 |
| predicted_ER | 0.5580 |
| predicted_ERA | 5.0190 |
| predicted_H | 0.9340 |
| predicted_HR | 0.3110 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9140 |
| predicted_WHIP | 1.2543 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3200 | 0.6899 | model_form_blend |
| predicted_ER | 0.0000 | 0.5580 | 0.2545 | model_form_blend |
| predicted_ERA | - | 5.0190 | 5.0190 | form_only |
| predicted_H | 1.0000 | 0.9340 | 0.9699 | model_form_blend |
| predicted_HR | 0.0000 | 0.3110 | 0.1418 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9140 | 0.4168 | model_form_blend |
| predicted_WHIP | - | 1.2543 | 1.2543 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 32 |
| Season rows before report date | 32 |
| Report year | 2026 |
| Profile rows used | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 1.82 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 19 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260614_SD@BAL |
| game_type | full |
| mlbID | 670329 |
| playerID | 670329 |
| playerName | Rico Garcia |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-14 |
| sl_k_percent | 29.4 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.211 |
| sl_xwoba | 0.27 |
| sl_sweet_spot_percent | 25.4 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 32.8 |
| sl_whiff_percent | 36.5 |
| sl_swing_percent | 49.1 |
| sl_avg_best_speed | 74.450207647 |
| sl_avg_hyper_speed | 93.057668955 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 0.538 | 0.000 | 2.462 | 3.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.385 | 2.000 | -0.385 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.692 | 2.000 | -0.692 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.862 | 1.000 | 0.138 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.308 | 2.000 | -0.308 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "664854",
"player_name": "Ryan Helsley",
"position": "Middle Reliever",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 3.000 | 2.000 | 3.000 | 6.000 | 2.000 | 6.2308 | 1.1538 | 0.6923 | 0.4615 | 0.6923 | 1.3846 | 0.4615 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 5.000 | 6.000 | 13.000 | 2.000 | 3.8571 | 1.1786 | 0.4286 | 0.5357 | 0.6429 | 1.3929 | 0.2143 |
| season | 0.20 | 13 | 11.200 | 5.000 | 9.000 | 7.000 | 17.000 | 2.000 | 3.8571 | 1.3714 | 0.4286 | 0.7714 | 0.6000 | 1.4571 | 0.1714 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4560 |
| predicted_ER | 0.5160 |
| predicted_ERA | 4.6403 |
| predicted_H | 0.8400 |
| predicted_HR | 0.2000 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0850 |
| predicted_WHIP | 1.2957 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 0.4560 | 2.0809 | model_form_blend |
| predicted_ER | 0.0000 | 0.5160 | 0.1864 | model_form_blend |
| predicted_ERA | - | 4.6403 | 4.6403 | form_only |
| predicted_H | 0.0000 | 0.8400 | 0.3035 | model_form_blend |
| predicted_HR | 0.0000 | 0.2000 | 0.0723 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0850 | 1.0307 | model_form_blend |
| predicted_WHIP | - | 1.2957 | 1.2957 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 13 |
| Season rows before report date | 13 |
| Report year | 2026 |
| Profile rows used | 13 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 3 |
| SO | 1 |
| HR | 0 |
| BF | 6 |
| Pitches | 25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 3.86 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 9 |
| Pitching_R | 2 |
| Pitching_SO | 2 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 664854 |
| playerID | 664854 |
| playerName | Ryan Helsley |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-17 |
| sl_k_percent | 33.3 |
| sl_bb_percent | 13.7 |
| sl_woba | 0.306 |
| sl_xwoba | 0.287 |
| sl_sweet_spot_percent | 18.5 |
| sl_barrel_batted_rate | 7.4 |
| sl_hard_hit_percent | 59.3 |
| sl_whiff_percent | 40.2 |
| sl_swing_percent | 45.8 |
| sl_avg_best_speed | 84.000164615 |
| sl_avg_hyper_speed | 96.024345 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.211 | 0.000 | -0.211 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.579 | 0.000 | -0.579 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.000 | 0.000 | 0.000 | 1.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 0.737 | 0.200 | -0.737 | -0.200 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.789 | 0.000 | -0.789 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "552640",
"player_name": "Andrew Kittredge",
"position": "Middle Reliever",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 2.000 | 4.000 | 0.000 | 2.000 | 1.000 | 3.8571 | 0.8571 | 0.4286 | 0.8571 | 0.0000 | 0.4286 | 0.2143 |
| last_10 | 0.35 | 10 | 9.000 | 2.000 | 5.000 | 1.000 | 8.000 | 1.000 | 2.0000 | 0.6667 | 0.2222 | 0.5556 | 0.1111 | 0.8889 | 0.1111 |
| season | 0.20 | 19 | 16.100 | 11.000 | 19.000 | 4.000 | 15.000 | 3.000 | 6.0612 | 1.4082 | 0.6735 | 1.1633 | 0.2449 | 0.9184 | 0.1837 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1520 |
| predicted_ER | 0.2760 |
| predicted_ERA | 4.1697 |
| predicted_H | 0.5420 |
| predicted_HR | 0.0930 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.5000 |
| predicted_WHIP | 1.1654 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1520 | 0.0599 | model_form_blend |
| predicted_ER | 0.0000 | 0.2760 | 0.1087 | model_form_blend |
| predicted_ERA | - | 4.1697 | 4.1697 | form_only |
| predicted_H | 1.0000 | 0.5420 | 0.8197 | model_form_blend |
| predicted_HR | 0.0000 | 0.0930 | 0.0366 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.5000 | 0.1969 | model_form_blend |
| predicted_WHIP | - | 1.1654 | 1.1654 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 19 |
| Season rows before report date | 19 |
| Report year | 2026 |
| Profile rows used | 19 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 1 |
| Pitches | 10 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 1 |
| Pitching_ER | 0 |
| Pitching_ERA | 6.06 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 2 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 2 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_BAL@SEA |
| game_type | full |
| mlbID | 552640 |
| playerID | 552640 |
| playerName | Andrew Kittredge |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-16 |
| sl_k_percent | 20.3 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.329 |
| sl_xwoba | 0.278 |
| sl_sweet_spot_percent | 35.2 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 23.3 |
| sl_swing_percent | 53.6 |
| sl_avg_best_speed | 74.994601481 |
| sl_avg_hyper_speed | 93.396837547 |
| Field | Value |
|---|---|
| Pitcher | Bryan Woo |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.2610 |
| ESPN Rank | 175 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1559 |
| Avg Velo | 92.5129 |
| Avg Spin | 2286.8317 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 2 |
| Pre SO | 6 |
| Season ERA | 4.2805 |
| Season WHIP | 1.0366 |
| Role Avg IP | 5.8570 |
| Recent Avg IP | 5.8000 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"opponent": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"edges": {
"quality_edge": 0.1071,
"offense_edge": -0.0198,
"opponent_offense_edge": 0.0085,
"defense_strength": 0.1034,
"opponent_defense_weakness": 0.0601,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.007,
"run_prevention": 0.9857,
"strikeout": 1.0025
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "693433",
"profile": {
"available": true,
"pitcher_id": "693433",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 255.0,
"k_percent": 24.0,
"bb_percent": 4.6,
"woba": 0.273,
"xwoba": 0.286,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 44.4,
"avg_best_speed": 78.7832,
"avg_hyper_speed": 94.57,
"whiff_percent": 24.2,
"swing_percent": 54.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3934,
"command_and_miss": 0.2514,
"regression_edge": -0.3714,
"xwoba_edge": 0.8286,
"barrel_edge": 0.0,
"hard_hit_edge": -0.8714,
"whiff_edge": -0.2143,
"bb_edge": 1.15,
"pitch_design_score": 0.1559
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "693433",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 95,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.5129,
"release_spin_rate": 2286.8317,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1559,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1136,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.261,
"sample_weight": 1.0,
"run_prevention_factor": 0.9778,
"strikeout_factor": 1.0,
"walk_factor": 0.908,
"homer_factor": 1.01,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693433",
"espn_id": 4629089,
"player_name": "Bryan Woo",
"team": "SEA",
"role": "pitcher",
"espn_rank": 175,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 175,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 8.0,
"qs_rank": 15,
"era_value": 4.2804,
"era_rank": 54.0,
"w_value": 5.0,
"w_rank": 39,
"l_value": 5.0,
"l_rank": 36,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 82.0,
"ip_rank": 30,
"h_value": 70.0,
"h_rank": 51,
"er_value": 39.0,
"er_rank": 29,
"hr_value": 9.0,
"hr_rank": 59,
"bb_value": 15.0,
"bb_rank": 191,
"k_value": 79.0,
"k_rank": 34,
"k_per_9_value": 8.6707325,
"k_per_9_rank": 30,
"whip_value": 1.0365,
"whip_rank": 14.0,
"war_value": 0.57,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 0.9778,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 0.9778,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.908,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.01,
"adjusted": 1
},
"predicted_SO": {
"original": 6.0,
"factor": 1.0,
"adjusted": 6
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 57.0,
"ER": 33,
"H": 52,
"BB": 10,
"SO": 59,
"HR": 9,
"ERA": 5.2105263157894735,
"WHIP": 1.087719298245614,
"K9": 9.31578947368421,
"HR9": 1.4210526315789473,
"games_pitched": 10,
"quality_starts": 5,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-11T00:00:00"
}{
"available": true,
"pitcher_id": "693433",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 95,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.5129,
"release_spin_rate": 2286.8317,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1559,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1136,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "693433",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 29.0,
"ER": 16.0,
"R": 16.0,
"H": 27.0,
"BB": 5.0,
"SO": 32.0,
"HR": 3.0,
"BF": 118.0,
"Pitches": 439.0
},
"per_game": {
"IP": 5.2,
"ER": 3.2,
"R": 3.2,
"H": 5.4,
"BB": 1.0,
"SO": 6.4,
"HR": 0.6,
"BF": 23.6,
"Pitches": 87.8
},
"rates": {
"ERA": 4.9655,
"WHIP": 1.1034,
"ER_per_IP": 0.55172,
"H_per_IP": 0.93103,
"BB_per_IP": 0.17241,
"SO_per_IP": 1.10345,
"HR_per_IP": 0.10345
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 57.0,
"ER": 33.0,
"R": 33.0,
"H": 52.0,
"BB": 10.0,
"SO": 59.0,
"HR": 9.0,
"BF": 232.0,
"Pitches": 863.0
},
"per_game": {
"IP": 5.2,
"ER": 3.3,
"R": 3.3,
"H": 5.2,
"BB": 1.0,
"SO": 5.9,
"HR": 0.9,
"BF": 23.2,
"Pitches": 86.3
},
"rates": {
"ERA": 5.2105,
"WHIP": 1.0877,
"ER_per_IP": 0.57895,
"H_per_IP": 0.91228,
"BB_per_IP": 0.17544,
"SO_per_IP": 1.03509,
"HR_per_IP": 0.15789
}
},
"season": {
"games": 14,
"totals": {
"IP": 82.0,
"ER": 39.0,
"R": 41.0,
"H": 70.0,
"BB": 15.0,
"SO": 79.0,
"HR": 9.0,
"BF": 329.0,
"Pitches": 1208.0
},
"per_game": {
"IP": 6.0,
"ER": 2.7857,
"R": 2.9286,
"H": 5.0,
"BB": 1.0714,
"SO": 5.6429,
"HR": 0.6429,
"BF": 23.5,
"Pitches": 86.2857
},
"rates": {
"ERA": 4.2805,
"WHIP": 1.0366,
"ER_per_IP": 0.47561,
"H_per_IP": 0.85366,
"BB_per_IP": 0.18293,
"SO_per_IP": 0.96341,
"HR_per_IP": 0.10976
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 3.053,
"predicted_H": 5.293,
"predicted_BB": 1.286,
"predicted_SO": 5.839,
"predicted_HR": 0.741,
"predicted_ERA": 4.8074,
"predicted_WHIP": 1.151
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 3.053,
"final": 2.1062,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 5.293,
"final": 3.7743,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.286,
"final": 1.6153,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 5.839,
"final": 5.4521,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.741,
"final": 0.3992,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.8074,
"final": 4.8074,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.151,
"final": 1.151,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Andrés Muñoz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0672 |
| ESPN Rank | 673 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 4.9737 |
| Season WHIP | 1.3421 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"opponent": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"edges": {
"quality_edge": 0.1071,
"offense_edge": -0.0198,
"opponent_offense_edge": 0.0085,
"defense_strength": 0.1034,
"opponent_defense_weakness": 0.0601,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.007,
"run_prevention": 0.9857,
"strikeout": 1.0025
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "662253",
"profile": {
"available": true,
"pitcher_id": "662253",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 89.0,
"k_percent": 33.3,
"bb_percent": 9.6,
"woba": 0.321,
"xwoba": 0.327,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 10.9,
"hard_hit_percent": 45.3,
"avg_best_speed": 75.0031,
"avg_hyper_speed": 94.7788,
"whiff_percent": 40.8,
"swing_percent": 46.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.3662,
"command_and_miss": 1.4293,
"regression_edge": -0.1714,
"xwoba_edge": -0.3429,
"barrel_edge": -0.8,
"hard_hit_edge": -1.0,
"whiff_edge": 2.1571,
"bb_edge": -0.1,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "662253",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0672,
"sample_weight": 0.45,
"run_prevention_factor": 0.9943,
"strikeout_factor": 1.0666,
"walk_factor": 1.0036,
"homer_factor": 1.0514,
"woba_minus_xwoba": -0.006,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "662253",
"espn_id": 40939,
"player_name": "Andres Munoz",
"team": "SEA",
"role": "pitcher",
"espn_rank": 673,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 673,
"gp_value": 28.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.6842,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 11.0,
"sv_rank": 14,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 25.1,
"ip_rank": 320,
"h_value": 25.0,
"h_rank": 266,
"er_value": 16.0,
"er_rank": 197,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 38.0,
"k_rank": 170,
"k_per_9_value": 13.5,
"k_per_9_rank": 14,
"whip_value": 1.421,
"whip_rank": null,
"war_value": -0.65,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9974,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9974,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0016,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0231,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.03,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.1,
"ER": 4,
"H": 8,
"BB": 3,
"SO": 9,
"HR": 1,
"ERA": 4.32,
"WHIP": 1.3200000000000003,
"K9": 9.72,
"HR9": 1.08,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "662253",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.031,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5015,
"prior_weight": 0.4985
},
"role": "pitcher",
"player_id": "662253",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 3.0,
"SO": 5.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 93.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 4.6,
"Pitches": 18.6
},
"rates": {
"ERA": 5.7857,
"WHIP": 1.5,
"ER_per_IP": 0.64286,
"H_per_IP": 0.85714,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 3.0,
"SO": 12.0,
"HR": 1.0,
"BF": 42.0,
"Pitches": 163.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.9,
"BB": 0.3,
"SO": 1.2,
"HR": 0.1,
"BF": 4.2,
"Pitches": 16.3
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.2857,
"ER_per_IP": 0.42857,
"H_per_IP": 0.96429,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 27,
"totals": {
"IP": 25.1,
"ER": 14.0,
"R": 15.0,
"H": 24.0,
"BB": 10.0,
"SO": 38.0,
"HR": 4.0,
"BF": 112.0,
"Pitches": 449.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5185,
"R": 0.5556,
"H": 0.8889,
"BB": 0.3704,
"SO": 1.4074,
"HR": 0.1481,
"BF": 4.1481,
"Pitches": 16.6296
},
"rates": {
"ERA": 4.9737,
"WHIP": 1.3421,
"ER_per_IP": 0.55263,
"H_per_IP": 0.94737,
"BB_per_IP": 0.39474,
"SO_per_IP": 1.5,
"HR_per_IP": 0.15789
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.525,
"predicted_H": 0.943,
"predicted_BB": 0.422,
"predicted_SO": 1.085,
"predicted_HR": 0.107,
"predicted_ERA": 4.7289,
"predicted_WHIP": 1.3654
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5606,
"form_weight": 0.4394,
"form_reliability": 0.5015,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.031,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5015,
"prior_weight": 0.4985
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.525,
"final": 0.2307,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.943,
"final": 0.4143,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.422,
"final": 0.1854,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.085,
"final": 0.4767,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.107,
"final": 0.047,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.7289,
"final": 4.7289,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3654,
"final": 1.3654,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Eduard Bazardo |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1490 |
| ESPN Rank | 142 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 2.2268 |
| Season WHIP | 1.3299 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"opponent": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"edges": {
"quality_edge": 0.1071,
"offense_edge": -0.0198,
"opponent_offense_edge": 0.0085,
"defense_strength": 0.1034,
"opponent_defense_weakness": 0.0601,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.007,
"run_prevention": 0.9857,
"strikeout": 1.0025
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "660825",
"profile": {
"available": true,
"pitcher_id": "660825",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 95.0,
"k_percent": 20.7,
"bb_percent": 8.1,
"woba": 0.313,
"xwoba": 0.328,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 8.4,
"hard_hit_percent": 41.1,
"avg_best_speed": 81.7681,
"avg_hyper_speed": 94.6146,
"whiff_percent": 21.4,
"swing_percent": 44.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.3865,
"command_and_miss": -0.2757,
"regression_edge": -0.4286,
"xwoba_edge": -0.3714,
"barrel_edge": -0.2444,
"hard_hit_edge": -0.4,
"whiff_edge": -0.6143,
"bb_edge": 0.275,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "660825",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.149,
"sample_weight": 0.45,
"run_prevention_factor": 1.0127,
"strikeout_factor": 0.9843,
"walk_factor": 0.9901,
"homer_factor": 1.021,
"woba_minus_xwoba": -0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "660825",
"espn_id": 41939,
"player_name": "Eduard Bazardo",
"team": "SEA",
"role": "pitcher",
"espn_rank": 142,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 142,
"gp_value": 34.0,
"gp_rank": 13,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.2268,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 13.0,
"hld_rank": 7,
"ip_value": 32.1,
"ip_rank": 217,
"h_value": 32.0,
"h_rank": 193,
"er_value": 8.0,
"er_rank": 396,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 28.0,
"k_rank": 268,
"k_per_9_value": 7.7938147,
"k_per_9_rank": 33,
"whip_value": 1.3298,
"whip_rank": null,
"war_value": 0.73,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0057,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0057,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9955,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0094,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9929,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 2,
"H": 10,
"BB": 2,
"SO": 9,
"HR": 0,
"ERA": 1.7419354838709677,
"WHIP": 1.161290322580645,
"K9": 7.838709677419354,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "660825",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.421,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5622,
"prior_weight": 0.4378
},
"role": "pitcher",
"player_id": "660825",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 34,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 64.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.2,
"SO": 0.6,
"HR": 0.0,
"BF": 3.4,
"Pitches": 12.8
},
"rates": {
"ERA": 2.0769,
"WHIP": 1.1538,
"ER_per_IP": 0.23077,
"H_per_IP": 0.92308,
"BB_per_IP": 0.23077,
"SO_per_IP": 0.69231,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 2.0,
"SO": 9.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 159.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.2,
"SO": 0.9,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.9
},
"rates": {
"ERA": 1.7419,
"WHIP": 1.1613,
"ER_per_IP": 0.19355,
"H_per_IP": 0.96774,
"BB_per_IP": 0.19355,
"SO_per_IP": 0.87097,
"HR_per_IP": 0.0
}
},
"season": {
"games": 34,
"totals": {
"IP": 32.1,
"ER": 8.0,
"R": 10.0,
"H": 32.0,
"BB": 11.0,
"SO": 28.0,
"HR": 2.0,
"BF": 135.0,
"Pitches": 525.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2353,
"R": 0.2941,
"H": 0.9412,
"BB": 0.3235,
"SO": 0.8235,
"HR": 0.0588,
"BF": 3.9706,
"Pitches": 15.4412
},
"rates": {
"ERA": 2.2268,
"WHIP": 1.3299,
"ER_per_IP": 0.24742,
"H_per_IP": 0.98969,
"BB_per_IP": 0.34021,
"SO_per_IP": 0.86598,
"HR_per_IP": 0.06186
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.344,
"predicted_H": 0.962,
"predicted_BB": 0.294,
"predicted_SO": 0.854,
"predicted_HR": 0.071,
"predicted_ERA": 3.0923,
"predicted_WHIP": 1.2554
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.535,
"form_weight": 0.465,
"form_reliability": 0.5622,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.421,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5622,
"prior_weight": 0.4378
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.344,
"final": 0.6949,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.962,
"final": 0.9823,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.294,
"final": 1.2067,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.854,
"final": 0.3971,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.071,
"final": 0.033,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0923,
"final": 3.0923,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2554,
"final": 1.2554,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | José A. Ferrer |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2408 |
| ESPN Rank | 180 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 2.8723 |
| Season WHIP | 1.3723 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 81,
"wins": 42,
"losses": 39,
"win_pct": 0.5185,
"runs_scored": 358.0,
"runs_allowed": 331.0,
"run_differential": 27.0,
"run_differential_per_game": 0.3333,
"avg_runs_scored": 4.4198,
"avg_runs_allowed": 4.0864,
"offense_index": 0.9802,
"defense_index": 1.1034,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 5.3,
"run_differential": -10.0
},
"available": true,
"quality_score": 0.0214
},
"opponent": {
"team": "BAL",
"games": 84,
"wins": 40,
"losses": 44,
"win_pct": 0.4762,
"runs_scored": 382.0,
"runs_allowed": 403.0,
"run_differential": -21.0,
"run_differential_per_game": -0.25,
"avg_runs_scored": 4.5476,
"avg_runs_allowed": 4.7976,
"offense_index": 1.0085,
"defense_index": 0.9399,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 4.8,
"run_differential": -4.0
},
"available": true,
"quality_score": -0.0857
},
"edges": {
"quality_edge": 0.1071,
"offense_edge": -0.0198,
"opponent_offense_edge": 0.0085,
"defense_strength": 0.1034,
"opponent_defense_weakness": 0.0601,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.007,
"run_prevention": 0.9857,
"strikeout": 1.0025
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "678606",
"profile": {
"available": true,
"pitcher_id": "678606",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 102.0,
"k_percent": 19.3,
"bb_percent": 5.7,
"woba": 0.323,
"xwoba": 0.269,
"sweet_spot_percent": 28.4,
"barrel_batted_rate": 3.9,
"hard_hit_percent": 36.3,
"avg_best_speed": 73.6556,
"avg_hyper_speed": 93.2911,
"whiff_percent": 21.2,
"swing_percent": 52.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.7986,
"command_and_miss": -0.2557,
"regression_edge": 1.5429,
"xwoba_edge": 1.3143,
"barrel_edge": 0.7556,
"hard_hit_edge": 0.2857,
"whiff_edge": -0.6429,
"bb_edge": 0.875,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "678606",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2408,
"sample_weight": 0.45,
"run_prevention_factor": 0.9795,
"strikeout_factor": 0.9802,
"walk_factor": 0.9685,
"homer_factor": 0.9499,
"woba_minus_xwoba": 0.054,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "678606",
"espn_id": 5119607,
"player_name": "Jose Ferrer",
"team": "SEA",
"role": "pitcher",
"espn_rank": 180,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 180,
"gp_value": 35.0,
"gp_rank": 9,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.8723,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 3.0,
"sv_rank": 45,
"hld_value": 8.0,
"hld_rank": 41,
"ip_value": 31.1,
"ip_rank": 229,
"h_value": 36.0,
"h_rank": 166,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 8.0,
"bb_rank": 360,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 7.755319,
"k_per_9_rank": 32,
"whip_value": 1.4042,
"whip_rank": null,
"war_value": 0.54,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9908,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9908,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9858,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9775,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9911,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 7.2,
"ER": 5,
"H": 9,
"BB": 5,
"SO": 5,
"HR": 1,
"ERA": 5.869565217391305,
"WHIP": 1.8260869565217392,
"K9": 5.869565217391305,
"HR9": 1.173913043478261,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "678606",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.222,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5545,
"prior_weight": 0.4455
},
"role": "pitcher",
"player_id": "678606",
"report_date": "20260618_B",
"season_year": 2026,
"rows_used": 34,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.2,
"ER": 5.0,
"R": 5.0,
"H": 6.0,
"BB": 5.0,
"SO": 3.0,
"HR": 1.0,
"BF": 23.0,
"Pitches": 95.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.2,
"BB": 1.0,
"SO": 0.6,
"HR": 0.2,
"BF": 4.6,
"Pitches": 19.0
},
"rates": {
"ERA": 12.2727,
"WHIP": 3.0,
"ER_per_IP": 1.36364,
"H_per_IP": 1.63636,
"BB_per_IP": 1.36364,
"SO_per_IP": 0.81818,
"HR_per_IP": 0.27273
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.2,
"ER": 5.0,
"R": 5.0,
"H": 9.0,
"BB": 5.0,
"SO": 5.0,
"HR": 1.0,
"BF": 37.0,
"Pitches": 151.0
},
"per_game": {
"IP": 0.2,
"ER": 0.5,
"R": 0.5,
"H": 0.9,
"BB": 0.5,
"SO": 0.5,
"HR": 0.1,
"BF": 3.7,
"Pitches": 15.1
},
"rates": {
"ERA": 5.8696,
"WHIP": 1.8261,
"ER_per_IP": 0.65217,
"H_per_IP": 1.17391,
"BB_per_IP": 0.65217,
"SO_per_IP": 0.65217,
"HR_per_IP": 0.13043
}
},
"season": {
"games": 34,
"totals": {
"IP": 31.1,
"ER": 10.0,
"R": 11.0,
"H": 35.0,
"BB": 8.0,
"SO": 27.0,
"HR": 2.0,
"BF": 139.0,
"Pitches": 514.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2941,
"R": 0.3235,
"H": 1.0294,
"BB": 0.2353,
"SO": 0.7941,
"HR": 0.0588,
"BF": 4.0882,
"Pitches": 15.1176
},
"rates": {
"ERA": 2.8723,
"WHIP": 1.3723,
"ER_per_IP": 0.31915,
"H_per_IP": 1.11702,
"BB_per_IP": 0.25532,
"SO_per_IP": 0.8617,
"HR_per_IP": 0.06383
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.51,
"predicted_H": 0.84,
"predicted_BB": 0.462,
"predicted_SO": 0.594,
"predicted_HR": 0.116,
"predicted_ERA": 6.5284,
"predicted_WHIP": 1.8509
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5382,
"form_weight": 0.4618,
"form_reliability": 0.5545,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.222,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5545,
"prior_weight": 0.4455
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.51,
"final": 0.2355,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.84,
"final": 0.3879,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.462,
"final": 0.7516,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.594,
"final": 1.3507,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.116,
"final": 0.0536,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.5284,
"final": 6.5284,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.8509,
"final": 1.8509,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.188 | 0.000 | 0.000 | Hitting_2B | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_AB | 2.690 | 4.000 | 3.000 | Hitting_AB | 2.910 | 3.000 | 1.090 | 1.000 |
| predicted_AVG | 0.298 | 0.500 | 0.333 | Hitting_AVG | 0.280 | 0.667 | 0.220 | -0.167 |
| predicted_BB | 0.234 | 0.000 | 0.000 | Hitting_BB | 0.290 | 1.000 | -0.290 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.014 | 0.000 | -0.014 | 0.000 |
| predicted_H | 0.800 | 2.000 | 1.000 | Hitting_H | 0.814 | 2.000 | 1.186 | 0.000 |
| predicted_HR | 0.190 | 1.000 | 0.000 | Hitting_HR | 0.186 | 1.000 | 0.814 | 0.000 |
| predicted_OBP | 0.380 | 0.500 | 0.333 | Hitting_OBP | 0.348 | 0.750 | 0.152 | -0.250 |
| predicted_R | 0.391 | 1.000 | 0.000 | Hitting_R | 0.476 | 1.000 | 0.524 | 0.000 |
| predicted_RBI | 0.530 | 2.000 | 1.000 | Hitting_RBI | 0.641 | 2.000 | 1.359 | 0.000 |
| predicted_SLG | 0.571 | 1.250 | 0.333 | Hitting_SLG | 0.562 | 1.667 | 0.688 | -0.417 |
| predicted_SO | 0.562 | 0.000 | 1.000 | Hitting_SO | 0.669 | 1.000 | -0.669 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 8 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_RBI: 0.5300 -> 2.0000 (boost 1.4700, better) |
| Biggest Deboost | predicted_SO: 0.5620 -> 0.0000 (deboost -0.5620, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_AB: 2.6900 -> 2.7760 (boost 0.0860, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.6087 -> 0.6261 (boost 0.0174, better) | predicted_OBP: 0.3921 -> 0.3764 (deboost -0.0157, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_SO: 0.5267 -> 1.0000 (boost 0.4733, worse) | predicted_BB: 0.2757 -> 0.0000 (deboost -0.2757, worse) | AB rounded to 3 (raw=2.78), rates preserved: AVG=0.314 HR/AB=0.075 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4258 -> 0.0000 (deboost -0.4258, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.3145 -> 0.3330 (boost 0.0185, better) | predicted_SLG: 0.6261 -> 0.3330 (deboost -0.2931, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 5 | 1 | 6 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.6261 (boost 0.2931, better) | predicted_AVG: 0.3330 -> 0.3145 (deboost -0.0185, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686527",
"player_name": "Dominic Canzone",
"position": "RF",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.188,
"predicted_3B": 0.016,
"predicted_AB": 2.69,
"predicted_AVG": 0.298,
"predicted_BB": 0.234,
"predicted_H": 0.8,
"predicted_HR": 0.19,
"predicted_OBP": 0.38,
"predicted_R": 0.391,
"predicted_RBI": 0.53,
"predicted_SLG": 0.571,
"predicted_SO": 0.562
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1704,
"predicted_3B": 0.0344,
"predicted_AB": 2.776,
"predicted_AVG": 0.312,
"predicted_BB": 0.275,
"predicted_H": 0.8668,
"predicted_HBP": 0.081,
"predicted_HR": 0.2068,
"predicted_OBP": 0.3921,
"predicted_R": 0.4205,
"predicted_RBI": 0.5591,
"predicted_SLG": 0.6087,
"predicted_SO": 0.528
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.1704,
"delta": -0.0176,
"percent_delta": -0.0936,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0344,
"delta": 0.0184,
"percent_delta": 1.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.69,
"after": 2.776,
"delta": 0.086,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.298,
"after": 0.312,
"delta": 0.014,
"percent_delta": 0.047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.234,
"after": 0.275,
"delta": 0.041,
"percent_delta": 0.1752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.8668,
"delta": 0.0668,
"percent_delta": 0.0835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.2068,
"delta": 0.0168,
"percent_delta": 0.0884,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.38,
"after": 0.3921,
"delta": 0.0121,
"percent_delta": 0.0318,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.391,
"after": 0.4205,
"delta": 0.0295,
"percent_delta": 0.0754,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.5591,
"delta": 0.0291,
"percent_delta": 0.0549,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.571,
"after": 0.6087,
"delta": 0.0377,
"percent_delta": 0.066,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.562,
"after": 0.528,
"delta": -0.034,
"percent_delta": -0.0605,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.69,
"after": 2.776,
"delta": 0.086,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 64
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1704,
"predicted_3B": 0.0344,
"predicted_AB": 2.776,
"predicted_AVG": 0.3145,
"predicted_BB": 0.2757,
"predicted_H": 0.873,
"predicted_HBP": 0.081,
"predicted_HR": 0.2087,
"predicted_OBP": 0.3764,
"predicted_R": 0.4258,
"predicted_RBI": 0.5661,
"predicted_SLG": 0.6261,
"predicted_SO": 0.5267
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1704,
"after": 0.1704,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0344,
"after": 0.0344,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.776,
"after": 2.776,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.312,
"after": 0.3145,
"delta": 0.0025,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.275,
"after": 0.2757,
"delta": 0.0007,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8668,
"after": 0.873,
"delta": 0.0062,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.081,
"after": 0.081,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2068,
"after": 0.2087,
"delta": 0.0019,
"percent_delta": 0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3921,
"after": 0.3764,
"delta": -0.0157,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4205,
"after": 0.4258,
"delta": 0.0053,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5591,
"after": 0.5661,
"delta": 0.007,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.6087,
"after": 0.6261,
"delta": 0.0174,
"percent_delta": 0.0286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.528,
"after": 0.5267,
"delta": -0.0013,
"percent_delta": -0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.6087,
"after": 0.6261,
"delta": 0.0174,
"percent_delta": 0.0286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3921,
"after": 0.3764,
"delta": -0.0157,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.78), rates preserved: AVG=0.314 HR/AB=0.075",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1704,
"after": 0.0,
"delta": -0.1704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0344,
"after": 0.0,
"delta": -0.0344,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.776,
"after": 3.0,
"delta": 0.224,
"percent_delta": 0.0807,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2757,
"after": 0.0,
"delta": -0.2757,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.873,
"after": 1.0,
"delta": 0.127,
"percent_delta": 0.1455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.081,
"after": 0.0,
"delta": -0.081,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2087,
"after": 0.0,
"delta": -0.2087,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5661,
"after": 1.0,
"delta": 0.4339,
"percent_delta": 0.7665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5267,
"after": 1.0,
"delta": 0.4733,
"percent_delta": 0.8986,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5267,
"after": 1.0,
"delta": 0.4733,
"percent_delta": 0.8986,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2757,
"after": 0.0,
"delta": -0.2757,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4258,
"after": 0.0,
"delta": -0.4258,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4258,
"after": 0.0,
"delta": -0.4258,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3145,
"after": 0.333,
"delta": 0.0185,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3764,
"after": 0.333,
"delta": -0.0434,
"percent_delta": -0.1153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.6261,
"after": 0.333,
"delta": -0.2931,
"percent_delta": -0.4681,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.3145,
"after": 0.333,
"delta": 0.0185,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.6261,
"after": 0.333,
"delta": -0.2931,
"percent_delta": -0.4681,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.3145,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3764,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.6261,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3145,
"delta": -0.0185,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3764,
"delta": 0.0434,
"percent_delta": 0.1303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.6261,
"delta": 0.2931,
"percent_delta": 0.8803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.6261,
"delta": 0.2931,
"percent_delta": 0.8803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3145,
"delta": -0.0185,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.69,
"after": 4.0,
"delta": 1.31,
"percent_delta": 0.487,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.298,
"after": 0.3145,
"delta": 0.0165,
"percent_delta": 0.0554,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.234,
"after": 0.0,
"delta": -0.234,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 1.0,
"delta": 0.81,
"percent_delta": 4.2632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.38,
"after": 0.3764,
"delta": -0.0036,
"percent_delta": -0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.391,
"after": 1.0,
"delta": 0.609,
"percent_delta": 1.5575,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 2.0,
"delta": 1.47,
"percent_delta": 2.7736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.571,
"after": 0.6261,
"delta": 0.0551,
"percent_delta": 0.0965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.562,
"after": 0.0,
"delta": -0.562,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 7,
"deboosted_metrics": 3,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.53,
"after": 2.0,
"delta": 1.47,
"percent_delta": 2.7736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.562,
"after": 0.0,
"delta": -0.562,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.188 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 2.690 | - |
| predicted_AVG | 0.298 | - |
| predicted_BB | 0.234 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.380 | - |
| predicted_R | 0.391 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.571 | - |
| predicted_SO | 0.562 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.170 | -0.018 |
| predicted_3B | 0.034 | 0.018 |
| predicted_AB | 2.776 | 0.086 |
| predicted_AVG | 0.312 | 0.014 |
| predicted_BB | 0.275 | 0.041 |
| predicted_H | 0.867 | 0.067 |
| predicted_HBP | 0.081 | - |
| predicted_HR | 0.207 | 0.017 |
| predicted_OBP | 0.392 | 0.012 |
| predicted_R | 0.420 | 0.029 |
| predicted_RBI | 0.559 | 0.029 |
| predicted_SLG | 0.609 | 0.038 |
| predicted_SO | 0.528 | -0.034 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.170 | 0.000 |
| predicted_3B | 0.034 | 0.000 |
| predicted_AB | 2.776 | 0.000 |
| predicted_AVG | 0.315 | 0.003 |
| predicted_BB | 0.276 | 0.001 |
| predicted_H | 0.873 | 0.006 |
| predicted_HBP | 0.081 | 0.000 |
| predicted_HR | 0.209 | 0.002 |
| predicted_OBP | 0.376 | -0.016 |
| predicted_R | 0.426 | 0.005 |
| predicted_RBI | 0.566 | 0.007 |
| predicted_SLG | 0.626 | 0.017 |
| predicted_SO | 0.527 | -0.001 |
AB rounded to 3 (raw=2.78), rates preserved: AVG=0.314 HR/AB=0.075
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.170 |
| predicted_3B | 0.000 | -0.034 |
| predicted_AB | 3.000 | 0.224 |
| predicted_AVG | 0.333 | 0.019 |
| predicted_BB | 0.000 | -0.276 |
| predicted_H | 1.000 | 0.127 |
| predicted_HR | 0.000 | -0.209 |
| predicted_OBP | 0.333 | -0.043 |
| predicted_R | 0.000 | -0.426 |
| predicted_RBI | 1.000 | 0.434 |
| predicted_SLG | 0.333 | -0.293 |
| predicted_SO | 1.000 | 0.473 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 7.000 | 0.000 | 1.000 | 2.000 | 5.000 | 3.000 | 3.000 | 1.000 | 0.4667 | 0.5789 | 1.0000 | 0.4667 | 0.1333 | 0.3333 | 0.2000 | 0.0667 |
| last_10 | 0.20 | 10 | - | 29.000 | 11.000 | 1.000 | 1.000 | 3.000 | 6.000 | 5.000 | 4.000 | 2.000 | 0.3793 | 0.4706 | 0.7931 | 0.3793 | 0.1035 | 0.2069 | 0.1379 | 0.0690 |
| season | 0.60 | 64 | - | 167.000 | 49.000 | 12.000 | 1.000 | 11.000 | 31.000 | 25.000 | 15.000 | 36.000 | 0.2934 | 0.3583 | 0.5749 | 0.2934 | 0.0659 | 0.1856 | 0.0898 | 0.2156 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1450 |
| predicted_3B | 0.0610 |
| predicted_AB | 2.9000 |
| predicted_AVG | 0.3321 |
| predicted_BB | 0.3340 |
| predicted_H | 0.9630 |
| predicted_HBP | 0.0810 |
| predicted_HR | 0.2310 |
| predicted_OBP | 0.4095 |
| predicted_R | 0.4630 |
| predicted_RBI | 0.6010 |
| predicted_SLG | 0.6630 |
| predicted_SO | 0.4790 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1880 | 0.1450 | 0.1704 | model_form_blend |
| predicted_3B | 0.0160 | 0.0610 | 0.0344 | model_form_blend |
| predicted_AB | 2.6900 | 2.9000 | 2.7760 | model_form_blend |
| predicted_AVG | 0.2980 | 0.3321 | 0.3120 | model_form_blend |
| predicted_BB | 0.2340 | 0.3340 | 0.2750 | model_form_blend |
| predicted_H | 0.8000 | 0.9630 | 0.8668 | model_form_blend |
| predicted_HBP | - | 0.0810 | 0.0810 | form_only |
| predicted_HR | 0.1900 | 0.2310 | 0.2068 | model_form_blend |
| predicted_OBP | 0.3800 | 0.4095 | 0.3921 | model_form_blend |
| predicted_R | 0.3910 | 0.4630 | 0.4205 | model_form_blend |
| predicted_RBI | 0.5300 | 0.6010 | 0.5591 | model_form_blend |
| predicted_SLG | 0.5710 | 0.6630 | 0.6087 | model_form_blend |
| predicted_SO | 0.5620 | 0.4790 | 0.5280 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 145 |
| Season rows before report date | 145 |
| Report year | 2026 |
| Profile rows used | 64 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.293 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 686527 |
| playerID | 686527 |
| playerName | Dominic Canzone |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.0 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.401 |
| sl_xwoba | 0.389 |
| sl_xba | 0.294 |
| sl_xslg | 0.543 |
| sl_sweet_spot_percent | 39.8 |
| sl_barrel_batted_rate | 15.8 |
| sl_hard_hit_percent | 49.6 |
| sl_exit_velocity_avg | 93.3 |
| sl_launch_angle_avg | 13.5 |
| sl_whiff_percent | 29.2 |
| sl_swing_percent | 47.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.093 | 0.000 | 0.000 | Hitting_2B | 0.115 | 0.000 | -0.115 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.260 | 4.000 | 4.000 | Hitting_AB | 3.989 | 3.000 | 0.011 | 1.000 |
| predicted_AVG | 0.203 | 0.000 | 0.250 | Hitting_AVG | 0.166 | 0.333 | -0.166 | -0.333 |
| predicted_BB | 0.465 | 1.000 | 0.000 | Hitting_BB | 0.481 | 1.000 | 0.519 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_H | 0.870 | 0.000 | 1.000 | Hitting_H | 0.661 | 1.000 | -0.661 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.164 | 0.000 | -0.164 | 0.000 |
| predicted_OBP | 0.279 | 0.200 | 0.250 | Hitting_OBP | 0.253 | 0.500 | -0.053 | -0.300 |
| predicted_R | 0.372 | 0.000 | 0.000 | Hitting_R | 0.421 | 0.000 | -0.421 | 0.000 |
| predicted_RBI | 0.450 | 0.000 | 0.000 | Hitting_RBI | 0.421 | 0.000 | -0.421 | 0.000 |
| predicted_SLG | 0.327 | 0.000 | 0.250 | Hitting_SLG | 0.318 | 0.333 | -0.318 | -0.333 |
| predicted_SO | 1.326 | 0.000 | 1.000 | Hitting_SO | 1.383 | 0.000 | -1.383 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.4650 -> 1.0000 (boost 0.5350, better) |
| Biggest Deboost | predicted_SO: 1.3260 -> 0.0000 (deboost -1.3260, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 4.2600 -> 4.0788 (deboost -0.1812, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.7969 -> 1.0000 (boost 0.2031, better) | predicted_BB: 0.4624 -> 0.0000 (deboost -0.4624, worse) | AB rounded to 4 (raw=4.26), rates preserved: AVG=0.187 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3962 -> 0.0000 (deboost -0.3962, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1954 -> 0.2500 (boost 0.0546, better) | predicted_SLG: 0.3042 -> 0.2500 (deboost -0.0542, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3042 (boost 0.0542, better) | predicted_AVG: 0.2500 -> 0.1954 (deboost -0.0546, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663728",
"player_name": "Cal Raleigh",
"position": "DH",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.093,
"predicted_3B": 0.0,
"predicted_AB": 4.26,
"predicted_AVG": 0.203,
"predicted_BB": 0.465,
"predicted_H": 0.87,
"predicted_HR": 0.13,
"predicted_OBP": 0.279,
"predicted_R": 0.372,
"predicted_RBI": 0.45,
"predicted_SLG": 0.327,
"predicted_SO": 1.326
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0848,
"predicted_3B": 0.0008,
"predicted_AB": 4.0788,
"predicted_AVG": 0.1926,
"predicted_BB": 0.4613,
"predicted_H": 0.7913,
"predicted_HBP": 0.005,
"predicted_HR": 0.1181,
"predicted_OBP": 0.2732,
"predicted_R": 0.3913,
"predicted_RBI": 0.4348,
"predicted_SLG": 0.3065,
"predicted_SO": 1.2657
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.0848,
"delta": -0.0082,
"percent_delta": -0.0882,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.26,
"after": 4.0788,
"delta": -0.1812,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.203,
"after": 0.1926,
"delta": -0.0104,
"percent_delta": -0.0512,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.465,
"after": 0.4613,
"delta": -0.0037,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.7913,
"delta": -0.0787,
"percent_delta": -0.0905,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1181,
"delta": -0.0119,
"percent_delta": -0.0915,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.279,
"after": 0.2732,
"delta": -0.0058,
"percent_delta": -0.0208,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.372,
"after": 0.3913,
"delta": 0.0193,
"percent_delta": 0.0519,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.4348,
"delta": -0.0152,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3065,
"delta": -0.0205,
"percent_delta": -0.0627,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.326,
"after": 1.2657,
"delta": -0.0603,
"percent_delta": -0.0455,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.26,
"after": 4.0788,
"delta": -0.1812,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 43
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0848,
"predicted_3B": 0.0008,
"predicted_AB": 4.0788,
"predicted_AVG": 0.1954,
"predicted_BB": 0.4624,
"predicted_H": 0.7969,
"predicted_HBP": 0.005,
"predicted_HR": 0.1192,
"predicted_OBP": 0.2773,
"predicted_R": 0.3962,
"predicted_RBI": 0.4403,
"predicted_SLG": 0.3042,
"predicted_SO": 1.2627
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0848,
"after": 0.0848,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0788,
"after": 4.0788,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1926,
"after": 0.1954,
"delta": 0.0028,
"percent_delta": 0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4613,
"after": 0.4624,
"delta": 0.0011,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7913,
"after": 0.7969,
"delta": 0.0056,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.005,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1181,
"after": 0.1192,
"delta": 0.0011,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2732,
"after": 0.2773,
"delta": 0.0041,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3913,
"after": 0.3962,
"delta": 0.0049,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4348,
"after": 0.4403,
"delta": 0.0055,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3065,
"after": 0.3042,
"delta": -0.0023,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.2657,
"after": 1.2627,
"delta": -0.003,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.26), rates preserved: AVG=0.187 HR/AB=0.028",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0848,
"after": 0.0,
"delta": -0.0848,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0788,
"after": 4.0,
"delta": -0.0788,
"percent_delta": -0.0193,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4624,
"after": 0.0,
"delta": -0.4624,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7969,
"after": 1.0,
"delta": 0.2031,
"percent_delta": 0.2549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1192,
"after": 0.0,
"delta": -0.1192,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4403,
"after": 0.0,
"delta": -0.4403,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2627,
"after": 1.0,
"delta": -0.2627,
"percent_delta": -0.208,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7969,
"after": 1.0,
"delta": 0.2031,
"percent_delta": 0.2549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4624,
"after": 0.0,
"delta": -0.4624,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3962,
"after": 0.0,
"delta": -0.3962,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3962,
"after": 0.0,
"delta": -0.3962,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1954,
"after": 0.25,
"delta": 0.0546,
"percent_delta": 0.2794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2773,
"after": 0.25,
"delta": -0.0273,
"percent_delta": -0.0984,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3042,
"after": 0.25,
"delta": -0.0542,
"percent_delta": -0.1782,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1954,
"after": 0.25,
"delta": 0.0546,
"percent_delta": 0.2794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3042,
"after": 0.25,
"delta": -0.0542,
"percent_delta": -0.1782,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1954,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2773,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3042,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1954,
"delta": -0.0546,
"percent_delta": -0.2185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2773,
"delta": 0.0273,
"percent_delta": 0.1092,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3042,
"delta": 0.0542,
"percent_delta": 0.2168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3042,
"delta": 0.0542,
"percent_delta": 0.2168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1954,
"delta": -0.0546,
"percent_delta": -0.2185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.0,
"delta": -0.093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.26,
"after": 4.0,
"delta": -0.26,
"percent_delta": -0.061,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.203,
"after": 0.1954,
"delta": -0.0076,
"percent_delta": -0.0374,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.465,
"after": 1.0,
"delta": 0.535,
"percent_delta": 1.1505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.279,
"after": 0.2773,
"delta": -0.0017,
"percent_delta": -0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.372,
"after": 0.0,
"delta": -0.372,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3042,
"delta": -0.0228,
"percent_delta": -0.0697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.326,
"after": 0.0,
"delta": -1.326,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.465,
"after": 1.0,
"delta": 0.535,
"percent_delta": 1.1505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.326,
"after": 0.0,
"delta": -1.326,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.093 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.260 | - |
| predicted_AVG | 0.203 | - |
| predicted_BB | 0.465 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.279 | - |
| predicted_R | 0.372 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.327 | - |
| predicted_SO | 1.326 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.085 | -0.008 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.079 | -0.181 |
| predicted_AVG | 0.193 | -0.010 |
| predicted_BB | 0.461 | -0.004 |
| predicted_H | 0.791 | -0.079 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.118 | -0.012 |
| predicted_OBP | 0.273 | -0.006 |
| predicted_R | 0.391 | 0.019 |
| predicted_RBI | 0.435 | -0.015 |
| predicted_SLG | 0.306 | -0.021 |
| predicted_SO | 1.266 | -0.060 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.085 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.079 | 0.000 |
| predicted_AVG | 0.195 | 0.003 |
| predicted_BB | 0.462 | 0.001 |
| predicted_H | 0.797 | 0.006 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.119 | 0.001 |
| predicted_OBP | 0.277 | 0.004 |
| predicted_R | 0.396 | 0.005 |
| predicted_RBI | 0.440 | 0.006 |
| predicted_SLG | 0.304 | -0.002 |
| predicted_SO | 1.263 | -0.003 |
AB rounded to 4 (raw=4.26), rates preserved: AVG=0.187 HR/AB=0.028
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.085 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.079 |
| predicted_AVG | 0.250 | 0.055 |
| predicted_BB | 0.000 | -0.462 |
| predicted_H | 1.000 | 0.203 |
| predicted_HR | 0.000 | -0.119 |
| predicted_OBP | 0.250 | -0.027 |
| predicted_R | 0.000 | -0.396 |
| predicted_RBI | 0.000 | -0.440 |
| predicted_SLG | 0.250 | -0.054 |
| predicted_SO | 1.000 | -0.263 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 3.000 | 4.000 | 0.2222 | 0.3333 | 0.2222 | 0.2222 | 0.0000 | 0.1111 | 0.1667 | 0.2222 |
| last_10 | 0.20 | 10 | - | 38.000 | 4.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 14.000 | 0.1053 | 0.1905 | 0.1053 | 0.1053 | 0.0000 | 0.0526 | 0.1053 | 0.3684 |
| season | 0.60 | 43 | - | 167.000 | 28.000 | 4.000 | 0.000 | 7.000 | 20.000 | 16.000 | 20.000 | 57.000 | 0.1677 | 0.2540 | 0.3174 | 0.1677 | 0.0419 | 0.1198 | 0.1198 | 0.3413 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0730 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.8180 |
| predicted_AVG | 0.1777 |
| predicted_BB | 0.4560 |
| predicted_H | 0.6780 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.1010 |
| predicted_OBP | 0.2649 |
| predicted_R | 0.4190 |
| predicted_RBI | 0.4130 |
| predicted_SLG | 0.2770 |
| predicted_SO | 1.1790 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0930 | 0.0730 | 0.0848 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 4.2600 | 3.8180 | 4.0788 | model_form_blend |
| predicted_AVG | 0.2030 | 0.1777 | 0.1926 | model_form_blend |
| predicted_BB | 0.4650 | 0.4560 | 0.4613 | model_form_blend |
| predicted_H | 0.8700 | 0.6780 | 0.7913 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.1300 | 0.1010 | 0.1181 | model_form_blend |
| predicted_OBP | 0.2790 | 0.2649 | 0.2732 | model_form_blend |
| predicted_R | 0.3720 | 0.4190 | 0.3913 | model_form_blend |
| predicted_RBI | 0.4500 | 0.4130 | 0.4348 | model_form_blend |
| predicted_SLG | 0.3270 | 0.2770 | 0.3065 | model_form_blend |
| predicted_SO | 1.3260 | 1.1790 | 1.2657 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 183 |
| Season rows before report date | 183 |
| Report year | 2026 |
| Profile rows used | 43 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.168 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 663728 |
| playerID | 663728 |
| playerName | Cal Raleigh |
| pos | C |
| started | True |
| startingPosition | C |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 30.2 |
| sl_bb_percent | 10.6 |
| sl_woba | 0.257 |
| sl_xwoba | 0.3 |
| sl_xba | 0.189 |
| sl_xslg | 0.399 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 12.5 |
| sl_hard_hit_percent | 31.3 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 23.3 |
| sl_whiff_percent | 30.5 |
| sl_swing_percent | 53.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.118 | 0.000 | 0.000 | Hitting_2B | 0.102 | 1.000 | -0.102 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.320 | 5.000 | 4.000 | Hitting_AB | 3.996 | 3.000 | 1.004 | 2.000 |
| predicted_AVG | 0.232 | 0.600 | 0.250 | Hitting_AVG | 0.266 | 0.333 | 0.334 | 0.267 |
| predicted_BB | 0.338 | 0.000 | 0.000 | Hitting_BB | 0.365 | 0.000 | -0.365 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 1.000 | 3.000 | 1.000 | Hitting_H | 1.061 | 1.000 | 1.939 | 2.000 |
| predicted_HR | 0.140 | 1.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | 0.898 | 1.000 |
| predicted_OBP | 0.300 | 0.600 | 0.250 | Hitting_OBP | 0.330 | 0.333 | 0.270 | 0.267 |
| predicted_R | 0.397 | 1.000 | 0.000 | Hitting_R | 0.410 | 0.000 | 0.590 | 1.000 |
| predicted_RBI | 0.520 | 1.000 | 0.000 | Hitting_RBI | 0.475 | 0.000 | 0.525 | 1.000 |
| predicted_SLG | 0.394 | 1.200 | 0.250 | Hitting_SLG | 0.368 | 0.667 | 0.832 | 0.533 |
| predicted_SO | 0.559 | 0.000 | 0.000 | Hitting_SO | 0.594 | 0.000 | -0.594 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 1.0000 -> 3.0000 (boost 2.0000, better) |
| Biggest Deboost | predicted_SO: 0.5590 -> 0.0000 (deboost -0.5590, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_AB: 4.3200 -> 4.1770 (deboost -0.1430, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3933 -> 0.3730 (deboost -0.0203, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 0 | 6 | 1 | 5 | - | predicted_SO: 0.5378 -> 0.0000 (deboost -0.5378, better) | AB rounded to 4 (raw=4.32), rates preserved: AVG=0.228 HR/AB=0.033 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4063 -> 0.0000 (deboost -0.4063, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2353 -> 0.2500 (boost 0.0147, better) | predicted_SLG: 0.3730 -> 0.2500 (deboost -0.1230, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 5 | 0 | 5 | 0 | predicted_H: 1.0000 -> 3.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3730 (boost 0.1230, better) | predicted_AVG: 0.2500 -> 0.2353 (deboost -0.0147, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "647304",
"player_name": "Josh Naylor",
"position": "1B",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.118,
"predicted_3B": 0.0,
"predicted_AB": 4.32,
"predicted_AVG": 0.232,
"predicted_BB": 0.338,
"predicted_H": 1.0,
"predicted_HR": 0.14,
"predicted_OBP": 0.3,
"predicted_R": 0.397,
"predicted_RBI": 0.52,
"predicted_SLG": 0.394,
"predicted_SO": 0.559
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1404,
"predicted_3B": 0.0004,
"predicted_AB": 4.177,
"predicted_AVG": 0.234,
"predicted_BB": 0.3232,
"predicted_H": 0.9759,
"predicted_HBP": 0.037,
"predicted_HR": 0.1434,
"predicted_OBP": 0.2982,
"predicted_R": 0.4012,
"predicted_RBI": 0.5124,
"predicted_SLG": 0.3933,
"predicted_SO": 0.5391
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.118,
"after": 0.1404,
"delta": 0.0224,
"percent_delta": 0.1898,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.32,
"after": 4.177,
"delta": -0.143,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.234,
"delta": 0.002,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.338,
"after": 0.3232,
"delta": -0.0148,
"percent_delta": -0.0438,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.9759,
"delta": -0.0241,
"percent_delta": -0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1434,
"delta": 0.0034,
"percent_delta": 0.0243,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2982,
"delta": -0.0018,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 0.4012,
"delta": 0.0042,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.5124,
"delta": -0.0076,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.3933,
"delta": -0.0007,
"percent_delta": -0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.559,
"after": 0.5391,
"delta": -0.0199,
"percent_delta": -0.0356,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.32,
"after": 4.177,
"delta": -0.143,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1404,
"predicted_3B": 0.0004,
"predicted_AB": 4.177,
"predicted_AVG": 0.2353,
"predicted_BB": 0.324,
"predicted_H": 0.9828,
"predicted_HBP": 0.037,
"predicted_HR": 0.1447,
"predicted_OBP": 0.2903,
"predicted_R": 0.4063,
"predicted_RBI": 0.5189,
"predicted_SLG": 0.373,
"predicted_SO": 0.5378
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1404,
"after": 0.1404,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.177,
"after": 4.177,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2353,
"delta": 0.0013,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3232,
"after": 0.324,
"delta": 0.0008,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9759,
"after": 0.9828,
"delta": 0.0069,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.037,
"after": 0.037,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1434,
"after": 0.1447,
"delta": 0.0013,
"percent_delta": 0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2982,
"after": 0.2903,
"delta": -0.0079,
"percent_delta": -0.0265,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4012,
"after": 0.4063,
"delta": 0.0051,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5124,
"after": 0.5189,
"delta": 0.0065,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3933,
"after": 0.373,
"delta": -0.0203,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5391,
"after": 0.5378,
"delta": -0.0013,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3933,
"after": 0.373,
"delta": -0.0203,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.32), rates preserved: AVG=0.228 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1404,
"after": 0.0,
"delta": -0.1404,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.177,
"after": 4.0,
"delta": -0.177,
"percent_delta": -0.0424,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.324,
"after": 0.0,
"delta": -0.324,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9828,
"after": 1.0,
"delta": 0.0172,
"percent_delta": 0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.037,
"after": 0.0,
"delta": -0.037,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1447,
"after": 0.0,
"delta": -0.1447,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5189,
"after": 0.0,
"delta": -0.5189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5378,
"after": 0.0,
"delta": -0.5378,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.5378,
"after": 0.0,
"delta": -0.5378,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4063,
"after": 0.0,
"delta": -0.4063,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4063,
"after": 0.0,
"delta": -0.4063,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2353,
"after": 0.25,
"delta": 0.0147,
"percent_delta": 0.0625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2903,
"after": 0.25,
"delta": -0.0403,
"percent_delta": -0.1388,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.373,
"after": 0.25,
"delta": -0.123,
"percent_delta": -0.3298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2353,
"after": 0.25,
"delta": 0.0147,
"percent_delta": 0.0625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.373,
"after": 0.25,
"delta": -0.123,
"percent_delta": -0.3298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2353,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2903,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.373,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2353,
"delta": -0.0147,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2903,
"delta": 0.0403,
"percent_delta": 0.1614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.373,
"delta": 0.123,
"percent_delta": 0.4921,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.373,
"delta": 0.123,
"percent_delta": 0.4921,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2353,
"delta": -0.0147,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.118,
"after": 0.0,
"delta": -0.118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.32,
"after": 5.0,
"delta": 0.68,
"percent_delta": 0.1574,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2353,
"delta": 0.0033,
"percent_delta": 0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.338,
"after": 0.0,
"delta": -0.338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 1.0,
"delta": 0.86,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2903,
"delta": -0.0097,
"percent_delta": -0.0323,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 1.0,
"delta": 0.603,
"percent_delta": 1.5189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 1.0,
"delta": 0.48,
"percent_delta": 0.9231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.373,
"delta": -0.021,
"percent_delta": -0.0533,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.559,
"after": 0.0,
"delta": -0.559,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.559,
"after": 0.0,
"delta": -0.559,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.118 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.320 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.338 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.300 | - |
| predicted_R | 0.397 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.394 | - |
| predicted_SO | 0.559 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.140 | 0.022 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.177 | -0.143 |
| predicted_AVG | 0.234 | 0.002 |
| predicted_BB | 0.323 | -0.015 |
| predicted_H | 0.976 | -0.024 |
| predicted_HBP | 0.037 | - |
| predicted_HR | 0.143 | 0.003 |
| predicted_OBP | 0.298 | -0.002 |
| predicted_R | 0.401 | 0.004 |
| predicted_RBI | 0.512 | -0.008 |
| predicted_SLG | 0.393 | -0.001 |
| predicted_SO | 0.539 | -0.020 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.140 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.177 | 0.000 |
| predicted_AVG | 0.235 | 0.001 |
| predicted_BB | 0.324 | 0.001 |
| predicted_H | 0.983 | 0.007 |
| predicted_HBP | 0.037 | 0.000 |
| predicted_HR | 0.145 | 0.001 |
| predicted_OBP | 0.290 | -0.008 |
| predicted_R | 0.406 | 0.005 |
| predicted_RBI | 0.519 | 0.007 |
| predicted_SLG | 0.373 | -0.020 |
| predicted_SO | 0.538 | -0.001 |
AB rounded to 4 (raw=4.32), rates preserved: AVG=0.228 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.140 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.177 |
| predicted_AVG | 0.250 | 0.015 |
| predicted_BB | 0.000 | -0.324 |
| predicted_H | 1.000 | 0.017 |
| predicted_HR | 0.000 | -0.145 |
| predicted_OBP | 0.250 | -0.040 |
| predicted_R | 0.000 | -0.406 |
| predicted_RBI | 0.000 | -0.519 |
| predicted_SLG | 0.250 | -0.123 |
| predicted_SO | 0.000 | -0.538 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 3.000 | 2.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 3.000 | 1.000 | 0.000 | 1.000 | 2.000 | 1.000 | 1.000 | 1.000 | 0.1500 | 0.1905 | 0.3500 | 0.1500 | 0.0500 | 0.1000 | 0.0500 | 0.0500 |
| last_10 | 0.20 | 10 | - | 41.000 | 11.000 | 3.000 | 0.000 | 2.000 | 7.000 | 6.000 | 3.000 | 5.000 | 0.2683 | 0.3333 | 0.4878 | 0.2683 | 0.0488 | 0.1707 | 0.0732 | 0.1220 |
| season | 0.60 | 68 | - | 269.000 | 68.000 | 8.000 | 0.000 | 8.000 | 32.000 | 27.000 | 23.000 | 38.000 | 0.2528 | 0.3153 | 0.3717 | 0.2528 | 0.0297 | 0.1190 | 0.0855 | 0.1413 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1710 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.9820 |
| predicted_AVG | 0.2367 |
| predicted_BB | 0.3030 |
| predicted_H | 0.9430 |
| predicted_HBP | 0.0370 |
| predicted_HR | 0.1480 |
| predicted_OBP | 0.2957 |
| predicted_R | 0.4070 |
| predicted_RBI | 0.5020 |
| predicted_SLG | 0.3924 |
| predicted_SO | 0.5120 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1180 | 0.1710 | 0.1404 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3200 | 3.9820 | 4.1770 | model_form_blend |
| predicted_AVG | 0.2320 | 0.2367 | 0.2340 | model_form_blend |
| predicted_BB | 0.3380 | 0.3030 | 0.3232 | model_form_blend |
| predicted_H | 1.0000 | 0.9430 | 0.9759 | model_form_blend |
| predicted_HBP | - | 0.0370 | 0.0370 | form_only |
| predicted_HR | 0.1400 | 0.1480 | 0.1434 | model_form_blend |
| predicted_OBP | 0.3000 | 0.2957 | 0.2982 | model_form_blend |
| predicted_R | 0.3970 | 0.4070 | 0.4012 | model_form_blend |
| predicted_RBI | 0.5200 | 0.5020 | 0.5124 | model_form_blend |
| predicted_SLG | 0.3940 | 0.3924 | 0.3933 | model_form_blend |
| predicted_SO | 0.5590 | 0.5120 | 0.5391 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 244 |
| Season rows before report date | 244 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 3 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.253 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260614_SEA@WAS |
| game_type | full |
| mlbID | 647304 |
| playerID | 647304 |
| playerName | Josh Naylor |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-14 |
| sl_k_percent | 12.8 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.304 |
| sl_xwoba | 0.323 |
| sl_xba | 0.273 |
| sl_xslg | 0.404 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 5.2 |
| sl_hard_hit_percent | 37.9 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | 14.5 |
| sl_whiff_percent | 19.0 |
| sl_swing_percent | 52.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.088 | 0.000 | 0.000 | Hitting_2B | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.970 | 3.000 | 4.000 | Hitting_AB | 3.685 | 4.000 | -0.685 | -1.000 |
| predicted_AVG | 0.251 | 0.000 | 0.250 | Hitting_AVG | 0.231 | 0.000 | -0.231 | 0.000 |
| predicted_BB | 0.632 | 2.000 | 1.000 | Hitting_BB | 0.657 | 0.000 | 1.343 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.047 | 0.000 | -0.047 | 0.000 |
| predicted_H | 0.990 | 0.000 | 1.000 | Hitting_H | 0.850 | 0.000 | -0.850 | 0.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.169 | 0.000 | -0.169 | 0.000 |
| predicted_OBP | 0.383 | 0.400 | 0.400 | Hitting_OBP | 0.356 | 0.000 | 0.044 | 0.400 |
| predicted_R | 0.544 | 0.000 | 1.000 | Hitting_R | 0.596 | 0.000 | -0.596 | 0.000 |
| predicted_RBI | 0.450 | 0.000 | 0.000 | Hitting_RBI | 0.446 | 0.000 | -0.446 | 0.000 |
| predicted_SLG | 0.455 | 0.000 | 0.250 | Hitting_SLG | 0.394 | 0.000 | -0.394 | 0.000 |
| predicted_SO | 0.807 | 0.000 | 1.000 | Hitting_SO | 0.789 | 2.000 | -0.789 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.6320 -> 2.0000 (boost 1.3680, better) |
| Biggest Deboost | predicted_H: 0.9900 -> 0.0000 (deboost -0.9900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_SLG: 0.4550 -> 0.4730 (boost 0.0180, better) | predicted_AB: 3.9700 -> 3.7144 (deboost -0.2556, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4730 -> 0.4495 (deboost -0.0235, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_BB: 0.6641 -> 1.0000 (boost 0.3359, better) | predicted_RBI: 0.4227 -> 0.0000 (deboost -0.4227, worse) | AB rounded to 4 (raw=3.97), rates preserved: AVG=0.246 HR/AB=0.049 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5500 -> 1.0000 (boost 0.4500, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3745 -> 0.4000 (boost 0.0255, better) | predicted_SLG: 0.4495 -> 0.2500 (deboost -0.1995, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 1 | 4 | 2 | 3 | predicted_BB: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4495 (boost 0.1995, better) | predicted_OBP: 0.4000 -> 0.3745 (deboost -0.0255, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641487",
"player_name": "J.P. Crawford",
"position": "3B",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.088,
"predicted_3B": 0.0,
"predicted_AB": 3.97,
"predicted_AVG": 0.251,
"predicted_BB": 0.632,
"predicted_H": 0.99,
"predicted_HR": 0.19,
"predicted_OBP": 0.383,
"predicted_R": 0.544,
"predicted_RBI": 0.45,
"predicted_SLG": 0.455,
"predicted_SO": 0.807
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1043,
"predicted_3B": 0.0004,
"predicted_AB": 3.7144,
"predicted_AVG": 0.2629,
"predicted_BB": 0.6625,
"predicted_H": 0.9687,
"predicted_HBP": 0.112,
"predicted_HR": 0.1946,
"predicted_OBP": 0.3954,
"predicted_R": 0.5432,
"predicted_RBI": 0.4174,
"predicted_SLG": 0.473,
"predicted_SO": 0.8421
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.088,
"after": 0.1043,
"delta": 0.0163,
"percent_delta": 0.1852,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.97,
"after": 3.7144,
"delta": -0.2556,
"percent_delta": -0.0644,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2629,
"delta": 0.0119,
"percent_delta": 0.0474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.632,
"after": 0.6625,
"delta": 0.0305,
"percent_delta": 0.0483,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9687,
"delta": -0.0213,
"percent_delta": -0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.1946,
"delta": 0.0046,
"percent_delta": 0.0242,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.383,
"after": 0.3954,
"delta": 0.0124,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.544,
"after": 0.5432,
"delta": -0.0008,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.4174,
"delta": -0.0326,
"percent_delta": -0.0724,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.473,
"delta": 0.018,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.807,
"after": 0.8421,
"delta": 0.0351,
"percent_delta": 0.0435,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.473,
"delta": 0.018,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.97,
"after": 3.7144,
"delta": -0.2556,
"percent_delta": -0.0644,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 57
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1043,
"predicted_3B": 0.0004,
"predicted_AB": 3.7144,
"predicted_AVG": 0.2626,
"predicted_BB": 0.6641,
"predicted_H": 0.9756,
"predicted_HBP": 0.112,
"predicted_HR": 0.1964,
"predicted_OBP": 0.3745,
"predicted_R": 0.55,
"predicted_RBI": 0.4227,
"predicted_SLG": 0.4495,
"predicted_SO": 0.8401
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1043,
"after": 0.1043,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7144,
"after": 3.7144,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2629,
"after": 0.2626,
"delta": -0.0003,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6625,
"after": 0.6641,
"delta": 0.0016,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9687,
"after": 0.9756,
"delta": 0.0069,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.112,
"after": 0.112,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1946,
"after": 0.1964,
"delta": 0.0018,
"percent_delta": 0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3954,
"after": 0.3745,
"delta": -0.0209,
"percent_delta": -0.0529,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5432,
"after": 0.55,
"delta": 0.0068,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4174,
"after": 0.4227,
"delta": 0.0053,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4495,
"delta": -0.0235,
"percent_delta": -0.0497,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8421,
"after": 0.8401,
"delta": -0.002,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4495,
"delta": -0.0235,
"percent_delta": -0.0497,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.97), rates preserved: AVG=0.246 HR/AB=0.049",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1043,
"after": 0.0,
"delta": -0.1043,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7144,
"after": 4.0,
"delta": 0.2856,
"percent_delta": 0.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6641,
"after": 1.0,
"delta": 0.3359,
"percent_delta": 0.5058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9756,
"after": 1.0,
"delta": 0.0244,
"percent_delta": 0.025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.112,
"after": 0.0,
"delta": -0.112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1964,
"after": 0.0,
"delta": -0.1964,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4227,
"after": 0.0,
"delta": -0.4227,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8401,
"after": 1.0,
"delta": 0.1599,
"percent_delta": 0.1903,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6641,
"after": 1.0,
"delta": 0.3359,
"percent_delta": 0.5058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4227,
"after": 0.0,
"delta": -0.4227,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 1.0,
"delta": 0.45,
"percent_delta": 0.8182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.55,
"after": 1.0,
"delta": 0.45,
"percent_delta": 0.8182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2626,
"after": 0.25,
"delta": -0.0126,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3745,
"after": 0.4,
"delta": 0.0255,
"percent_delta": 0.0681,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4495,
"after": 0.25,
"delta": -0.1995,
"percent_delta": -0.4438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3745,
"after": 0.4,
"delta": 0.0255,
"percent_delta": 0.0681,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4495,
"after": 0.25,
"delta": -0.1995,
"percent_delta": -0.4438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2626,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3745,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4495,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2626,
"delta": 0.0126,
"percent_delta": 0.0506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3745,
"delta": -0.0255,
"percent_delta": -0.0638,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4495,
"delta": 0.1995,
"percent_delta": 0.7981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4495,
"delta": 0.1995,
"percent_delta": 0.7981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3745,
"delta": -0.0255,
"percent_delta": -0.0638,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.088,
"after": 0.0,
"delta": -0.088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.97,
"after": 3.0,
"delta": -0.97,
"percent_delta": -0.2443,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2626,
"delta": 0.0116,
"percent_delta": 0.0462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.632,
"after": 2.0,
"delta": 1.368,
"percent_delta": 2.1646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.383,
"after": 0.3745,
"delta": -0.0085,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.544,
"after": 0.0,
"delta": -0.544,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.4495,
"delta": -0.0055,
"percent_delta": -0.0121,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.807,
"after": 0.0,
"delta": -0.807,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.632,
"after": 2.0,
"delta": 1.368,
"percent_delta": 2.1646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.088 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.970 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.632 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.383 | - |
| predicted_R | 0.544 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.455 | - |
| predicted_SO | 0.807 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.104 | 0.016 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.714 | -0.256 |
| predicted_AVG | 0.263 | 0.012 |
| predicted_BB | 0.662 | 0.030 |
| predicted_H | 0.969 | -0.021 |
| predicted_HBP | 0.112 | - |
| predicted_HR | 0.195 | 0.005 |
| predicted_OBP | 0.395 | 0.012 |
| predicted_R | 0.543 | -0.001 |
| predicted_RBI | 0.417 | -0.033 |
| predicted_SLG | 0.473 | 0.018 |
| predicted_SO | 0.842 | 0.035 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.104 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.714 | 0.000 |
| predicted_AVG | 0.263 | -0.000 |
| predicted_BB | 0.664 | 0.002 |
| predicted_H | 0.976 | 0.007 |
| predicted_HBP | 0.112 | 0.000 |
| predicted_HR | 0.196 | 0.002 |
| predicted_OBP | 0.374 | -0.021 |
| predicted_R | 0.550 | 0.007 |
| predicted_RBI | 0.423 | 0.005 |
| predicted_SLG | 0.450 | -0.023 |
| predicted_SO | 0.840 | -0.002 |
AB rounded to 4 (raw=3.97), rates preserved: AVG=0.246 HR/AB=0.049
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.104 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.286 |
| predicted_AVG | 0.250 | -0.013 |
| predicted_BB | 1.000 | 0.336 |
| predicted_H | 1.000 | 0.024 |
| predicted_HR | 0.000 | -0.196 |
| predicted_OBP | 0.400 | 0.026 |
| predicted_R | 1.000 | 0.450 |
| predicted_RBI | 0.000 | -0.423 |
| predicted_SLG | 0.250 | -0.200 |
| predicted_SO | 1.000 | 0.160 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 2.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 5.000 | 1.000 | 0.000 | 1.000 | 1.000 | 2.000 | 5.000 | 4.000 | 0.3846 | 0.5789 | 0.6923 | 0.3846 | 0.0769 | 0.0769 | 0.3846 | 0.3077 |
| last_10 | 0.20 | 10 | - | 34.000 | 12.000 | 1.000 | 0.000 | 3.000 | 4.000 | 7.000 | 7.000 | 12.000 | 0.3529 | 0.4762 | 0.6471 | 0.3529 | 0.0882 | 0.1177 | 0.2059 | 0.3529 |
| season | 0.60 | 57 | - | 199.000 | 45.000 | 5.000 | 0.000 | 10.000 | 23.000 | 31.000 | 36.000 | 46.000 | 0.2261 | 0.3568 | 0.4020 | 0.2261 | 0.0503 | 0.1156 | 0.1809 | 0.2312 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1270 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.3580 |
| predicted_AVG | 0.2795 |
| predicted_BB | 0.7050 |
| predicted_H | 0.9390 |
| predicted_HBP | 0.1120 |
| predicted_HR | 0.2010 |
| predicted_OBP | 0.4127 |
| predicted_R | 0.5420 |
| predicted_RBI | 0.3720 |
| predicted_SLG | 0.4981 |
| predicted_SO | 0.8910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0880 | 0.1270 | 0.1043 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9700 | 3.3580 | 3.7144 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2795 | 0.2629 | model_form_blend |
| predicted_BB | 0.6320 | 0.7050 | 0.6625 | model_form_blend |
| predicted_H | 0.9900 | 0.9390 | 0.9687 | model_form_blend |
| predicted_HBP | - | 0.1120 | 0.1120 | form_only |
| predicted_HR | 0.1900 | 0.2010 | 0.1946 | model_form_blend |
| predicted_OBP | 0.3830 | 0.4127 | 0.3954 | model_form_blend |
| predicted_R | 0.5440 | 0.5420 | 0.5432 | model_form_blend |
| predicted_RBI | 0.4500 | 0.3720 | 0.4174 | model_form_blend |
| predicted_SLG | 0.4550 | 0.4981 | 0.4730 | model_form_blend |
| predicted_SO | 0.8070 | 0.8910 | 0.8421 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 213 |
| Season rows before report date | 213 |
| Report year | 2026 |
| Profile rows used | 57 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 641487 |
| playerID | 641487 |
| playerName | J.P. Crawford |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.1 |
| sl_bb_percent | 14.9 |
| sl_woba | 0.343 |
| sl_xwoba | 0.357 |
| sl_xba | 0.254 |
| sl_xslg | 0.416 |
| sl_sweet_spot_percent | 39.6 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 36.4 |
| sl_exit_velocity_avg | 88.4 |
| sl_launch_angle_avg | 12.4 |
| sl_whiff_percent | 17.3 |
| sl_swing_percent | 37.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.065 | 0.000 | 0.000 | Hitting_2B | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.903 | 3.000 | 3.000 | Hitting_AB | 2.894 | 4.000 | 0.106 | -1.000 |
| predicted_AVG | 0.253 | 0.000 | 0.333 | Hitting_AVG | 0.217 | 0.500 | -0.217 | -0.500 |
| predicted_BB | 0.516 | 1.000 | 0.000 | Hitting_BB | 0.649 | 0.000 | 0.351 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.640 | 0.000 | 1.000 | Hitting_H | 0.628 | 2.000 | -0.628 | -2.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.096 | 0.000 | -0.096 | 0.000 |
| predicted_OBP | 0.311 | 0.250 | 0.333 | Hitting_OBP | 0.360 | 0.500 | -0.110 | -0.250 |
| predicted_R | 0.452 | 0.000 | 0.000 | Hitting_R | 0.553 | 1.000 | -0.553 | -1.000 |
| predicted_RBI | 0.430 | 0.000 | 0.000 | Hitting_RBI | 0.309 | 1.000 | -0.309 | -1.000 |
| predicted_SLG | 0.377 | 0.000 | 0.333 | Hitting_SLG | 0.338 | 0.500 | -0.338 | -0.500 |
| predicted_SO | 1.032 | 1.000 | 1.000 | Hitting_SO | 0.968 | 2.000 | 0.032 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.5160 -> 1.0000 (boost 0.4840, better) |
| Biggest Deboost | predicted_H: 0.6400 -> 0.0000 (deboost -0.6400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AB: 2.9030 -> 3.0564 (boost 0.1534, better) | predicted_AVG: 0.2530 -> 0.2421 (deboost -0.0109, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3109 -> 0.3280 (boost 0.0171, better) | predicted_AVG: 0.2421 -> 0.2238 (deboost -0.0183, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 1 | 5 | predicted_H: 0.6841 -> 1.0000 (boost 0.3159, better) | predicted_RBI: 0.4815 -> 0.0000 (deboost -0.4815, worse) | AB rounded to 3 (raw=3.06), rates preserved: AVG=0.224 HR/AB=0.039 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4636 -> 0.0000 (deboost -0.4636, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2238 -> 0.3330 (boost 0.1092, better) | predicted_SLG: 0.3669 -> 0.3330 (deboost -0.0339, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3330 -> 0.3669 (boost 0.0339, better) | predicted_AVG: 0.3330 -> 0.2238 (deboost -0.1092, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641598",
"player_name": "Mitch Garver",
"position": "C",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.065,
"predicted_3B": 0.0,
"predicted_AB": 2.903,
"predicted_AVG": 0.253,
"predicted_BB": 0.516,
"predicted_H": 0.64,
"predicted_HR": 0.11,
"predicted_OBP": 0.311,
"predicted_R": 0.452,
"predicted_RBI": 0.43,
"predicted_SLG": 0.377,
"predicted_SO": 1.032
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0727,
"predicted_3B": 0.0012,
"predicted_AB": 3.0564,
"predicted_AVG": 0.2421,
"predicted_BB": 0.4728,
"predicted_H": 0.6793,
"predicted_HBP": 0.007,
"predicted_HR": 0.1196,
"predicted_OBP": 0.3109,
"predicted_R": 0.4578,
"predicted_RBI": 0.4755,
"predicted_SLG": 0.3762,
"predicted_SO": 1.032
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.065,
"after": 0.0727,
"delta": 0.0077,
"percent_delta": 0.1185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0012,
"delta": 0.0012,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.903,
"after": 3.0564,
"delta": 0.1534,
"percent_delta": 0.0528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2421,
"delta": -0.0109,
"percent_delta": -0.0431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.516,
"after": 0.4728,
"delta": -0.0432,
"percent_delta": -0.0837,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.6793,
"delta": 0.0393,
"percent_delta": 0.0614,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1196,
"delta": 0.0096,
"percent_delta": 0.0873,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.3109,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.452,
"after": 0.4578,
"delta": 0.0058,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4755,
"delta": 0.0455,
"percent_delta": 0.1058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.377,
"after": 0.3762,
"delta": -0.0008,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.032,
"after": 1.032,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.903,
"after": 3.0564,
"delta": 0.1534,
"percent_delta": 0.0528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2421,
"delta": -0.0109,
"percent_delta": -0.0431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 31
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0727,
"predicted_3B": 0.0012,
"predicted_AB": 3.0564,
"predicted_AVG": 0.2238,
"predicted_BB": 0.4739,
"predicted_H": 0.6841,
"predicted_HBP": 0.007,
"predicted_HR": 0.1207,
"predicted_OBP": 0.328,
"predicted_R": 0.4636,
"predicted_RBI": 0.4815,
"predicted_SLG": 0.3669,
"predicted_SO": 1.0295
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0727,
"after": 0.0727,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0564,
"after": 3.0564,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2421,
"after": 0.2238,
"delta": -0.0183,
"percent_delta": -0.0756,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4728,
"after": 0.4739,
"delta": 0.0011,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6793,
"after": 0.6841,
"delta": 0.0048,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.007,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1196,
"after": 0.1207,
"delta": 0.0011,
"percent_delta": 0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3109,
"after": 0.328,
"delta": 0.0171,
"percent_delta": 0.055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4578,
"after": 0.4636,
"delta": 0.0058,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4755,
"after": 0.4815,
"delta": 0.006,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3762,
"after": 0.3669,
"delta": -0.0093,
"percent_delta": -0.0247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.032,
"after": 1.0295,
"delta": -0.0025,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3109,
"after": 0.328,
"delta": 0.0171,
"percent_delta": 0.055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2421,
"after": 0.2238,
"delta": -0.0183,
"percent_delta": -0.0756,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.06), rates preserved: AVG=0.224 HR/AB=0.039",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0727,
"after": 0.0,
"delta": -0.0727,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0,
"delta": -0.0012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0564,
"after": 3.0,
"delta": -0.0564,
"percent_delta": -0.0185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4739,
"after": 0.0,
"delta": -0.4739,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6841,
"after": 1.0,
"delta": 0.3159,
"percent_delta": 0.4618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.0,
"delta": -0.007,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1207,
"after": 0.0,
"delta": -0.1207,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4815,
"after": 0.0,
"delta": -0.4815,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0295,
"after": 1.0,
"delta": -0.0295,
"percent_delta": -0.0287,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6841,
"after": 1.0,
"delta": 0.3159,
"percent_delta": 0.4618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4815,
"after": 0.0,
"delta": -0.4815,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4636,
"after": 0.0,
"delta": -0.4636,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4636,
"after": 0.0,
"delta": -0.4636,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2238,
"after": 0.333,
"delta": 0.1092,
"percent_delta": 0.4879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.333,
"delta": 0.005,
"percent_delta": 0.0152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3669,
"after": 0.333,
"delta": -0.0339,
"percent_delta": -0.0924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2238,
"after": 0.333,
"delta": 0.1092,
"percent_delta": 0.4879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3669,
"after": 0.333,
"delta": -0.0339,
"percent_delta": -0.0924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2238,
"predicted_BB": 1.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.328,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3669,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2238,
"delta": -0.1092,
"percent_delta": -0.3278,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.328,
"delta": -0.005,
"percent_delta": -0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3669,
"delta": 0.0339,
"percent_delta": 0.1017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3669,
"delta": 0.0339,
"percent_delta": 0.1017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2238,
"delta": -0.1092,
"percent_delta": -0.3278,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.065,
"after": 0.0,
"delta": -0.065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.903,
"after": 3.0,
"delta": 0.097,
"percent_delta": 0.0334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2238,
"delta": -0.0292,
"percent_delta": -0.1154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.516,
"after": 1.0,
"delta": 0.484,
"percent_delta": 0.938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.328,
"delta": 0.017,
"percent_delta": 0.0547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.452,
"after": 0.0,
"delta": -0.452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.377,
"after": 0.3669,
"delta": -0.0101,
"percent_delta": -0.0268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.032,
"after": 1.0,
"delta": -0.032,
"percent_delta": -0.031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.516,
"after": 1.0,
"delta": 0.484,
"percent_delta": 0.938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.065 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.903 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.516 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.311 | - |
| predicted_R | 0.452 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.377 | - |
| predicted_SO | 1.032 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.073 | 0.008 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.056 | 0.153 |
| predicted_AVG | 0.242 | -0.011 |
| predicted_BB | 0.473 | -0.043 |
| predicted_H | 0.679 | 0.039 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.120 | 0.010 |
| predicted_OBP | 0.311 | -0.000 |
| predicted_R | 0.458 | 0.006 |
| predicted_RBI | 0.475 | 0.045 |
| predicted_SLG | 0.376 | -0.001 |
| predicted_SO | 1.032 | 0.000 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.073 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.056 | 0.000 |
| predicted_AVG | 0.224 | -0.018 |
| predicted_BB | 0.474 | 0.001 |
| predicted_H | 0.684 | 0.005 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.121 | 0.001 |
| predicted_OBP | 0.328 | 0.017 |
| predicted_R | 0.464 | 0.006 |
| predicted_RBI | 0.481 | 0.006 |
| predicted_SLG | 0.367 | -0.009 |
| predicted_SO | 1.030 | -0.002 |
AB rounded to 3 (raw=3.06), rates preserved: AVG=0.224 HR/AB=0.039
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.073 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.056 |
| predicted_AVG | 0.333 | 0.109 |
| predicted_BB | 0.000 | -0.474 |
| predicted_H | 1.000 | 0.316 |
| predicted_HR | 0.000 | -0.121 |
| predicted_OBP | 0.333 | 0.005 |
| predicted_R | 0.000 | -0.464 |
| predicted_RBI | 0.000 | -0.481 |
| predicted_SLG | 0.333 | -0.034 |
| predicted_SO | 1.000 | -0.030 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 1.000 | 5.000 | 2.000 | 1.000 | 6.000 | 0.2222 | 0.2632 | 0.3889 | 0.2222 | 0.0556 | 0.2778 | 0.0556 | 0.3333 |
| last_10 | 0.20 | 10 | - | 34.000 | 9.000 | 1.000 | 0.000 | 2.000 | 8.000 | 5.000 | 3.000 | 10.000 | 0.2647 | 0.3243 | 0.4706 | 0.2647 | 0.0588 | 0.2353 | 0.0882 | 0.2941 |
| season | 0.60 | 31 | - | 90.000 | 18.000 | 2.000 | 0.000 | 3.000 | 11.000 | 14.000 | 16.000 | 32.000 | 0.2000 | 0.3208 | 0.3222 | 0.2000 | 0.0333 | 0.1222 | 0.1778 | 0.3556 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0850 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.3010 |
| predicted_AVG | 0.2247 |
| predicted_BB | 0.4040 |
| predicted_H | 0.7420 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.1350 |
| predicted_OBP | 0.3107 |
| predicted_R | 0.4670 |
| predicted_RBI | 0.5480 |
| predicted_SLG | 0.3750 |
| predicted_SO | 1.0320 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0650 | 0.0850 | 0.0727 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 2.9030 | 3.3010 | 3.0564 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2247 | 0.2421 | model_form_blend |
| predicted_BB | 0.5160 | 0.4040 | 0.4728 | model_form_blend |
| predicted_H | 0.6400 | 0.7420 | 0.6793 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1100 | 0.1350 | 0.1196 | model_form_blend |
| predicted_OBP | 0.3110 | 0.3107 | 0.3109 | model_form_blend |
| predicted_R | 0.4520 | 0.4670 | 0.4578 | model_form_blend |
| predicted_RBI | 0.4300 | 0.5480 | 0.4755 | model_form_blend |
| predicted_SLG | 0.3770 | 0.3750 | 0.3762 | model_form_blend |
| predicted_SO | 1.0320 | 1.0320 | 1.0320 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 94 |
| Season rows before report date | 94 |
| Report year | 2026 |
| Profile rows used | 31 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.2 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260613_SEA@WAS |
| game_type | full |
| mlbID | 641598 |
| playerID | 641598 |
| playerName | Mitch Garver |
| pos | C |
| started | True |
| startingPosition | C |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-13 |
| sl_k_percent | 29.9 |
| sl_bb_percent | 15.9 |
| sl_woba | 0.301 |
| sl_xwoba | 0.301 |
| sl_xba | 0.192 |
| sl_xslg | 0.336 |
| sl_sweet_spot_percent | 22.4 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 48.3 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 18.3 |
| sl_whiff_percent | 34.4 |
| sl_swing_percent | 42.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.133 | 0.000 | 0.000 | Hitting_2B | 0.161 | 0.000 | -0.161 | 0.000 |
| predicted_3B | 0.013 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.820 | 3.000 | 4.000 | Hitting_AB | 3.583 | 4.000 | -0.583 | -1.000 |
| predicted_AVG | 0.248 | 0.333 | 0.250 | Hitting_AVG | 0.247 | 0.250 | 0.087 | 0.083 |
| predicted_BB | 0.267 | 1.000 | 0.000 | Hitting_BB | 0.331 | 0.000 | 0.669 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.041 | 0.000 | -0.041 | 0.000 |
| predicted_H | 0.950 | 1.000 | 1.000 | Hitting_H | 0.884 | 1.000 | 0.116 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.066 | 1.000 | -0.066 | -1.000 |
| predicted_OBP | 0.306 | 0.500 | 0.250 | Hitting_OBP | 0.321 | 0.250 | 0.179 | 0.250 |
| predicted_R | 0.427 | 0.000 | 0.000 | Hitting_R | 0.483 | 1.000 | -0.483 | -1.000 |
| predicted_RBI | 0.410 | 0.000 | 0.000 | Hitting_RBI | 0.467 | 1.000 | -0.467 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_SLG | 0.393 | 0.333 | 0.250 | Hitting_SLG | 0.356 | 1.000 | -0.023 | -0.667 |
| predicted_SO | 0.747 | 1.000 | 1.000 | Hitting_SO | 0.831 | 0.000 | 0.169 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.2670 -> 1.0000 (boost 0.7330, better) |
| Biggest Deboost | predicted_AB: 3.8200 -> 3.0000 (deboost -0.8200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_AB: 3.8200 -> 3.8772 (boost 0.0572, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3052 -> 0.2996 (deboost -0.0056, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.7114 -> 1.0000 (boost 0.2886, worse) | predicted_RBI: 0.4062 -> 0.0000 (deboost -0.4062, worse) | AB rounded to 4 (raw=3.88), rates preserved: AVG=0.257 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4538 -> 0.0000 (deboost -0.4538, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3887 -> 0.2500 (deboost -0.1387, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.3887 (boost 0.1387, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "702284",
"player_name": "Cole Young",
"position": "2B",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.133,
"predicted_3B": 0.013,
"predicted_AB": 3.82,
"predicted_AVG": 0.248,
"predicted_BB": 0.267,
"predicted_H": 0.95,
"predicted_HR": 0.12,
"predicted_OBP": 0.306,
"predicted_R": 0.427,
"predicted_RBI": 0.41,
"predicted_SLG": 0.393,
"predicted_SO": 0.747
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1178,
"predicted_3B": 0.0113,
"predicted_AB": 3.8772,
"predicted_AVG": 0.2551,
"predicted_BB": 0.2327,
"predicted_H": 0.9911,
"predicted_HBP": 0.051,
"predicted_HR": 0.1217,
"predicted_OBP": 0.3052,
"predicted_R": 0.4482,
"predicted_RBI": 0.4011,
"predicted_SLG": 0.391,
"predicted_SO": 0.7131
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.133,
"after": 0.1178,
"delta": -0.0152,
"percent_delta": -0.1143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.013,
"after": 0.0113,
"delta": -0.0017,
"percent_delta": -0.1308,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.82,
"after": 3.8772,
"delta": 0.0572,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2551,
"delta": 0.0071,
"percent_delta": 0.0286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.267,
"after": 0.2327,
"delta": -0.0343,
"percent_delta": -0.1285,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 0.9911,
"delta": 0.0411,
"percent_delta": 0.0433,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1217,
"delta": 0.0017,
"percent_delta": 0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.3052,
"delta": -0.0008,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.427,
"after": 0.4482,
"delta": 0.0212,
"percent_delta": 0.0496,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.4011,
"delta": -0.0089,
"percent_delta": -0.0217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.393,
"after": 0.391,
"delta": -0.002,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.747,
"after": 0.7131,
"delta": -0.0339,
"percent_delta": -0.0454,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.82,
"after": 3.8772,
"delta": 0.0572,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 75
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1178,
"predicted_3B": 0.0113,
"predicted_AB": 3.8772,
"predicted_AVG": 0.2574,
"predicted_BB": 0.2333,
"predicted_H": 0.9981,
"predicted_HBP": 0.051,
"predicted_HR": 0.1228,
"predicted_OBP": 0.2996,
"predicted_R": 0.4538,
"predicted_RBI": 0.4062,
"predicted_SLG": 0.3887,
"predicted_SO": 0.7114
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1178,
"after": 0.1178,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0113,
"after": 0.0113,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8772,
"after": 3.8772,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2551,
"after": 0.2574,
"delta": 0.0023,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2327,
"after": 0.2333,
"delta": 0.0006,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9911,
"after": 0.9981,
"delta": 0.007,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.051,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1217,
"after": 0.1228,
"delta": 0.0011,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3052,
"after": 0.2996,
"delta": -0.0056,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4482,
"after": 0.4538,
"delta": 0.0056,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4011,
"after": 0.4062,
"delta": 0.0051,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.391,
"after": 0.3887,
"delta": -0.0023,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.7131,
"after": 0.7114,
"delta": -0.0017,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3052,
"after": 0.2996,
"delta": -0.0056,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.88), rates preserved: AVG=0.257 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1178,
"after": 0.0,
"delta": -0.1178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0113,
"after": 0.0,
"delta": -0.0113,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8772,
"after": 4.0,
"delta": 0.1228,
"percent_delta": 0.0317,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2333,
"after": 0.0,
"delta": -0.2333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9981,
"after": 1.0,
"delta": 0.0019,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1228,
"after": 0.0,
"delta": -0.1228,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4062,
"after": 0.0,
"delta": -0.4062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7114,
"after": 1.0,
"delta": 0.2886,
"percent_delta": 0.4057,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7114,
"after": 1.0,
"delta": 0.2886,
"percent_delta": 0.4057,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4062,
"after": 0.0,
"delta": -0.4062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4538,
"after": 0.0,
"delta": -0.4538,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4538,
"after": 0.0,
"delta": -0.4538,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2574,
"after": 0.25,
"delta": -0.0074,
"percent_delta": -0.0287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2996,
"after": 0.25,
"delta": -0.0496,
"percent_delta": -0.1656,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3887,
"after": 0.25,
"delta": -0.1387,
"percent_delta": -0.3568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3887,
"after": 0.25,
"delta": -0.1387,
"percent_delta": -0.3568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2574,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2996,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3887,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2574,
"delta": 0.0074,
"percent_delta": 0.0298,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2996,
"delta": 0.0496,
"percent_delta": 0.1983,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3887,
"delta": 0.1387,
"percent_delta": 0.5547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3887,
"delta": 0.1387,
"percent_delta": 0.5547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.133,
"after": 0.0,
"delta": -0.133,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.013,
"after": 0.0,
"delta": -0.013,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.82,
"after": 3.0,
"delta": -0.82,
"percent_delta": -0.2147,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2574,
"delta": 0.0094,
"percent_delta": 0.0379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.267,
"after": 1.0,
"delta": 0.733,
"percent_delta": 2.7453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.0,
"delta": 0.05,
"percent_delta": 0.0526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.2996,
"delta": -0.0064,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.427,
"after": 0.0,
"delta": -0.427,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.393,
"after": 0.3887,
"delta": -0.0043,
"percent_delta": -0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.747,
"after": 1.0,
"delta": 0.253,
"percent_delta": 0.3387,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.267,
"after": 1.0,
"delta": 0.733,
"percent_delta": 2.7453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.82,
"after": 3.0,
"delta": -0.82,
"percent_delta": -0.2147,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.133 | - |
| predicted_3B | 0.013 | - |
| predicted_AB | 3.820 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.267 | - |
| predicted_H | 0.950 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.306 | - |
| predicted_R | 0.427 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.393 | - |
| predicted_SO | 0.747 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.118 | -0.015 |
| predicted_3B | 0.011 | -0.002 |
| predicted_AB | 3.877 | 0.057 |
| predicted_AVG | 0.255 | 0.007 |
| predicted_BB | 0.233 | -0.034 |
| predicted_H | 0.991 | 0.041 |
| predicted_HBP | 0.051 | - |
| predicted_HR | 0.122 | 0.002 |
| predicted_OBP | 0.305 | -0.001 |
| predicted_R | 0.448 | 0.021 |
| predicted_RBI | 0.401 | -0.009 |
| predicted_SLG | 0.391 | -0.002 |
| predicted_SO | 0.713 | -0.034 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.118 | 0.000 |
| predicted_3B | 0.011 | 0.000 |
| predicted_AB | 3.877 | 0.000 |
| predicted_AVG | 0.257 | 0.002 |
| predicted_BB | 0.233 | 0.001 |
| predicted_H | 0.998 | 0.007 |
| predicted_HBP | 0.051 | 0.000 |
| predicted_HR | 0.123 | 0.001 |
| predicted_OBP | 0.300 | -0.006 |
| predicted_R | 0.454 | 0.006 |
| predicted_RBI | 0.406 | 0.005 |
| predicted_SLG | 0.389 | -0.002 |
| predicted_SO | 0.711 | -0.002 |
AB rounded to 4 (raw=3.88), rates preserved: AVG=0.257 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.118 |
| predicted_3B | 0.000 | -0.011 |
| predicted_AB | 4.000 | 0.123 |
| predicted_AVG | 0.250 | -0.007 |
| predicted_BB | 0.000 | -0.233 |
| predicted_H | 1.000 | 0.002 |
| predicted_HR | 0.000 | -0.123 |
| predicted_OBP | 0.250 | -0.050 |
| predicted_R | 0.000 | -0.454 |
| predicted_RBI | 0.000 | -0.406 |
| predicted_SLG | 0.250 | -0.139 |
| predicted_SO | 1.000 | 0.289 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 6.000 | 0.000 | 0.000 | 1.000 | 1.000 | 3.000 | 0.000 | 2.000 | 0.2727 | 0.2727 | 0.4091 | 0.2727 | 0.0454 | 0.0454 | 0.0000 | 0.0909 |
| last_10 | 0.20 | 10 | - | 45.000 | 13.000 | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 0.000 | 5.000 | 0.2889 | 0.2889 | 0.4222 | 0.2889 | 0.0444 | 0.0667 | 0.0000 | 0.1111 |
| season | 0.60 | 75 | - | 273.000 | 70.000 | 10.000 | 1.000 | 6.000 | 33.000 | 32.000 | 20.000 | 56.000 | 0.2564 | 0.3179 | 0.3663 | 0.2564 | 0.0220 | 0.1209 | 0.0733 | 0.2051 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0970 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.9550 |
| predicted_AVG | 0.2647 |
| predicted_BB | 0.1860 |
| predicted_H | 1.0470 |
| predicted_HBP | 0.0510 |
| predicted_HR | 0.1240 |
| predicted_OBP | 0.3040 |
| predicted_R | 0.4770 |
| predicted_RBI | 0.3890 |
| predicted_SLG | 0.3882 |
| predicted_SO | 0.6670 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1330 | 0.0970 | 0.1178 | model_form_blend |
| predicted_3B | 0.0130 | 0.0090 | 0.0113 | model_form_blend |
| predicted_AB | 3.8200 | 3.9550 | 3.8772 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2647 | 0.2551 | model_form_blend |
| predicted_BB | 0.2670 | 0.1860 | 0.2327 | model_form_blend |
| predicted_H | 0.9500 | 1.0470 | 0.9911 | model_form_blend |
| predicted_HBP | - | 0.0510 | 0.0510 | form_only |
| predicted_HR | 0.1200 | 0.1240 | 0.1217 | model_form_blend |
| predicted_OBP | 0.3060 | 0.3040 | 0.3052 | model_form_blend |
| predicted_R | 0.4270 | 0.4770 | 0.4482 | model_form_blend |
| predicted_RBI | 0.4100 | 0.3890 | 0.4011 | model_form_blend |
| predicted_SLG | 0.3930 | 0.3882 | 0.3910 | model_form_blend |
| predicted_SO | 0.7470 | 0.6670 | 0.7131 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 242 |
| Season rows before report date | 242 |
| Report year | 2026 |
| Profile rows used | 75 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.256 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 702284 |
| playerID | 702284 |
| playerName | Cole Young |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.5 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.306 |
| sl_xwoba | 0.328 |
| sl_xba | 0.274 |
| sl_xslg | 0.412 |
| sl_sweet_spot_percent | 35.7 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 38.5 |
| sl_exit_velocity_avg | 88.1 |
| sl_launch_angle_avg | 16.2 |
| sl_whiff_percent | 21.2 |
| sl_swing_percent | 48.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.118 | 0.000 | 0.000 | Hitting_2B | 0.158 | 0.000 | -0.158 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.941 | 4.000 | 3.000 | Hitting_AB | 2.842 | 3.000 | 1.158 | 1.000 |
| predicted_AVG | 0.273 | 0.250 | 0.333 | Hitting_AVG | 0.269 | 0.000 | -0.019 | 0.250 |
| predicted_BB | 0.118 | 0.000 | 0.000 | Hitting_BB | 0.053 | 1.000 | -0.053 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.079 | 0.000 | -0.079 | 0.000 |
| predicted_H | 0.580 | 1.000 | 1.000 | Hitting_H | 0.763 | 0.000 | 0.237 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.299 | 0.250 | 0.333 | Hitting_OBP | 0.282 | 0.250 | -0.032 | 0.000 |
| predicted_R | 0.235 | 0.000 | 0.000 | Hitting_R | 0.158 | 0.000 | -0.158 | 0.000 |
| predicted_RBI | 0.240 | 0.000 | 0.000 | Hitting_RBI | 0.105 | 0.000 | -0.105 | 0.000 |
| predicted_SLG | 0.338 | 0.250 | 0.333 | Hitting_SLG | 0.324 | 0.000 | -0.074 | 0.250 |
| predicted_SO | 0.412 | 0.000 | 0.000 | Hitting_SO | 0.632 | 1.000 | -0.632 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 2.9410 -> 4.0000 (boost 1.0590, better) |
| Biggest Deboost | predicted_SO: 0.4120 -> 0.0000 (deboost -0.4120, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 2 | 2 | predicted_AB: 2.9410 -> 3.0751 (boost 0.1341, better) | predicted_AVG: 0.2730 -> 0.2627 (deboost -0.0103, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2627 -> 0.2158 (deboost -0.0469, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.6636 -> 1.0000 (boost 0.3364, better) | predicted_SO: 0.4459 -> 0.0000 (deboost -0.4459, better) | AB rounded to 3 (raw=3.08), rates preserved: AVG=0.216 HR/AB=0.018 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2790 -> 0.0000 (deboost -0.2790, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2158 -> 0.3330 (boost 0.1172, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2158 (deboost -0.1172, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "645302",
"player_name": "Victor Robles",
"position": "CF",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.118,
"predicted_3B": 0.0,
"predicted_AB": 2.941,
"predicted_AVG": 0.273,
"predicted_BB": 0.118,
"predicted_H": 0.58,
"predicted_HR": 0.06,
"predicted_OBP": 0.299,
"predicted_R": 0.235,
"predicted_RBI": 0.24,
"predicted_SLG": 0.338,
"predicted_SO": 0.412
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1153,
"predicted_3B": 0.0017,
"predicted_AB": 3.0751,
"predicted_AVG": 0.2627,
"predicted_BB": 0.1544,
"predicted_H": 0.6589,
"predicted_HBP": 0.011,
"predicted_HR": 0.0538,
"predicted_OBP": 0.2974,
"predicted_R": 0.2755,
"predicted_RBI": 0.2349,
"predicted_SLG": 0.3306,
"predicted_SO": 0.447
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.118,
"after": 0.1153,
"delta": -0.0027,
"percent_delta": -0.0229,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0017,
"delta": 0.0017,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.941,
"after": 3.0751,
"delta": 0.1341,
"percent_delta": 0.0456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2627,
"delta": -0.0103,
"percent_delta": -0.0377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.118,
"after": 0.1544,
"delta": 0.0364,
"percent_delta": 0.3085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 0.6589,
"delta": 0.0789,
"percent_delta": 0.136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0538,
"delta": -0.0062,
"percent_delta": -0.1033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2974,
"delta": -0.0016,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.235,
"after": 0.2755,
"delta": 0.0405,
"percent_delta": 0.1723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.2349,
"delta": -0.0051,
"percent_delta": -0.0212,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.338,
"after": 0.3306,
"delta": -0.0074,
"percent_delta": -0.0219,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.412,
"after": 0.447,
"delta": 0.035,
"percent_delta": 0.085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.941,
"after": 3.0751,
"delta": 0.1341,
"percent_delta": 0.0456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2627,
"delta": -0.0103,
"percent_delta": -0.0377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 17
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1153,
"predicted_3B": 0.0017,
"predicted_AB": 3.0751,
"predicted_AVG": 0.2158,
"predicted_BB": 0.1548,
"predicted_H": 0.6636,
"predicted_HBP": 0.011,
"predicted_HR": 0.0543,
"predicted_OBP": 0.2534,
"predicted_R": 0.279,
"predicted_RBI": 0.2379,
"predicted_SLG": 0.3073,
"predicted_SO": 0.4459
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1153,
"after": 0.1153,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0017,
"after": 0.0017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0751,
"after": 3.0751,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2627,
"after": 0.2158,
"delta": -0.0469,
"percent_delta": -0.1785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1544,
"after": 0.1548,
"delta": 0.0004,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6589,
"after": 0.6636,
"delta": 0.0047,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0538,
"after": 0.0543,
"delta": 0.0005,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2974,
"after": 0.2534,
"delta": -0.044,
"percent_delta": -0.1479,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2755,
"after": 0.279,
"delta": 0.0035,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2349,
"after": 0.2379,
"delta": 0.003,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3306,
"after": 0.3073,
"delta": -0.0233,
"percent_delta": -0.0705,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.447,
"after": 0.4459,
"delta": -0.0011,
"percent_delta": -0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2627,
"after": 0.2158,
"delta": -0.0469,
"percent_delta": -0.1785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.08), rates preserved: AVG=0.216 HR/AB=0.018",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1153,
"after": 0.0,
"delta": -0.1153,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0017,
"after": 0.0,
"delta": -0.0017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0751,
"after": 3.0,
"delta": -0.0751,
"percent_delta": -0.0244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1548,
"after": 0.0,
"delta": -0.1548,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6636,
"after": 1.0,
"delta": 0.3364,
"percent_delta": 0.5069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0543,
"after": 0.0,
"delta": -0.0543,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2379,
"after": 0.0,
"delta": -0.2379,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4459,
"after": 0.0,
"delta": -0.4459,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6636,
"after": 1.0,
"delta": 0.3364,
"percent_delta": 0.5069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4459,
"after": 0.0,
"delta": -0.4459,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.279,
"after": 0.0,
"delta": -0.279,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.279,
"after": 0.0,
"delta": -0.279,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2158,
"after": 0.333,
"delta": 0.1172,
"percent_delta": 0.5431,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2534,
"after": 0.333,
"delta": 0.0796,
"percent_delta": 0.3141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3073,
"after": 0.333,
"delta": 0.0257,
"percent_delta": 0.0836,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2158,
"after": 0.333,
"delta": 0.1172,
"percent_delta": 0.5431,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2158,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2534,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3073,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2158,
"delta": -0.1172,
"percent_delta": -0.352,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2534,
"delta": -0.0796,
"percent_delta": -0.2391,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3073,
"delta": -0.0257,
"percent_delta": -0.077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2158,
"delta": -0.1172,
"percent_delta": -0.352,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.118,
"after": 0.0,
"delta": -0.118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.941,
"after": 4.0,
"delta": 1.059,
"percent_delta": 0.3601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2158,
"delta": -0.0572,
"percent_delta": -0.2095,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.118,
"after": 0.0,
"delta": -0.118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2534,
"delta": -0.0456,
"percent_delta": -0.1525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.235,
"after": 0.0,
"delta": -0.235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.338,
"after": 0.3073,
"delta": -0.0307,
"percent_delta": -0.0908,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.412,
"after": 0.0,
"delta": -0.412,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.941,
"after": 4.0,
"delta": 1.059,
"percent_delta": 0.3601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.412,
"after": 0.0,
"delta": -0.412,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.118 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.941 | - |
| predicted_AVG | 0.273 | - |
| predicted_BB | 0.118 | - |
| predicted_H | 0.580 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.235 | - |
| predicted_RBI | 0.240 | - |
| predicted_SLG | 0.338 | - |
| predicted_SO | 0.412 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | -0.003 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.075 | 0.134 |
| predicted_AVG | 0.263 | -0.010 |
| predicted_BB | 0.154 | 0.036 |
| predicted_H | 0.659 | 0.079 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.054 | -0.006 |
| predicted_OBP | 0.297 | -0.002 |
| predicted_R | 0.276 | 0.041 |
| predicted_RBI | 0.235 | -0.005 |
| predicted_SLG | 0.331 | -0.007 |
| predicted_SO | 0.447 | 0.035 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.075 | 0.000 |
| predicted_AVG | 0.216 | -0.047 |
| predicted_BB | 0.155 | 0.000 |
| predicted_H | 0.664 | 0.005 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.054 | 0.001 |
| predicted_OBP | 0.253 | -0.044 |
| predicted_R | 0.279 | 0.004 |
| predicted_RBI | 0.238 | 0.003 |
| predicted_SLG | 0.307 | -0.023 |
| predicted_SO | 0.446 | -0.001 |
AB rounded to 3 (raw=3.08), rates preserved: AVG=0.216 HR/AB=0.018
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.115 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.075 |
| predicted_AVG | 0.333 | 0.117 |
| predicted_BB | 0.000 | -0.155 |
| predicted_H | 1.000 | 0.336 |
| predicted_HR | 0.000 | -0.054 |
| predicted_OBP | 0.333 | 0.080 |
| predicted_R | 0.000 | -0.279 |
| predicted_RBI | 0.000 | -0.238 |
| predicted_SLG | 0.333 | 0.026 |
| predicted_SO | 0.000 | -0.446 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 1.000 | 0.1875 | 0.2778 | 0.1875 | 0.1875 | 0.0000 | 0.0000 | 0.1250 | 0.0625 |
| last_10 | 0.20 | 10 | - | 31.000 | 7.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 3.000 | 0.2258 | 0.2727 | 0.2258 | 0.2258 | 0.0000 | 0.0323 | 0.0645 | 0.0968 |
| season | 0.60 | 17 | - | 50.000 | 13.000 | 2.000 | 0.000 | 0.000 | 2.000 | 4.000 | 2.000 | 7.000 | 0.2600 | 0.2885 | 0.3000 | 0.2600 | 0.0000 | 0.0400 | 0.0400 | 0.1400 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1100 |
| predicted_3B | 0.0050 |
| predicted_AB | 3.3320 |
| predicted_AVG | 0.2430 |
| predicted_BB | 0.2240 |
| predicted_H | 0.8100 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.0420 |
| predicted_OBP | 0.2943 |
| predicted_R | 0.3530 |
| predicted_RBI | 0.2250 |
| predicted_SLG | 0.3165 |
| predicted_SO | 0.5140 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1180 | 0.1100 | 0.1153 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0017 | model_form_blend |
| predicted_AB | 2.9410 | 3.3320 | 3.0751 | model_form_blend |
| predicted_AVG | 0.2730 | 0.2430 | 0.2627 | model_form_blend |
| predicted_BB | 0.1180 | 0.2240 | 0.1544 | model_form_blend |
| predicted_H | 0.5800 | 0.8100 | 0.6589 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.0600 | 0.0420 | 0.0538 | model_form_blend |
| predicted_OBP | 0.2990 | 0.2943 | 0.2974 | model_form_blend |
| predicted_R | 0.2350 | 0.3530 | 0.2755 | model_form_blend |
| predicted_RBI | 0.2400 | 0.2250 | 0.2349 | model_form_blend |
| predicted_SLG | 0.3380 | 0.3165 | 0.3306 | model_form_blend |
| predicted_SO | 0.4120 | 0.5140 | 0.4470 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 38 |
| Season rows before report date | 38 |
| Report year | 2026 |
| Profile rows used | 17 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.26 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 1 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF-CF |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 645302 |
| playerID | 645302 |
| playerName | Victor Robles |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.5 |
| sl_bb_percent | 3.8 |
| sl_woba | 0.265 |
| sl_xwoba | 0.268 |
| sl_xba | 0.232 |
| sl_xslg | 0.351 |
| sl_sweet_spot_percent | 18.6 |
| sl_barrel_batted_rate | 4.7 |
| sl_hard_hit_percent | 20.9 |
| sl_exit_velocity_avg | 82.5 |
| sl_launch_angle_avg | 6.6 |
| sl_whiff_percent | 18.4 |
| sl_swing_percent | 53.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.200 | 0.000 | 0.000 | Hitting_2B | 0.292 | 0.000 | -0.292 | 0.000 |
| predicted_3B | 0.040 | 0.000 | 0.000 | Hitting_3B | 0.083 | 0.000 | -0.083 | 0.000 |
| predicted_AB | 3.380 | 4.000 | 3.000 | Hitting_AB | 3.271 | 4.000 | 0.729 | 0.000 |
| predicted_AVG | 0.234 | 0.000 | 0.333 | Hitting_AVG | 0.268 | 0.000 | -0.268 | 0.000 |
| predicted_BB | 0.240 | 0.000 | 0.000 | Hitting_BB | 0.292 | 0.000 | -0.292 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.790 | 0.000 | 1.000 | Hitting_H | 0.875 | 0.000 | -0.875 | 0.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.188 | 0.000 | -0.188 | 0.000 |
| predicted_OBP | 0.288 | 0.000 | 0.333 | Hitting_OBP | 0.343 | 0.000 | -0.343 | 0.000 |
| predicted_R | 0.520 | 0.000 | 1.000 | Hitting_R | 0.562 | 0.000 | -0.562 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 0.000 | Hitting_RBI | 0.667 | 0.000 | -0.667 | 0.000 |
| predicted_SLG | 0.455 | 0.000 | 0.333 | Hitting_SLG | 0.580 | 0.000 | -0.580 | 0.000 |
| predicted_SO | 1.080 | 0.000 | 1.000 | Hitting_SO | 0.875 | 3.000 | -0.875 | -3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.3800 -> 4.0000 (boost 0.6200, better) |
| Biggest Deboost | predicted_SO: 1.0800 -> 0.0000 (deboost -1.0800, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_AB: 3.3800 -> 3.4344 (boost 0.0544, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.4694 -> 0.4917 (boost 0.0223, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 1 | 7 | 2 | 6 | predicted_H: 0.7964 -> 1.0000 (boost 0.2036, better) | predicted_RBI: 0.5541 -> 0.0000 (deboost -0.5541, worse) | AB rounded to 3 (raw=3.43), rates preserved: AVG=0.232 HR/AB=0.062 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5350 -> 1.0000 (boost 0.4650, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2319 -> 0.3330 (boost 0.1011, better) | predicted_SLG: 0.4917 -> 0.3330 (deboost -0.1587, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4917 (boost 0.1587, better) | predicted_AVG: 0.3330 -> 0.2319 (deboost -0.1011, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "806068",
"player_name": "Colt Emerson",
"position": "SS",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.2,
"predicted_3B": 0.04,
"predicted_AB": 3.38,
"predicted_AVG": 0.234,
"predicted_BB": 0.24,
"predicted_H": 0.79,
"predicted_HR": 0.19,
"predicted_OBP": 0.288,
"predicted_R": 0.52,
"predicted_RBI": 0.52,
"predicted_SLG": 0.455,
"predicted_SO": 1.08
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1826,
"predicted_3B": 0.0336,
"predicted_AB": 3.4344,
"predicted_AVG": 0.2305,
"predicted_BB": 0.2238,
"predicted_H": 0.7908,
"predicted_HBP": 0.061,
"predicted_HR": 0.2123,
"predicted_OBP": 0.284,
"predicted_R": 0.5283,
"predicted_RBI": 0.5472,
"predicted_SLG": 0.4694,
"predicted_SO": 1.0645
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.1826,
"delta": -0.0174,
"percent_delta": -0.087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0336,
"delta": -0.0064,
"percent_delta": -0.16,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.38,
"after": 3.4344,
"delta": 0.0544,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2305,
"delta": -0.0035,
"percent_delta": -0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.24,
"after": 0.2238,
"delta": -0.0162,
"percent_delta": -0.0675,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.7908,
"delta": 0.0008,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.2123,
"delta": 0.0223,
"percent_delta": 0.1174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.284,
"delta": -0.004,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.52,
"after": 0.5283,
"delta": 0.0083,
"percent_delta": 0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.5472,
"delta": 0.0272,
"percent_delta": 0.0523,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.4694,
"delta": 0.0144,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.08,
"after": 1.0645,
"delta": -0.0155,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.38,
"after": 3.4344,
"delta": 0.0544,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 25
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1826,
"predicted_3B": 0.0336,
"predicted_AB": 3.4344,
"predicted_AVG": 0.2319,
"predicted_BB": 0.2243,
"predicted_H": 0.7964,
"predicted_HBP": 0.061,
"predicted_HR": 0.2142,
"predicted_OBP": 0.279,
"predicted_R": 0.535,
"predicted_RBI": 0.5541,
"predicted_SLG": 0.4917,
"predicted_SO": 1.0619
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1826,
"after": 0.1826,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0336,
"after": 0.0336,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4344,
"after": 3.4344,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2305,
"after": 0.2319,
"delta": 0.0014,
"percent_delta": 0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2238,
"after": 0.2243,
"delta": 0.0005,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7908,
"after": 0.7964,
"delta": 0.0056,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.061,
"after": 0.061,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2123,
"after": 0.2142,
"delta": 0.0019,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.279,
"delta": -0.005,
"percent_delta": -0.0176,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5283,
"after": 0.535,
"delta": 0.0067,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5472,
"after": 0.5541,
"delta": 0.0069,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4694,
"after": 0.4917,
"delta": 0.0223,
"percent_delta": 0.0475,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0645,
"after": 1.0619,
"delta": -0.0026,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4694,
"after": 0.4917,
"delta": 0.0223,
"percent_delta": 0.0475,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.43), rates preserved: AVG=0.232 HR/AB=0.062",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1826,
"after": 0.0,
"delta": -0.1826,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0336,
"after": 0.0,
"delta": -0.0336,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4344,
"after": 3.0,
"delta": -0.4344,
"percent_delta": -0.1265,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2243,
"after": 0.0,
"delta": -0.2243,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7964,
"after": 1.0,
"delta": 0.2036,
"percent_delta": 0.2557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.061,
"after": 0.0,
"delta": -0.061,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2142,
"after": 0.0,
"delta": -0.2142,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5541,
"after": 0.0,
"delta": -0.5541,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0619,
"after": 1.0,
"delta": -0.0619,
"percent_delta": -0.0583,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7964,
"after": 1.0,
"delta": 0.2036,
"percent_delta": 0.2557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5541,
"after": 0.0,
"delta": -0.5541,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.535,
"after": 1.0,
"delta": 0.465,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.535,
"after": 1.0,
"delta": 0.465,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2319,
"after": 0.333,
"delta": 0.1011,
"percent_delta": 0.436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.279,
"after": 0.333,
"delta": 0.054,
"percent_delta": 0.1935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4917,
"after": 0.333,
"delta": -0.1587,
"percent_delta": -0.3228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2319,
"after": 0.333,
"delta": 0.1011,
"percent_delta": 0.436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4917,
"after": 0.333,
"delta": -0.1587,
"percent_delta": -0.3228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2319,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.279,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4917,
"predicted_SO": 0.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2319,
"delta": -0.1011,
"percent_delta": -0.3036,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.279,
"delta": -0.054,
"percent_delta": -0.1622,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4917,
"delta": 0.1587,
"percent_delta": 0.4767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4917,
"delta": 0.1587,
"percent_delta": 0.4767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2319,
"delta": -0.1011,
"percent_delta": -0.3036,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.38,
"after": 4.0,
"delta": 0.62,
"percent_delta": 0.1834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2319,
"delta": -0.0021,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.279,
"delta": -0.009,
"percent_delta": -0.0312,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.4917,
"delta": 0.0367,
"percent_delta": 0.0807,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.08,
"after": 0.0,
"delta": -1.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.38,
"after": 4.0,
"delta": 0.62,
"percent_delta": 0.1834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.08,
"after": 0.0,
"delta": -1.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.200 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 3.380 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.240 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.520 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.455 | - |
| predicted_SO | 1.080 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | -0.017 |
| predicted_3B | 0.034 | -0.006 |
| predicted_AB | 3.434 | 0.054 |
| predicted_AVG | 0.231 | -0.004 |
| predicted_BB | 0.224 | -0.016 |
| predicted_H | 0.791 | 0.001 |
| predicted_HBP | 0.061 | - |
| predicted_HR | 0.212 | 0.022 |
| predicted_OBP | 0.284 | -0.004 |
| predicted_R | 0.528 | 0.008 |
| predicted_RBI | 0.547 | 0.027 |
| predicted_SLG | 0.469 | 0.014 |
| predicted_SO | 1.065 | -0.016 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | 0.000 |
| predicted_3B | 0.034 | 0.000 |
| predicted_AB | 3.434 | 0.000 |
| predicted_AVG | 0.232 | 0.001 |
| predicted_BB | 0.224 | 0.001 |
| predicted_H | 0.796 | 0.006 |
| predicted_HBP | 0.061 | 0.000 |
| predicted_HR | 0.214 | 0.002 |
| predicted_OBP | 0.279 | -0.005 |
| predicted_R | 0.535 | 0.007 |
| predicted_RBI | 0.554 | 0.007 |
| predicted_SLG | 0.492 | 0.022 |
| predicted_SO | 1.062 | -0.003 |
AB rounded to 3 (raw=3.43), rates preserved: AVG=0.232 HR/AB=0.062
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.183 |
| predicted_3B | 0.000 | -0.034 |
| predicted_AB | 3.000 | -0.434 |
| predicted_AVG | 0.333 | 0.101 |
| predicted_BB | 0.000 | -0.224 |
| predicted_H | 1.000 | 0.204 |
| predicted_HR | 0.000 | -0.214 |
| predicted_OBP | 0.333 | 0.054 |
| predicted_R | 1.000 | 0.465 |
| predicted_RBI | 0.000 | -0.554 |
| predicted_SLG | 0.333 | -0.159 |
| predicted_SO | 1.000 | -0.062 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 0.000 | 5.000 | 0.2222 | 0.2222 | 0.5556 | 0.2222 | 0.1111 | 0.2222 | 0.0000 | 0.2778 |
| last_10 | 0.20 | 10 | - | 35.000 | 6.000 | 1.000 | 0.000 | 3.000 | 6.000 | 6.000 | 1.000 | 12.000 | 0.1714 | 0.2162 | 0.4571 | 0.1714 | 0.0857 | 0.1714 | 0.0286 | 0.3429 |
| season | 0.60 | 25 | - | 83.000 | 19.000 | 5.000 | 1.000 | 6.000 | 14.000 | 13.000 | 6.000 | 27.000 | 0.2289 | 0.2967 | 0.5301 | 0.2289 | 0.0723 | 0.1687 | 0.0723 | 0.3253 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1540 |
| predicted_3B | 0.0230 |
| predicted_AB | 3.5240 |
| predicted_AVG | 0.2246 |
| predicted_BB | 0.1970 |
| predicted_H | 0.7920 |
| predicted_HBP | 0.0610 |
| predicted_HR | 0.2490 |
| predicted_OBP | 0.2775 |
| predicted_R | 0.5420 |
| predicted_RBI | 0.5920 |
| predicted_SLG | 0.4931 |
| predicted_SO | 1.0390 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2000 | 0.1540 | 0.1826 | model_form_blend |
| predicted_3B | 0.0400 | 0.0230 | 0.0336 | model_form_blend |
| predicted_AB | 3.3800 | 3.5240 | 3.4344 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2246 | 0.2305 | model_form_blend |
| predicted_BB | 0.2400 | 0.1970 | 0.2238 | model_form_blend |
| predicted_H | 0.7900 | 0.7920 | 0.7908 | model_form_blend |
| predicted_HBP | - | 0.0610 | 0.0610 | form_only |
| predicted_HR | 0.1900 | 0.2490 | 0.2123 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2775 | 0.2840 | model_form_blend |
| predicted_R | 0.5200 | 0.5420 | 0.5283 | model_form_blend |
| predicted_RBI | 0.5200 | 0.5920 | 0.5472 | model_form_blend |
| predicted_SLG | 0.4550 | 0.4931 | 0.4694 | model_form_blend |
| predicted_SO | 1.0800 | 1.0390 | 1.0645 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 48 |
| Season rows before report date | 48 |
| Report year | 2026 |
| Profile rows used | 25 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.229 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 806068 |
| playerID | 806068 |
| playerName | Colt Emerson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.7 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.354 |
| sl_xwoba | 0.23 |
| sl_xba | 0.163 |
| sl_xslg | 0.268 |
| sl_sweet_spot_percent | 35.7 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 28.6 |
| sl_exit_velocity_avg | 86.7 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 31.6 |
| sl_swing_percent | 50.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.000 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.857 | 3.000 | 3.000 | Hitting_AB | 2.857 | 3.000 | 0.143 | 0.000 |
| predicted_AVG | 0.243 | 0.667 | 0.333 | Hitting_AVG | 0.200 | 0.333 | 0.467 | 0.333 |
| predicted_BB | 0.286 | 1.000 | 0.000 | Hitting_BB | 0.286 | 0.000 | 0.714 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.620 | 2.000 | 1.000 | Hitting_H | 0.571 | 1.000 | 1.429 | 1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.294 | 0.750 | 0.333 | Hitting_OBP | 0.261 | 0.333 | 0.489 | 0.417 |
| predicted_R | 0.429 | 1.000 | 0.000 | Hitting_R | 0.429 | 0.000 | 0.571 | 1.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_SLG | 0.323 | 0.667 | 0.333 | Hitting_SLG | 0.200 | 0.333 | 0.467 | 0.333 |
| predicted_SO | 1.286 | 1.000 | 1.000 | Hitting_SO | 1.286 | 2.000 | -0.286 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 9 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 0.6200 -> 2.0000 (boost 1.3800, better) |
| Biggest Deboost | predicted_RBI: 0.3300 -> 0.0000 (deboost -0.3300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 2 | 2 | predicted_AB: 2.8570 -> 2.9967 (boost 0.1397, better) | predicted_SO: 1.2860 -> 1.2285 (deboost -0.0575, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3177 -> 0.2971 (deboost -0.0206, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 2 | 3 | predicted_H: 0.6522 -> 1.0000 (boost 0.3478, better) | predicted_RBI: 0.3399 -> 0.0000 (deboost -0.3399, worse) | AB rounded to 3 (raw=3.00), rates preserved: AVG=0.218 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4456 -> 0.0000 (deboost -0.4456, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2176 -> 0.3330 (boost 0.1154, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2176 (deboost -0.1154, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670156",
"player_name": "Miles Mastrobuoni",
"position": "LF",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.857,
"predicted_AVG": 0.243,
"predicted_BB": 0.286,
"predicted_H": 0.62,
"predicted_HR": 0.07,
"predicted_OBP": 0.294,
"predicted_R": 0.429,
"predicted_RBI": 0.33,
"predicted_SLG": 0.323,
"predicted_SO": 1.286
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0265,
"predicted_3B": 0.002,
"predicted_AB": 2.9967,
"predicted_AVG": 0.2348,
"predicted_BB": 0.3034,
"predicted_H": 0.6476,
"predicted_HBP": 0.017,
"predicted_HR": 0.0686,
"predicted_OBP": 0.2921,
"predicted_R": 0.4401,
"predicted_RBI": 0.3357,
"predicted_SLG": 0.3177,
"predicted_SO": 1.2285
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0265,
"delta": 0.0265,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.002,
"delta": 0.002,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.857,
"after": 2.9967,
"delta": 0.1397,
"percent_delta": 0.0489,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2348,
"delta": -0.0082,
"percent_delta": -0.0337,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.286,
"after": 0.3034,
"delta": 0.0174,
"percent_delta": 0.0608,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.6476,
"delta": 0.0276,
"percent_delta": 0.0445,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0686,
"delta": -0.0014,
"percent_delta": -0.02,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.294,
"after": 0.2921,
"delta": -0.0019,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.429,
"after": 0.4401,
"delta": 0.0111,
"percent_delta": 0.0259,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.3357,
"delta": 0.0057,
"percent_delta": 0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.323,
"after": 0.3177,
"delta": -0.0053,
"percent_delta": -0.0164,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.286,
"after": 1.2285,
"delta": -0.0575,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.857,
"after": 2.9967,
"delta": 0.1397,
"percent_delta": 0.0489,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.286,
"after": 1.2285,
"delta": -0.0575,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 7,
"season": 7
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0265,
"predicted_3B": 0.002,
"predicted_AB": 2.9967,
"predicted_AVG": 0.2176,
"predicted_BB": 0.3041,
"predicted_H": 0.6522,
"predicted_HBP": 0.017,
"predicted_HR": 0.0692,
"predicted_OBP": 0.2897,
"predicted_R": 0.4456,
"predicted_RBI": 0.3399,
"predicted_SLG": 0.2971,
"predicted_SO": 1.2256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0265,
"after": 0.0265,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.002,
"after": 0.002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9967,
"after": 2.9967,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2348,
"after": 0.2176,
"delta": -0.0172,
"percent_delta": -0.0733,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3034,
"after": 0.3041,
"delta": 0.0007,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6476,
"after": 0.6522,
"delta": 0.0046,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0686,
"after": 0.0692,
"delta": 0.0006,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2921,
"after": 0.2897,
"delta": -0.0024,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4401,
"after": 0.4456,
"delta": 0.0055,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3357,
"after": 0.3399,
"delta": 0.0042,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3177,
"after": 0.2971,
"delta": -0.0206,
"percent_delta": -0.0648,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2285,
"after": 1.2256,
"delta": -0.0029,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3177,
"after": 0.2971,
"delta": -0.0206,
"percent_delta": -0.0648,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.00), rates preserved: AVG=0.218 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0265,
"after": 0.0,
"delta": -0.0265,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.002,
"after": 0.0,
"delta": -0.002,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9967,
"after": 3.0,
"delta": 0.0033,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3041,
"after": 0.0,
"delta": -0.3041,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6522,
"after": 1.0,
"delta": 0.3478,
"percent_delta": 0.5333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0692,
"after": 0.0,
"delta": -0.0692,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3399,
"after": 0.0,
"delta": -0.3399,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2256,
"after": 1.0,
"delta": -0.2256,
"percent_delta": -0.1841,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6522,
"after": 1.0,
"delta": 0.3478,
"percent_delta": 0.5333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3399,
"after": 0.0,
"delta": -0.3399,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4456,
"after": 0.0,
"delta": -0.4456,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4456,
"after": 0.0,
"delta": -0.4456,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2176,
"after": 0.333,
"delta": 0.1154,
"percent_delta": 0.5303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2897,
"after": 0.333,
"delta": 0.0433,
"percent_delta": 0.1495,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2971,
"after": 0.333,
"delta": 0.0359,
"percent_delta": 0.1208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2176,
"after": 0.333,
"delta": 0.1154,
"percent_delta": 0.5303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2176,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.2897,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2971,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2176,
"delta": -0.1154,
"percent_delta": -0.3464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2897,
"delta": -0.0433,
"percent_delta": -0.13,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2971,
"delta": -0.0359,
"percent_delta": -0.1078,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2176,
"delta": -0.1154,
"percent_delta": -0.3464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.857,
"after": 3.0,
"delta": 0.143,
"percent_delta": 0.0501,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2176,
"delta": -0.0254,
"percent_delta": -0.1045,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.286,
"after": 1.0,
"delta": 0.714,
"percent_delta": 2.4965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 2.0,
"delta": 1.38,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.294,
"after": 0.2897,
"delta": -0.0043,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.429,
"after": 1.0,
"delta": 0.571,
"percent_delta": 1.331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.323,
"after": 0.2971,
"delta": -0.0259,
"percent_delta": -0.0802,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.286,
"after": 1.0,
"delta": -0.286,
"percent_delta": -0.2224,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 4,
"deboosted_metrics": 5,
"better_metrics": 5,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.62,
"after": 2.0,
"delta": 1.38,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.857 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.286 | - |
| predicted_H | 0.620 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.294 | - |
| predicted_R | 0.429 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.323 | - |
| predicted_SO | 1.286 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.026 | 0.026 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.997 | 0.140 |
| predicted_AVG | 0.235 | -0.008 |
| predicted_BB | 0.303 | 0.017 |
| predicted_H | 0.648 | 0.028 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.069 | -0.001 |
| predicted_OBP | 0.292 | -0.002 |
| predicted_R | 0.440 | 0.011 |
| predicted_RBI | 0.336 | 0.006 |
| predicted_SLG | 0.318 | -0.005 |
| predicted_SO | 1.228 | -0.058 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.026 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.997 | 0.000 |
| predicted_AVG | 0.218 | -0.017 |
| predicted_BB | 0.304 | 0.001 |
| predicted_H | 0.652 | 0.005 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.069 | 0.001 |
| predicted_OBP | 0.290 | -0.002 |
| predicted_R | 0.446 | 0.006 |
| predicted_RBI | 0.340 | 0.004 |
| predicted_SLG | 0.297 | -0.021 |
| predicted_SO | 1.226 | -0.003 |
AB rounded to 3 (raw=3.00), rates preserved: AVG=0.218 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.026 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.003 |
| predicted_AVG | 0.333 | 0.115 |
| predicted_BB | 0.000 | -0.304 |
| predicted_H | 1.000 | 0.348 |
| predicted_HR | 0.000 | -0.069 |
| predicted_OBP | 0.333 | 0.043 |
| predicted_R | 0.000 | -0.446 |
| predicted_RBI | 0.000 | -0.340 |
| predicted_SLG | 0.333 | 0.036 |
| predicted_SO | 1.000 | -0.226 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 6.000 | 0.1538 | 0.2500 | 0.1538 | 0.1538 | 0.0000 | 0.0769 | 0.1538 | 0.4615 |
| last_10 | 0.20 | 7 | - | 20.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 9.000 | 0.2000 | 0.2609 | 0.2000 | 0.2000 | 0.0000 | 0.0500 | 0.1000 | 0.4500 |
| season | 0.60 | 7 | - | 20.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 9.000 | 0.2000 | 0.2609 | 0.2000 | 0.2000 | 0.0000 | 0.0500 | 0.1000 | 0.4500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0930 |
| predicted_3B | 0.0070 |
| predicted_AB | 3.3480 |
| predicted_AVG | 0.2143 |
| predicted_BB | 0.3470 |
| predicted_H | 0.7170 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.0650 |
| predicted_OBP | 0.2872 |
| predicted_R | 0.4680 |
| predicted_RBI | 0.3500 |
| predicted_SLG | 0.3044 |
| predicted_SO | 1.0840 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0930 | 0.0265 | model_form_blend |
| predicted_3B | 0.0000 | 0.0070 | 0.0020 | model_form_blend |
| predicted_AB | 2.8570 | 3.3480 | 2.9967 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2143 | 0.2348 | model_form_blend |
| predicted_BB | 0.2860 | 0.3470 | 0.3034 | model_form_blend |
| predicted_H | 0.6200 | 0.7170 | 0.6476 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.0700 | 0.0650 | 0.0686 | model_form_blend |
| predicted_OBP | 0.2940 | 0.2872 | 0.2921 | model_form_blend |
| predicted_R | 0.4290 | 0.4680 | 0.4401 | model_form_blend |
| predicted_RBI | 0.3300 | 0.3500 | 0.3357 | model_form_blend |
| predicted_SLG | 0.3230 | 0.3044 | 0.3177 | model_form_blend |
| predicted_SO | 1.2860 | 1.0840 | 1.2285 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 7 |
| Season rows before report date | 7 |
| Report year | 2026 |
| Profile rows used | 7 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.2 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_BAL@SEA |
| game_type | full |
| mlbID | 670156 |
| playerID | 670156 |
| playerName | Miles Mastrobuoni |
| pos | 3B |
| started | True |
| startingPosition | 1B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-17 |
| sl_k_percent | 37.5 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.216 |
| sl_xwoba | 0.191 |
| sl_xba | 0.144 |
| sl_xslg | 0.195 |
| sl_sweet_spot_percent | 23.1 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 23.1 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 10.0 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 37.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.071 | 1.000 | 0.929 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.786 | 7.000 | -1.786 | -6.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 5.000 | 7.000 | -3.000 | -5.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.807 | 5.000 | -0.607 | 0.200 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 5.643 | 4.000 | 0.357 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 2 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 1 |
| Better Metrics | 1 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_SO: 5.0000 -> 6.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 2 | 1 | 1 | 1 | 1 | predicted_SO: 5.0000 -> 6.0000 (boost 1.0000, better) | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "693433",
"player_name": "Bryan Woo",
"position": "Starter",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 5.6667,
"predicted_SO": 5.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 5.2,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 6.0,
"delta": 1.0,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SO",
"before": 5.0,
"after": 6.0,
"delta": 1.0,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 5.2,
"predicted_R": 1.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.2,
"after": 5.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 6.0,
"delta": 1.0,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SO",
"before": 5.0,
"after": 6.0,
"delta": 1.0,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 5.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 2.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.200 | -0.467 |
| predicted_SO | 6.000 | 1.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 29.000 | 16.000 | 27.000 | 5.000 | 32.000 | 3.000 | 4.9655 | 1.1034 | 0.5517 | 0.9310 | 0.1724 | 1.1035 | 0.1035 |
| last_10 | 0.35 | 10 | 57.000 | 33.000 | 52.000 | 10.000 | 59.000 | 9.000 | 5.2105 | 1.0877 | 0.5789 | 0.9123 | 0.1754 | 1.0351 | 0.1579 |
| season | 0.20 | 14 | 82.000 | 39.000 | 70.000 | 15.000 | 79.000 | 9.000 | 4.2805 | 1.0366 | 0.4756 | 0.8537 | 0.1829 | 0.9634 | 0.1098 |
| Metric | Value |
|---|---|
| predicted_BB | 1.2860 |
| predicted_ER | 3.0530 |
| predicted_ERA | 4.8074 |
| predicted_H | 5.2930 |
| predicted_HR | 0.7410 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.8390 |
| predicted_WHIP | 1.1510 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.2860 | 1.6153 | model_form_blend |
| predicted_ER | 1.0000 | 3.0530 | 2.1062 | model_form_blend |
| predicted_ERA | - | 4.8074 | 4.8074 | form_only |
| predicted_H | 2.0000 | 5.2930 | 3.7743 | model_form_blend |
| predicted_HR | 0.0000 | 0.7410 | 0.3992 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 5.0000 | 5.8390 | 5.4521 | model_form_blend |
| predicted_WHIP | - | 1.1510 | 1.1510 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 6 |
| HR | 0 |
| BF | 22 |
| Pitches | 97 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 23 |
| Pitching_ER | 7 |
| Pitching_ERA | 4.28 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 4 |
| Pitching_H | 7 |
| Pitching_HBP | 1 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 82 |
| Pitching_R | 7 |
| Pitching_SO | 4 |
| Pitching_Strikes | 53 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260611_SEA@BAL |
| game_type | full |
| mlbID | 693433 |
| playerID | 693433 |
| playerName | Bryan Woo |
| pos | P |
| started | True |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-11 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 4.6 |
| sl_woba | 0.273 |
| sl_xwoba | 0.286 |
| sl_sweet_spot_percent | 32.3 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 44.4 |
| sl_whiff_percent | 24.2 |
| sl_swing_percent | 54.0 |
| sl_avg_best_speed | 78.783229483 |
| sl_avg_hyper_speed | 94.570005714 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.393 | 0.000 | -0.393 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.571 | 0.000 | -0.571 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.893 | 1.000 | -0.893 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.846 | 1.000 | 0.254 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.357 | 1.000 | -1.357 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "662253",
"player_name": "Andrés Muñoz",
"position": "Middle Reliever",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 3.000 | 4.000 | 3.000 | 5.000 | 0.000 | 5.7857 | 1.5000 | 0.6429 | 0.8571 | 0.6429 | 1.0714 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 9.000 | 3.000 | 12.000 | 1.000 | 3.8571 | 1.2857 | 0.4286 | 0.9643 | 0.3214 | 1.2857 | 0.1071 |
| season | 0.20 | 27 | 25.100 | 14.000 | 24.000 | 10.000 | 38.000 | 4.000 | 4.9737 | 1.3421 | 0.5526 | 0.9474 | 0.3947 | 1.5000 | 0.1579 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4220 |
| predicted_ER | 0.5250 |
| predicted_ERA | 4.7289 |
| predicted_H | 0.9430 |
| predicted_HR | 0.1070 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0850 |
| predicted_WHIP | 1.3654 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4220 | 0.1854 | model_form_blend |
| predicted_ER | 0.0000 | 0.5250 | 0.2307 | model_form_blend |
| predicted_ERA | - | 4.7289 | 4.7289 | form_only |
| predicted_H | 0.0000 | 0.9430 | 0.4143 | model_form_blend |
| predicted_HR | 0.0000 | 0.1070 | 0.0470 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0850 | 0.4767 | model_form_blend |
| predicted_WHIP | - | 1.3654 | 1.3654 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 28 |
| Season rows before report date | 28 |
| Report year | 2026 |
| Profile rows used | 27 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.68 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 17 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_BAL@SEA |
| game_type | full |
| mlbID | 662253 |
| playerID | 662253 |
| playerName | Andrés Muñoz |
| pos | P |
| started | False |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-16 |
| sl_k_percent | 33.3 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.321 |
| sl_xwoba | 0.327 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 10.9 |
| sl_hard_hit_percent | 45.3 |
| sl_whiff_percent | 40.8 |
| sl_swing_percent | 46.5 |
| sl_avg_best_speed | 75.00311625 |
| sl_avg_hyper_speed | 94.778782381 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.324 | 0.000 | 1.676 | 2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.235 | 0.000 | 0.765 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.941 | 0.000 | 0.059 | 1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.779 | 1.000 | 0.321 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.824 | 1.000 | -0.824 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "660825",
"player_name": "Eduard Bazardo",
"position": "Middle Reliever",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 1.000 | 4.000 | 1.000 | 3.000 | 0.000 | 2.0769 | 1.1538 | 0.2308 | 0.9231 | 0.2308 | 0.6923 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 2.000 | 10.000 | 2.000 | 9.000 | 0.000 | 1.7419 | 1.1613 | 0.1935 | 0.9677 | 0.1935 | 0.8710 | 0.0000 |
| season | 0.20 | 34 | 32.100 | 8.000 | 32.000 | 11.000 | 28.000 | 2.000 | 2.2268 | 1.3299 | 0.2474 | 0.9897 | 0.3402 | 0.8660 | 0.0619 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2940 |
| predicted_ER | 0.3440 |
| predicted_ERA | 3.0923 |
| predicted_H | 0.9620 |
| predicted_HR | 0.0710 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8540 |
| predicted_WHIP | 1.2554 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.2940 | 1.2067 | model_form_blend |
| predicted_ER | 1.0000 | 0.3440 | 0.6949 | model_form_blend |
| predicted_ERA | - | 3.0923 | 3.0923 | form_only |
| predicted_H | 1.0000 | 0.9620 | 0.9823 | model_form_blend |
| predicted_HR | 0.0000 | 0.0710 | 0.0330 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8540 | 0.3971 | model_form_blend |
| predicted_WHIP | - | 1.2554 | 1.2554 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 34 |
| Season rows before report date | 34 |
| Report year | 2026 |
| Profile rows used | 34 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 0 |
| HR | 0 |
| BF | 7 |
| Pitches | 28 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.23 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 9 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260616_BAL@SEA |
| game_type | full |
| mlbID | 660825 |
| playerID | 660825 |
| playerName | Eduard Bazardo |
| pos | P |
| started | False |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-16 |
| sl_k_percent | 20.7 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.313 |
| sl_xwoba | 0.328 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 8.4 |
| sl_hard_hit_percent | 41.1 |
| sl_whiff_percent | 21.4 |
| sl_swing_percent | 44.6 |
| sl_avg_best_speed | 81.768124255 |
| sl_avg_hyper_speed | 94.614598065 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.229 | 0.000 | 0.771 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.029 | 1.000 | -1.029 | -1.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.789 | 1.000 | -0.589 | -0.800 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.771 | 1.000 | 0.229 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 2 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 2 |
| Better Metrics | 0 |
| Worse Metrics | 2 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 2.0000 -> 1.0000 (deboost -1.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_SO: 2.0000 -> 1.0000 (deboost -1.0000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "678606",
"player_name": "José A. Ferrer",
"position": "Middle Reliever",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.200 | 5.000 | 6.000 | 5.000 | 3.000 | 1.000 | 12.2727 | 3.0000 | 1.3636 | 1.6364 | 1.3636 | 0.8182 | 0.2727 |
| last_10 | 0.35 | 10 | 7.200 | 5.000 | 9.000 | 5.000 | 5.000 | 1.000 | 5.8696 | 1.8261 | 0.6522 | 1.1739 | 0.6522 | 0.6522 | 0.1304 |
| season | 0.20 | 34 | 31.100 | 10.000 | 35.000 | 8.000 | 27.000 | 2.000 | 2.8723 | 1.3723 | 0.3191 | 1.1170 | 0.2553 | 0.8617 | 0.0638 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4620 |
| predicted_ER | 0.5100 |
| predicted_ERA | 6.5284 |
| predicted_H | 0.8400 |
| predicted_HR | 0.1160 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.5940 |
| predicted_WHIP | 1.8509 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4620 | 0.7516 | model_form_blend |
| predicted_ER | 0.0000 | 0.5100 | 0.2355 | model_form_blend |
| predicted_ERA | - | 6.5284 | 6.5284 | form_only |
| predicted_H | 0.0000 | 0.8400 | 0.3879 | model_form_blend |
| predicted_HR | 0.0000 | 0.1160 | 0.0536 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 2.0000 | 0.5940 | 1.3507 | model_form_blend |
| predicted_WHIP | - | 1.8509 | 1.8509 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 35 |
| Season rows before report date | 35 |
| Report year | 2026 |
| Profile rows used | 34 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 15 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.87 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260614_SEA@WAS |
| game_type | full |
| mlbID | 678606 |
| playerID | 678606 |
| playerName | José A. Ferrer |
| pos | P |
| started | False |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-14 |
| sl_k_percent | 19.3 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.323 |
| sl_xwoba | 0.269 |
| sl_sweet_spot_percent | 28.4 |
| sl_barrel_batted_rate | 3.9 |
| sl_hard_hit_percent | 36.3 |
| sl_whiff_percent | 21.2 |
| sl_swing_percent | 52.8 |
| sl_avg_best_speed | 73.655597 |
| sl_avg_hyper_speed | 93.2911461 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | CHW 4 - 3 NYY | CHW | 0.566 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | CHW 4 - 3 NYY | CHW | - | advisory_box_score_draw | True |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.7000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5658 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 6.627 | 3.187 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 3 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 4 | 3 | 0.5658 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 4 | 3 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 4 | 3 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 3 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4429485099337749,
"base_low_score_probability": 0.4155629139072848,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.0273855960264901,
"confidence": 0.63295,
"factors": {
"environmental": 0.969,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.0659
},
"prediction": "normal_scoring",
"expected_total_runs": 7,
"pre_simulation_expected_total_runs": 9.7,
"low_score_model_expected_total_runs": 9.7,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 101,
"near_bucket_sample_size": 101,
"medium_bucket_sample_size": 212,
"wide_bucket_sample_size": 227,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.6436,
"bayesian_hit_rate": 0.6218,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8487,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5,
"calibrated_pick_probability": 0.5658,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "NYY",
"games": 72,
"wins": 45,
"losses": 27,
"win_pct": 0.625,
"runs_scored": 380,
"runs_allowed": 258,
"run_differential": 122,
"run_differential_per_game": 1.6944444444444444,
"available": true
},
"away": {
"team": "CHW",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5277777777777778,
"runs_scored": 340,
"runs_allowed": 343,
"run_differential": -3,
"run_differential_per_game": -0.041666666666666664,
"available": true
},
"run_differential_edge_per_game": 1.7361,
"win_pct_edge": 0.0972,
"quality_edge": 1.8819,
"margin_adjustment": 0.7904,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.005,
"home_runs": 1.864,
"home_win_probability": 0.403
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "CHW",
"guardrail_predicted_team": "CHW",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "CHW",
"output_opponent_team": "NYY",
"final_score_winner": "CHW",
"pre_simulation_winner": "CHW",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "CHW 4 - 3 NYY",
"winner": "CHW"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "CHW 4 - 3 NYY",
"winner": "CHW"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": true,
"confidence_cap": 0.6,
"winner_flipped": false,
"reasons": [
"season-to-date record and run differential support the home team over a close road lean"
],
"signals": {
"home": {
"team": "NYY",
"games": 72,
"wins": 45,
"losses": 27,
"win_pct": 0.625,
"runs_scored": 380,
"runs_allowed": 258,
"run_differential": 122,
"run_differential_per_game": 1.6944444444444444,
"available": true
},
"away": {
"team": "CHW",
"games": 72,
"wins": 38,
"losses": 34,
"win_pct": 0.5277777777777778,
"runs_scored": 340,
"runs_allowed": 343,
"run_differential": -3,
"run_differential_per_game": -0.041666666666666664,
"available": true
},
"home_quality_edge": 0.3056,
"original_score": {
"away_runs": 3.005,
"home_runs": 1.864,
"home_win_probability": 0.403
},
"adjusted_score": {
"away_runs": 2.655,
"home_runs": 2.642,
"home_win_probability": 0.51
}
}
}{
"applied": false,
"raw_margin": -0.0135,
"final_margin": -0.0135,
"margin_cap": 4.25,
"season_quality_edge": 1.8819,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.50135,
"final_confidence": 0.505,
"confidence_cap": 0.66,
"score_gap": 0.0135,
"calibration_sample_size": 101,
"calibration_empirical_hit_rate": 0.6436,
"calibration_bayesian_hit_rate": 0.6218,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.8819,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"season run-differential edge supports the pick",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "CHW 4 - 3 NYY",
"winner": "CHW"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "CHW 4 - 3 NYY",
"winner": "CHW"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 4,
"home_runs": 3,
"confidence": 0.565798,
"home_win_probability": 0.434202,
"away_win_probability": 0.565798,
"predicted_score_text": "CHW 4 - 3 NYY",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "CHW",
"original_runs": 4,
"run_delta": -0.0012,
"adjusted_runs": 4,
"lineup": {
"players_used": 8,
"total_weight": 28.0,
"quality": 0.08147719382225589,
"contact": 0.09974247954172243,
"power": 0.230202045450076,
"discipline": -0.14434610539902795,
"xwoba": 0.31921428571428573,
"recent_xwoba": 0.31921428571428573,
"barrel": 8.8,
"ab_hard_contact": -0.3678366420188967,
"ab_bat_speed": 68.9776772475233,
"ab_strikeout_rate": 0.23108658733288973,
"available_players": 7,
"top_players": [
{
"player_id": "678246",
"player_name": "Miguel Vargas",
"position": "1B",
"weight": 4.0,
"quality": 1.2485389647539396,
"contact": 1.2452266234635736,
"power": 1.4240317267647704,
"discipline": 1.0439867079623177,
"xwoba": 0.401,
"recent_xwoba": 0.401,
"barrel": 14.4,
"ab_hard_contact": 0.5425392972001649,
"ab_bat_speed": 72.40690402704291,
"ab_strikeout_rate": 0.18518518518518517,
"available": 1.0
},
{
"player_id": "545341",
"player_name": "Randal Grichuk",
"position": "DH",
"weight": 3.0,
"quality": 0.4137590553392926,
"contact": 1.5465445539135196,
"power": 1.6209687409406293,
"discipline": -0.5674134927309862,
"xwoba": 0.393,
"recent_xwoba": 0.393,
"barrel": 13.9,
"ab_hard_contact": 1.5748033902411542,
"ab_bat_speed": 72.14736590038315,
"ab_strikeout_rate": 0.2149425287356322,
"available": 1.0
},
{
"player_id": "700337",
"player_name": "Edgar Quero",
"position": "C",
"weight": 3.0,
"quality": -0.44029939308679256,
"contact": -0.9361811742332826,
"power": -0.9876615543737675,
"discipline": -0.29025947940151664,
"xwoba": 0.253,
"recent_xwoba": 0.253,
"barrel": 1.9,
"ab_hard_contact": -0.8435168017610719,
"ab_bat_speed": 66.6949387254902,
"ab_strikeout_rate": 0.2784313725490196,
"available": 1.0
},
{
"player_id": "805367",
"player_name": "Chase Meidroth",
"position": "2B",
"weight": 4.0,
"quality": -0.4580331006816472,
"contact": -0.40220663528693507,
"power": -0.6025825957723883,
"discipline": 0.16787152684713666,
"xwoba": 0.293,
"recent_xwoba": 0.293,
"barrel": 5.1,
"ab_hard_contact": -0.8406042964001481,
"ab_bat_speed": 64.46452457264958,
"ab_strikeout_rate": 0.23237179487179488,
"available": 1.0
},
{
"player_id": "671976",
"player_name": "Tristan Peters",
"position": "CF",
"weight": 3.0,
"quality": -0.3082222205570046,
"contact": -0.3390353409874841,
"power": -0.6437941023398315,
"discipline": -0.012484852884242973,
"xwoba": 0.305,
"recent_xwoba": 0.305,
"barrel": 4.8,
"ab_hard_contact": -0.7459772848918798,
"ab_bat_speed": 63.24040798611111,
"ab_strikeout_rate": 0.22951388888888888,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "677960",
"player_name": "Ryan Weathers",
"quality": -0.10722038082992853,
"contact": -0.4196258217365083,
"command": 0.3971428571428572,
"movement": -0.07511977497084323,
"xwoba": 0.323,
"whiff": 26.5,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "NYY",
"original_runs": 3,
"run_delta": 0.1557,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.16029767194958544,
"contact": 0.16710811491728836,
"power": 0.13443397377424945,
"discipline": -0.033595078744013455,
"xwoba": 0.3234375,
"recent_xwoba": 0.3234375,
"barrel": 7.50625,
"ab_hard_contact": 0.11866161834212902,
"ab_bat_speed": 70.49915563879792,
"ab_strikeout_rate": 0.24031732516290633,
"available_players": 9,
"top_players": [
{
"player_id": "700250",
"player_name": "Ben Rice",
"position": "1B",
"weight": 4.0,
"quality": 1.114354386264113,
"contact": 1.3174489586055667,
"power": 1.5602805384900507,
"discipline": 0.47897801559648256,
"xwoba": 0.393,
"recent_xwoba": 0.393,
"barrel": 15.4,
"ab_hard_contact": 0.7827536269438703,
"ab_bat_speed": 70.94105952380953,
"ab_strikeout_rate": 0.23469387755102042,
"available": 1.0
},
{
"player_id": "676609",
"player_name": "José Caballero",
"position": "SS",
"weight": 3.0,
"quality": -0.6411665825720452,
"contact": -0.7967638635734638,
"power": -1.0599597487406394,
"discipline": -0.3312355142599044,
"xwoba": 0.289,
"recent_xwoba": 0.289,
"barrel": 3.1,
"ab_hard_contact": -1.2734806890984982,
"ab_bat_speed": 65.39745987654321,
"ab_strikeout_rate": 0.1774074074074074,
"available": 1.0
},
{
"player_id": "641355",
"player_name": "Cody Bellinger",
"position": "LF",
"weight": 4.0,
"quality": 0.7677941650289404,
"contact": 1.053907167114367,
"power": 0.41878343444739197,
"discipline": 1.1772591947348043,
"xwoba": 0.375,
"recent_xwoba": 0.375,
"barrel": 8.0,
"ab_hard_contact": 0.7771924984716465,
"ab_bat_speed": 69.28407278806584,
"ab_strikeout_rate": 0.13055555555555556,
"available": 1.0
},
{
"player_id": "502671",
"player_name": "Paul Goldschmidt",
"position": "DH",
"weight": 4.0,
"quality": 0.26622931187803894,
"contact": 0.6621857123713594,
"power": 0.8034141701020415,
"discipline": 0.05164808362369342,
"xwoba": 0.363,
"recent_xwoba": 0.363,
"barrel": 12.0,
"ab_hard_contact": 0.3067595925170054,
"ab_bat_speed": 69.01389880952381,
"ab_strikeout_rate": 0.2095238095238095,
"available": 1.0
},
{
"player_id": "641555",
"player_name": "J.C. Escarra",
"position": "C",
"weight": 3.0,
"quality": -0.19680630939257177,
"contact": -0.9144737442612938,
"power": -0.8348341708572296,
"discipline": -0.37048419150858164,
"xwoba": 0.261,
"recent_xwoba": 0.261,
"barrel": 3.4,
"ab_hard_contact": -0.19496913143031364,
"ab_bat_speed": 67.34285130718955,
"ab_strikeout_rate": 0.22037037037037038,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "663542",
"player_name": "Bryan Hudson",
"quality": -0.0017804816357515148,
"contact": 0.15487266073714284,
"command": -0.16372222222222232,
"movement": -0.09397224765097437,
"xwoba": 0.298,
"whiff": 22.9,
"faced_est_woba": 0.307470946875,
"faced_launch_speed": 81.38993923611112,
"faced_strikeout_rate": 0.20208333333333334,
"faced_run_exp": -0.017708201347552913
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Season quality guardrail cap enforced after calibration. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 4,
"home_runs": 3,
"predicted_score_text": "CHW 4 - 3 NYY",
"confidence": 0.565798,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": true,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "CHW 4 - 3 NYY",
"winner": "CHW"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "CHW 4 - 3 NYY",
"winner": "CHW"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away CHW | True | 1.0162 | 1.0183 | 0.8889 | 8 | 1 |
| Home NYY | True | 1.0167 | 1.0167 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Miguel Vargas | 27 | 1.1303 | 1.7370 | positive_batter_regression | 0.4010 | 0.2730 | 0.5420 | 14.40 | 45.20 | 90.10 | 19.70 | 20.20 | 16.40 | 14.50 | 0.8571 |
| 3B | Colson Montgomery | 36 | 1.0374 | 0.4986 | neutral | 0.3280 | 0.2170 | 0.4470 | 13.90 | 46.70 | 90.20 | 20.40 | 37.70 | 30.20 | 9 | -0.7143 |
| DH | Randal Grichuk | 290 | 1.0632 | 0.8423 | positive_batter_regression | 0.3930 | 0.3180 | 0.5700 | 13.90 | 47.20 | 91 | 14.50 | 23.70 | 22.20 | 4 | 1.1143 |
| 2B | Chase Meidroth | 68 | 0.9688 | -0.4164 | negative_batter_regression | 0.2930 | 0.2340 | 0.3360 | 5.10 | 36 | 87.80 | 7 | 19.60 | 22.70 | 9 | -1.1429 |
| C | Edgar Quero | 533 | 0.9654 | -0.4616 | neutral | 0.2530 | 0.2000 | 0.2750 | 1.90 | 34.30 | 91 | 9.20 | 24.80 | 24.50 | 7.50 | 0.4286 |
| RF | Braden Montgomery | 371 | 1.0137 | 0.1828 | neutral | 0.2990 | 0.2560 | 0.4120 | 10.50 | 47.40 | 91.90 | 4.80 | 26 | 28.60 | 3.60 | 0.4000 |
| CF | Tristan Peters | 44 | 0.9826 | -0.2314 | negative_batter_regression | 0.3050 | 0.2520 | 0.3690 | 4.80 | 27.40 | 86.40 | 13.50 | 22.70 | 18.40 | 7.50 | -1.4000 |
| SS | Luisangel Acuña | 501 | 0.9847 | -0.2044 | positive_batter_regression | 0.2670 | 0.2390 | 0.3050 | 3 | 38.40 | 89.40 | 1.80 | 24.10 | 17.70 | 5.40 | 1.4571 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LF | Cody Bellinger | 4 | 1.0820 | 1.0927 | neutral | 0.3750 | 0.2930 | 0.4610 | 8 | 37 | 89.30 | 19.10 | 17.70 | 12.30 | 13.60 | 0.0286 |
| 1B | Ben Rice | 38 | 1.1086 | 1.4475 | neutral | 0.3930 | 0.2840 | 0.5270 | 15.40 | 48.40 | 92.10 | 14.40 | 26.20 | 23.10 | 13.40 | -0.8571 |
| DH | Paul Goldschmidt | 75 | 1.0317 | 0.4231 | negative_batter_regression | 0.3630 | 0.2740 | 0.4950 | 12 | 40.60 | 87.90 | 16.50 | 23.60 | 18.40 | 8.10 | -1.0286 |
| RF | Jasson Domínguez | 254 | 0.9963 | -0.0500 | neutral | 0.3060 | 0.2900 | 0.3450 | 0 | 37.80 | 90.10 | 8.70 | 28.20 | 13 | 4.30 | 0.0571 |
| 2B | Jazz Chisholm Jr. | 138 | 0.9915 | -0.1127 | neutral | 0.3000 | 0.2130 | 0.3660 | 8.90 | 40.60 | 90.10 | 15.10 | 32 | 28.50 | 11.30 | -0.5714 |
| SS | José Caballero | 85 | 0.9639 | -0.4816 | negative_batter_regression | 0.2890 | 0.2420 | 0.3480 | 3.10 | 25.80 | 83.60 | 10.80 | 25.40 | 19.50 | 5.50 | -1 |
| CF | Spencer Jones | 282 | 0.9889 | -0.1479 | negative_batter_regression | 0.2870 | 0.1890 | 0.3370 | 4.20 | 75 | 97.50 | 15.10 | 37.10 | 39.60 | 13.20 | -1.2000 |
| 3B | Ryan McMahon | 411 | 1.0108 | 0.1443 | neutral | 0.2970 | 0.2280 | 0.3890 | 10.30 | 49.20 | 90.60 | 12 | 32.20 | 30.60 | 7.80 | 0.5714 |
| C | J.C. Escarra | 326 | 0.9770 | -0.3063 | neutral | 0.2610 | 0.2080 | 0.3050 | 3.40 | 33.30 | 88.70 | 8.40 | 29.70 | 21.40 | 7.10 | 0.6000 |
{
"home": {
"applied": true,
"offense_factor": 1.0167,
"raw_average_factor": 1.0167,
"team_espn_average_rank": 179.22,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "LF",
"player_id": "641355",
"player_name": "Cody Bellinger",
"offense_factor": 1.082,
"quality_score": 1.0927,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641355",
"espn_id": 33912,
"player_name": "Cody Bellinger",
"team": "NYY",
"role": "batter",
"espn_rank": 4,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 4,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 261.0,
"ab_rank": 65,
"r_value": 45.0,
"r_rank": 26,
"h_value": 73.0,
"h_rank": 37,
"avg_value": 0.2796934,
"avg_rank": 34.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 3.0,
"3b_rank": 7,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 49.0,
"rbi_rank": 11,
"tb_value": 127.0,
"tb_rank": 243,
"bb_value": 42.0,
"bb_rank": 15,
"so_value": 38.0,
"so_rank": 208,
"sb_value": 8.0,
"sb_rank": 55,
"obp_value": 0.3733766,
"obp_rank": "25",
"slg_value": 0.48659,
"slg_rank": "34",
"ops_value": 0.8599666,
"ops_rank": 9.0,
"war_value": 3.91,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 230.0,
"k_percent": 12.3,
"bb_percent": 13.6,
"woba": 0.374,
"xwoba": 0.375,
"xba": 0.293,
"xslg": 0.461,
"sweet_spot_percent": 40.8,
"barrel_batted_rate": 8.0,
"hard_hit_percent": 37.0,
"exit_velocity_avg": 89.3,
"launch_angle_avg": 19.1,
"whiff_percent": 17.7,
"swing_percent": 44.7
},
"components": {
"expected_quality": 1.266,
"regression_edge": 0.0286,
"xwoba_edge": 2.0286,
"xba_edge": 1.5571,
"xslg_edge": 1.2714,
"barrel_edge": 0.2667,
"hard_hit_edge": -0.2143,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": 1.25,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "700250",
"player_name": "Ben Rice",
"offense_factor": 1.1086,
"quality_score": 1.4475,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "700250",
"espn_id": 5016968,
"player_name": "Ben Rice",
"team": "NYY",
"role": "batter",
"espn_rank": 38,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 38,
"gp_value": 67.0,
"gp_rank": 117,
"ab_value": 247.0,
"ab_rank": 96,
"r_value": 53.0,
"r_rank": 4,
"h_value": 72.0,
"h_rank": 44,
"avg_value": 0.2914979,
"avg_rank": 18.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 20.0,
"hr_rank": 5,
"rbi_value": 49.0,
"rbi_rank": 11,
"tb_value": 151.0,
"tb_rank": 120,
"bb_value": 39.0,
"bb_rank": 25,
"so_value": 67.0,
"so_rank": 54,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3896551,
"obp_rank": "11",
"slg_value": 0.611336,
"slg_rank": "2",
"ops_value": 1.0009911,
"ops_rank": 9.0,
"war_value": 2.28,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 207.0,
"k_percent": 23.1,
"bb_percent": 13.4,
"woba": 0.423,
"xwoba": 0.393,
"xba": 0.284,
"xslg": 0.527,
"sweet_spot_percent": 41.2,
"barrel_batted_rate": 15.4,
"hard_hit_percent": 48.4,
"exit_velocity_avg": 92.1,
"launch_angle_avg": 14.4,
"whiff_percent": 26.2,
"swing_percent": 42.2
},
"components": {
"expected_quality": 1.9284,
"regression_edge": -0.8571,
"xwoba_edge": 2.5,
"xba_edge": 1.3,
"xslg_edge": 2.2143,
"barrel_edge": 1.9111,
"hard_hit_edge": 1.4143,
"exit_velocity_edge": 1.32,
"sweet_spot_edge": 1.3167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "502671",
"player_name": "Paul Goldschmidt",
"offense_factor": 1.0317,
"quality_score": 0.4231,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "502671",
"espn_id": 31027,
"player_name": "Paul Goldschmidt",
"team": "NYY",
"role": "batter",
"espn_rank": 75,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 75,
"gp_value": 47.0,
"gp_rank": 251,
"ab_value": 166.0,
"ab_rank": 209,
"r_value": 26.0,
"r_rank": 158,
"h_value": 50.0,
"h_rank": 147,
"avg_value": 0.3012048,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 36.0,
"rbi_rank": 63,
"tb_value": 93.0,
"tb_rank": 644,
"bb_value": 15.0,
"bb_rank": 204,
"so_value": 34.0,
"so_rank": 240,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3675675,
"obp_rank": "-",
"slg_value": 0.5602409,
"slg_rank": "-",
"ops_value": 0.9278084,
"ops_rank": null,
"war_value": 1.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 107.0,
"k_percent": 18.4,
"bb_percent": 8.1,
"woba": 0.399,
"xwoba": 0.363,
"xba": 0.274,
"xslg": 0.495,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 12.0,
"hard_hit_percent": 40.6,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 16.5,
"whiff_percent": 23.6,
"swing_percent": 48.5
},
"components": {
"expected_quality": 1.1789,
"regression_edge": -1.0286,
"xwoba_edge": 1.6857,
"xba_edge": 1.0143,
"xslg_edge": 1.7571,
"barrel_edge": 1.1556,
"hard_hit_edge": 0.3,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": 0.5833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "691176",
"player_name": "Jasson Domínguez",
"offense_factor": 0.9963,
"quality_score": -0.05,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691176",
"espn_id": 42401,
"player_name": "Jasson Dominguez",
"team": "NYY",
"role": "batter",
"espn_rank": 254,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 254,
"gp_value": 12.0,
"gp_rank": 467,
"ab_value": 43.0,
"ab_rank": 425,
"r_value": 6.0,
"r_rank": 398,
"h_value": 9.0,
"h_rank": 421,
"avg_value": 0.2093023,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 5.0,
"rbi_rank": 401,
"tb_value": 19.0,
"tb_rank": 2019,
"bb_value": 2.0,
"bb_rank": 442,
"so_value": 6.0,
"so_rank": 488,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.2608695,
"obp_rank": "-",
"slg_value": 0.4418604,
"slg_rank": "-",
"ops_value": 0.7027299,
"ops_rank": null,
"war_value": 0.27,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 32.0,
"k_percent": 13.0,
"bb_percent": 4.3,
"woba": 0.304,
"xwoba": 0.306,
"xba": 0.29,
"xslg": 0.345,
"sweet_spot_percent": 24.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 37.8,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 8.7,
"whiff_percent": 28.2,
"swing_percent": 50.0
},
"components": {
"expected_quality": -0.1385,
"regression_edge": 0.0571,
"xwoba_edge": 0.0571,
"xba_edge": 1.4714,
"xslg_edge": -0.3857,
"barrel_edge": -1.5111,
"hard_hit_edge": -0.1,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": -1.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "665862",
"player_name": "Jazz Chisholm Jr.",
"offense_factor": 0.9915,
"quality_score": -0.1127,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665862",
"espn_id": 41433,
"player_name": "Jazz Chisholm Jr.",
"team": "NYY",
"role": "batter",
"espn_rank": 138,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 138,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 249.0,
"ab_rank": 93,
"r_value": 37.0,
"r_rank": 67,
"h_value": 57.0,
"h_rank": 109,
"avg_value": 0.2289156,
"avg_rank": 129.0,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 30.0,
"rbi_rank": 113,
"tb_value": 101.0,
"tb_rank": 475,
"bb_value": 32.0,
"bb_rank": 49,
"so_value": 81.0,
"so_rank": 19,
"sb_value": 20.0,
"sb_rank": 5,
"obp_value": 0.3169014,
"obp_rank": "104",
"slg_value": 0.4056224,
"slg_rank": "98",
"ops_value": 0.7225238,
"ops_rank": 6.0,
"war_value": 0.93,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 28.5,
"bb_percent": 11.3,
"woba": 0.32,
"xwoba": 0.3,
"xba": 0.213,
"xslg": 0.366,
"sweet_spot_percent": 28.8,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 40.6,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 15.1,
"whiff_percent": 32.0,
"swing_percent": 43.3
},
"components": {
"expected_quality": -0.0424,
"regression_edge": -0.5714,
"xwoba_edge": -0.1143,
"xba_edge": -0.7286,
"xslg_edge": -0.0857,
"barrel_edge": 0.4667,
"hard_hit_edge": 0.3,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": -0.75,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "676609",
"player_name": "José Caballero",
"offense_factor": 0.9639,
"quality_score": -0.4816,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "676609",
"espn_id": 42135,
"player_name": "Jose Caballero",
"team": "NYY",
"role": "batter",
"espn_rank": 85,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 85,
"gp_value": 61.0,
"gp_rank": 168,
"ab_value": 201.0,
"ab_rank": 154,
"r_value": 28.0,
"r_rank": 139,
"h_value": 53.0,
"h_rank": 132,
"avg_value": 0.2636815,
"avg_rank": 60.0,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 25.0,
"rbi_rank": 161,
"tb_value": 84.0,
"tb_rank": 1002,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 43.0,
"so_rank": 171,
"sb_value": 15.0,
"sb_rank": 10,
"obp_value": 0.3181818,
"obp_rank": "99",
"slg_value": 0.4179104,
"slg_rank": "86",
"ops_value": 0.7360922,
"ops_rank": 185.0,
"war_value": 1.4,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 163.0,
"k_percent": 19.5,
"bb_percent": 5.5,
"woba": 0.324,
"xwoba": 0.289,
"xba": 0.242,
"xslg": 0.348,
"sweet_spot_percent": 31.9,
"barrel_batted_rate": 3.1,
"hard_hit_percent": 25.8,
"exit_velocity_avg": 83.6,
"launch_angle_avg": 10.8,
"whiff_percent": 25.4,
"swing_percent": 49.0
},
"components": {
"expected_quality": -0.593,
"regression_edge": -1.0,
"xwoba_edge": -0.4286,
"xba_edge": 0.1,
"xslg_edge": -0.3429,
"barrel_edge": -0.8222,
"hard_hit_edge": -1.8143,
"exit_velocity_edge": -2.08,
"sweet_spot_edge": -0.2333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "682987",
"player_name": "Spencer Jones",
"offense_factor": 0.9889,
"quality_score": -0.1479,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "682987",
"espn_id": 4867424,
"player_name": "Spencer Jones",
"team": "NYY",
"role": "batter",
"espn_rank": 282,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 282,
"gp_value": 18.0,
"gp_rank": 429,
"ab_value": 46.0,
"ab_rank": 418,
"r_value": 4.0,
"r_rank": 435,
"h_value": 11.0,
"h_rank": 405,
"avg_value": 0.2391304,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 7.0,
"rbi_rank": 365,
"tb_value": 18.0,
"tb_rank": 2126,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 21.0,
"so_rank": 344,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3396226,
"obp_rank": "-",
"slg_value": 0.3913043,
"slg_rank": "-",
"ops_value": 0.7309269,
"ops_rank": null,
"war_value": 0.17,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 26.0,
"k_percent": 39.6,
"bb_percent": 13.2,
"woba": 0.329,
"xwoba": 0.287,
"xba": 0.189,
"xslg": 0.337,
"sweet_spot_percent": 28.0,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 75.0,
"exit_velocity_avg": 97.5,
"launch_angle_avg": 15.1,
"whiff_percent": 37.1,
"swing_percent": 52.8
},
"components": {
"expected_quality": -0.1869,
"regression_edge": -1.2,
"xwoba_edge": -0.4857,
"xba_edge": -1.4143,
"xslg_edge": -0.5,
"barrel_edge": -0.5778,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": -0.8833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "641857",
"player_name": "Ryan McMahon",
"offense_factor": 1.0108,
"quality_score": 0.1443,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641857",
"espn_id": 33247,
"player_name": "Ryan McMahon",
"team": "NYY",
"role": "batter",
"espn_rank": 411,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 411,
"gp_value": 66.0,
"gp_rank": 132,
"ab_value": 177.0,
"ab_rank": 195,
"r_value": 18.0,
"r_rank": 232,
"h_value": 37.0,
"h_rank": 220,
"avg_value": 0.2090395,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 22.0,
"rbi_rank": 190,
"tb_value": 62.0,
"tb_rank": 1272,
"bb_value": 15.0,
"bb_rank": 204,
"so_value": 59.0,
"so_rank": 89,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.2708333,
"obp_rank": "-",
"slg_value": 0.3502824,
"slg_rank": "-",
"ops_value": 0.6211157,
"ops_rank": null,
"war_value": -0.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 149.0,
"k_percent": 30.6,
"bb_percent": 7.8,
"woba": 0.277,
"xwoba": 0.297,
"xba": 0.228,
"xslg": 0.389,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 49.2,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 12.0,
"whiff_percent": 32.2,
"swing_percent": 46.1
},
"components": {
"expected_quality": 0.1547,
"regression_edge": 0.5714,
"xwoba_edge": -0.2,
"xba_edge": -0.3,
"xslg_edge": 0.2429,
"barrel_edge": 0.7778,
"hard_hit_edge": 1.5286,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.65,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "641555",
"player_name": "J.C. Escarra",
"offense_factor": 0.977,
"quality_score": -0.3063,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641555",
"espn_id": 41644,
"player_name": "J.C. Escarra",
"team": "NYY",
"role": "batter",
"espn_rank": 326,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 326,
"gp_value": 29.0,
"gp_rank": 364,
"ab_value": 77.0,
"ab_rank": 366,
"r_value": 8.0,
"r_rank": 370,
"h_value": 15.0,
"h_rank": 370,
"avg_value": 0.1948051,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 7.0,
"rbi_rank": 365,
"tb_value": 22.0,
"tb_rank": 2096,
"bb_value": 6.0,
"bb_rank": 359,
"so_value": 18.0,
"so_rank": 370,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.25,
"obp_rank": "-",
"slg_value": 0.2857142,
"slg_rank": "-",
"ops_value": 0.5357142,
"ops_rank": null,
"war_value": 0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 60.0,
"k_percent": 21.4,
"bb_percent": 7.1,
"woba": 0.24,
"xwoba": 0.261,
"xba": 0.208,
"xslg": 0.305,
"sweet_spot_percent": 28.3,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 88.7,
"launch_angle_avg": 8.4,
"whiff_percent": 29.7,
"swing_percent": 45.0
},
"components": {
"expected_quality": -0.8891,
"regression_edge": 0.6,
"xwoba_edge": -1.2286,
"xba_edge": -0.8714,
"xslg_edge": -0.9571,
"barrel_edge": -0.7556,
"hard_hit_edge": -0.7429,
"exit_velocity_edge": -0.04,
"sweet_spot_edge": -0.8333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0162,
"raw_average_factor": 1.0183,
"team_espn_average_rank": 233.75,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "1B",
"player_id": "678246",
"player_name": "Miguel Vargas",
"offense_factor": 1.1303,
"quality_score": 1.737,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "678246",
"espn_id": 42453,
"player_name": "Miguel Vargas",
"team": "CHW",
"role": "batter",
"espn_rank": 27,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 27,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 258.0,
"ab_rank": 75,
"r_value": 51.0,
"r_rank": 7,
"h_value": 63.0,
"h_rank": 84,
"avg_value": 0.244186,
"avg_rank": 102.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 16.0,
"hr_rank": 17,
"rbi_value": 44.0,
"rbi_rank": 23,
"tb_value": 125.0,
"tb_rank": 359,
"bb_value": 45.0,
"bb_rank": 12,
"so_value": 51.0,
"so_rank": 129,
"sb_value": 10.0,
"sb_rank": 37,
"obp_value": 0.3645161,
"obp_rank": "35",
"slg_value": 0.4844961,
"slg_rank": "36",
"ops_value": 0.8490122,
"ops_rank": 71.0,
"war_value": 2.55,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 234.0,
"k_percent": 16.4,
"bb_percent": 14.5,
"woba": 0.371,
"xwoba": 0.401,
"xba": 0.273,
"xslg": 0.542,
"sweet_spot_percent": 42.1,
"barrel_batted_rate": 14.4,
"hard_hit_percent": 45.2,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 19.7,
"whiff_percent": 20.2,
"swing_percent": 44.5
},
"components": {
"expected_quality": 1.8802,
"regression_edge": 0.8571,
"xwoba_edge": 2.5,
"xba_edge": 0.9857,
"xslg_edge": 2.4286,
"barrel_edge": 1.6889,
"hard_hit_edge": 0.9571,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": 1.4667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "3B",
"player_id": "695657",
"player_name": "Colson Montgomery",
"offense_factor": 1.0374,
"quality_score": 0.4986,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695657",
"espn_id": 4872685,
"player_name": "Colson Montgomery",
"team": "CHW",
"role": "batter",
"espn_rank": 36,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 36,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 253.0,
"ab_rank": 87,
"r_value": 35.0,
"r_rank": 73,
"h_value": 57.0,
"h_rank": 109,
"avg_value": 0.2252964,
"avg_rank": 136.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 19.0,
"hr_rank": 9,
"rbi_value": 44.0,
"rbi_rank": 23,
"tb_value": 127.0,
"tb_rank": 531,
"bb_value": 26.0,
"bb_rank": 82,
"so_value": 87.0,
"so_rank": 12,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3194444,
"obp_rank": "98",
"slg_value": 0.5019762,
"slg_rank": "28",
"ops_value": 0.8214206,
"ops_rank": 126.0,
"war_value": 2.3,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 221.0,
"k_percent": 30.2,
"bb_percent": 9.0,
"woba": 0.353,
"xwoba": 0.328,
"xba": 0.217,
"xslg": 0.447,
"sweet_spot_percent": 34.9,
"barrel_batted_rate": 13.9,
"hard_hit_percent": 46.7,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 20.4,
"whiff_percent": 37.7,
"swing_percent": 52.4
},
"components": {
"expected_quality": 0.6961,
"regression_edge": -0.7143,
"xwoba_edge": 0.6857,
"xba_edge": -0.6143,
"xslg_edge": 1.0714,
"barrel_edge": 1.5778,
"hard_hit_edge": 1.1714,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": 0.2667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "DH",
"player_id": "545341",
"player_name": "Randal Grichuk",
"offense_factor": 1.0632,
"quality_score": 0.8423,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "545341",
"espn_id": 31399,
"player_name": "Randal Grichuk",
"team": "CHW",
"role": "batter",
"espn_rank": 290,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 290,
"gp_value": 45.0,
"gp_rank": 266,
"ab_value": 93.0,
"ab_rank": 338,
"r_value": 17.0,
"r_rank": 240,
"h_value": 25.0,
"h_rank": 297,
"avg_value": 0.2688172,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 235,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 19.0,
"rbi_rank": 216,
"tb_value": 49.0,
"tb_rank": 1388,
"bb_value": 4.0,
"bb_rank": 406,
"so_value": 22.0,
"so_rank": 331,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3030303,
"obp_rank": "-",
"slg_value": 0.5268817,
"slg_rank": "-",
"ops_value": 0.829912,
"ops_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 70.0,
"k_percent": 22.2,
"bb_percent": 4.0,
"woba": 0.354,
"xwoba": 0.393,
"xba": 0.318,
"xslg": 0.57,
"sweet_spot_percent": 48.6,
"barrel_batted_rate": 13.9,
"hard_hit_percent": 47.2,
"exit_velocity_avg": 91.0,
"launch_angle_avg": 14.5,
"whiff_percent": 23.7,
"swing_percent": 49.0
},
"components": {
"expected_quality": 1.9951,
"regression_edge": 1.1143,
"xwoba_edge": 2.5,
"xba_edge": 2.2714,
"xslg_edge": 2.5,
"barrel_edge": 1.5778,
"hard_hit_edge": 1.2429,
"exit_velocity_edge": 0.88,
"sweet_spot_edge": 2.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "805367",
"player_name": "Chase Meidroth",
"offense_factor": 0.9688,
"quality_score": -0.4164,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "805367",
"espn_id": 5136929,
"player_name": "Chase Meidroth",
"team": "CHW",
"role": "batter",
"espn_rank": 68,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 68,
"gp_value": 70.0,
"gp_rank": 72,
"ab_value": 263.0,
"ab_rank": 59,
"r_value": 43.0,
"r_rank": 34,
"h_value": 73.0,
"h_rank": 37,
"avg_value": 0.2775665,
"avg_rank": 40.0,
"2b_value": 14.0,
"2b_rank": 45,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 25.0,
"rbi_rank": 161,
"tb_value": 105.0,
"tb_rank": 938,
"bb_value": 27.0,
"bb_rank": 75,
"so_value": 68.0,
"so_rank": 50,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3469387,
"obp_rank": "58",
"slg_value": 0.3992395,
"slg_rank": "106",
"ops_value": 0.7461782,
"ops_rank": 164.0,
"war_value": 1.69,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.333,
"xwoba": 0.293,
"xba": 0.234,
"xslg": 0.336,
"sweet_spot_percent": 32.8,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 36.0,
"exit_velocity_avg": 87.8,
"launch_angle_avg": 7.0,
"whiff_percent": 19.6,
"swing_percent": 41.1
},
"components": {
"expected_quality": -0.3004,
"regression_edge": -1.1429,
"xwoba_edge": -0.3143,
"xba_edge": -0.1286,
"xslg_edge": -0.5143,
"barrel_edge": -0.3778,
"hard_hit_edge": -0.3571,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -0.0833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "700337",
"player_name": "Edgar Quero",
"offense_factor": 0.9654,
"quality_score": -0.4616,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "700337",
"espn_id": 4917824,
"player_name": "Edgar Quero",
"team": "CHW",
"role": "batter",
"espn_rank": 533,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 533,
"gp_value": 51.0,
"gp_rank": 228,
"ab_value": 137.0,
"ab_rank": 258,
"r_value": 12.0,
"r_rank": 310,
"h_value": 27.0,
"h_rank": 283,
"avg_value": 0.1970802,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 15.0,
"rbi_rank": 262,
"tb_value": 34.0,
"tb_rank": 2004,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 39.0,
"so_rank": 204,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2675159,
"obp_rank": "-",
"slg_value": 0.2481751,
"slg_rank": "-",
"ops_value": 0.515691,
"ops_rank": null,
"war_value": -0.53,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 120.0,
"k_percent": 24.5,
"bb_percent": 7.5,
"woba": 0.238,
"xwoba": 0.253,
"xba": 0.2,
"xslg": 0.275,
"sweet_spot_percent": 26.7,
"barrel_batted_rate": 1.9,
"hard_hit_percent": 34.3,
"exit_velocity_avg": 91.0,
"launch_angle_avg": 9.2,
"whiff_percent": 24.8,
"swing_percent": 48.9
},
"components": {
"expected_quality": -1.0537,
"regression_edge": 0.4286,
"xwoba_edge": -1.4571,
"xba_edge": -1.1,
"xslg_edge": -1.3857,
"barrel_edge": -1.0889,
"hard_hit_edge": -0.6,
"exit_velocity_edge": 0.88,
"sweet_spot_edge": -1.1,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "695731",
"player_name": "Braden Montgomery",
"offense_factor": 1.0137,
"quality_score": 0.1828,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695731",
"espn_id": 4950345,
"player_name": "Braden Montgomery",
"team": "CHW",
"role": "batter",
"espn_rank": 371,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 371,
"gp_value": 7.0,
"gp_rank": 514,
"ab_value": 27.0,
"ab_rank": 476,
"r_value": 4.0,
"r_rank": 435,
"h_value": 6.0,
"h_rank": 457,
"avg_value": 0.2222222,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 4.0,
"rbi_rank": 429,
"tb_value": 11.0,
"tb_rank": 2327,
"bb_value": 1.0,
"bb_rank": 472,
"so_value": 8.0,
"so_rank": 460,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.25,
"obp_rank": "-",
"slg_value": 0.4074074,
"slg_rank": "-",
"ops_value": 0.6574074,
"ops_rank": null,
"war_value": -0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 28.6,
"bb_percent": 3.6,
"woba": 0.285,
"xwoba": 0.299,
"xba": 0.256,
"xslg": 0.412,
"sweet_spot_percent": 42.1,
"barrel_batted_rate": 10.5,
"hard_hit_percent": 47.4,
"exit_velocity_avg": 91.9,
"launch_angle_avg": 4.8,
"whiff_percent": 26.0,
"swing_percent": 50.5
},
"components": {
"expected_quality": 0.4073,
"regression_edge": 0.4,
"xwoba_edge": -0.1429,
"xba_edge": 0.5,
"xslg_edge": 0.5714,
"barrel_edge": 0.8222,
"hard_hit_edge": 1.2714,
"exit_velocity_edge": 1.24,
"sweet_spot_edge": 1.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "671976",
"player_name": "Tristan Peters",
"offense_factor": 0.9826,
"quality_score": -0.2314,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "671976",
"espn_id": 5085893,
"player_name": "Tristan Peters",
"team": "CHW",
"role": "batter",
"espn_rank": 44,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 44,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 180.0,
"ab_rank": 188,
"r_value": 22.0,
"r_rank": 191,
"h_value": 53.0,
"h_rank": 132,
"avg_value": 0.2944444,
"avg_rank": null,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 21.0,
"rbi_rank": 194,
"tb_value": 81.0,
"tb_rank": 922,
"bb_value": 15.0,
"bb_rank": 204,
"so_value": 37.0,
"so_rank": 218,
"sb_value": 4.0,
"sb_rank": 124,
"obp_value": 0.3553299,
"obp_rank": "-",
"slg_value": 0.45,
"slg_rank": "-",
"ops_value": 0.8053299,
"ops_rank": null,
"war_value": 2.15,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 141.0,
"k_percent": 18.4,
"bb_percent": 7.5,
"woba": 0.354,
"xwoba": 0.305,
"xba": 0.252,
"xslg": 0.369,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 27.4,
"exit_velocity_avg": 86.4,
"launch_angle_avg": 13.5,
"whiff_percent": 22.7,
"swing_percent": 56.9
},
"components": {
"expected_quality": -0.1919,
"regression_edge": -1.4,
"xwoba_edge": 0.0286,
"xba_edge": 0.3857,
"xslg_edge": -0.0429,
"barrel_edge": -0.4444,
"hard_hit_edge": -1.5857,
"exit_velocity_edge": -0.96,
"sweet_spot_edge": -0.1,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "682668",
"player_name": "Luisangel Acuña",
"offense_factor": 0.9847,
"quality_score": -0.2044,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "682668",
"espn_id": 42411,
"player_name": "Luisangel Acuna",
"team": "CHW",
"role": "batter",
"espn_rank": 501,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 501,
"gp_value": 51.0,
"gp_rank": 228,
"ab_value": 119.0,
"ab_rank": 283,
"r_value": 13.0,
"r_rank": 302,
"h_value": 24.0,
"h_rank": 306,
"avg_value": 0.2016806,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 8.0,
"rbi_rank": 346,
"tb_value": 26.0,
"tb_rank": 2404,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 23.0,
"so_rank": 322,
"sb_value": 12.0,
"sb_rank": 21,
"obp_value": 0.248062,
"obp_rank": "-",
"slg_value": 0.2184873,
"slg_rank": "-",
"ops_value": 0.4665493,
"ops_rank": null,
"war_value": -0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 104.0,
"k_percent": 17.7,
"bb_percent": 5.4,
"woba": 0.216,
"xwoba": 0.267,
"xba": 0.239,
"xslg": 0.305,
"sweet_spot_percent": 19.2,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 38.4,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 1.8,
"whiff_percent": 24.1,
"swing_percent": 49.9
},
"components": {
"expected_quality": -0.7399,
"regression_edge": 1.4571,
"xwoba_edge": -1.0571,
"xba_edge": 0.0143,
"xslg_edge": -0.9571,
"barrel_edge": -0.8444,
"hard_hit_edge": -0.0143,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": -2.35,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away CHW | True | 78 | 0.0792 | 0.4500 | 0.9933 | 0.9864 | 1.0072 | 0.9524 | neutral | 0.2980 | 0.2850 | 20 | 10 | 22.90 | 3.20 | 35.10 | |
| Home NYY | True | 141 | -0.0733 | 0.9120 | 1.0062 | 1.0255 | 0.9580 | 1.0997 | neutral | 0.3230 | 0.3120 | 26.60 | 6.90 | 26.50 | 12 | 41.60 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away CHW | True | None | 15 | 88.86 | 2149 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0488 | |
| Home NYY | True | None | 95 | 89.34 | 2305 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0217 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0057 |
| home_runs_vs_away_pitcher | 0.9970 |
| home_pitcher_quality_edge | -0.1525 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "677960",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 228.0,
"k_percent": 26.6,
"bb_percent": 6.9,
"woba": 0.312,
"xwoba": 0.323,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 12.0,
"hard_hit_percent": 41.6,
"avg_best_speed": 77.3552,
"avg_hyper_speed": 94.9106,
"whiff_percent": 26.5,
"swing_percent": 44.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.2786,
"command_and_miss": 0.4186,
"regression_edge": -0.3143,
"xwoba_edge": -0.2286,
"barrel_edge": -1.0444,
"hard_hit_edge": -0.4714,
"whiff_edge": 0.1143,
"bb_edge": 0.575,
"pitch_design_score": -0.0217
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "677960",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 95,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 89.34212627065457,
"release_spin_rate": 2304.6615057998483,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 89.34212627065457,
"release_spin_rate": 2304.6615057998483,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3421,
"release_spin_rate": 2304.6615,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0217,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1547,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0733,
"sample_weight": 0.912,
"run_prevention_factor": 1.0062,
"strikeout_factor": 1.0255,
"walk_factor": 0.958,
"homer_factor": 1.0997,
"woba_minus_xwoba": -0.011,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677960",
"espn_id": 41178,
"player_name": "Ryan Weathers",
"team": "NYY",
"role": "pitcher",
"espn_rank": 141,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 141,
"gp_value": 13.0,
"gp_rank": 329,
"gs_value": 13.0,
"gs_rank": 69,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 4.3587,
"era_rank": 55.0,
"w_value": 2.0,
"w_rank": 180,
"l_value": 5.0,
"l_rank": 36,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 74.1,
"ip_rank": 59,
"h_value": 66.0,
"h_rank": 74,
"er_value": 36.0,
"er_rank": 46,
"hr_value": 15.0,
"hr_rank": 10,
"bb_value": 21.0,
"bb_rank": 109,
"k_value": 81.0,
"k_rank": 27,
"k_per_9_value": 9.807175,
"k_per_9_rank": 12,
"whip_value": 1.1704,
"whip_rank": 32.0,
"war_value": 0.73,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "663542",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 92.0,
"k_percent": 20.0,
"bb_percent": 10.0,
"woba": 0.285,
"xwoba": 0.298,
"sweet_spot_percent": 30.9,
"barrel_batted_rate": 3.2,
"hard_hit_percent": 35.1,
"avg_best_speed": 77.8823,
"avg_hyper_speed": 93.2665,
"whiff_percent": 22.9,
"swing_percent": 46.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5459,
"command_and_miss": -0.3407,
"regression_edge": -0.3714,
"xwoba_edge": 0.4857,
"barrel_edge": 0.9111,
"hard_hit_edge": 0.4571,
"whiff_edge": -0.4,
"bb_edge": -0.2,
"pitch_design_score": -0.0488
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663542",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8567,
"release_spin_rate": 2148.5033,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0488,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3489,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.0792,
"sample_weight": 0.45,
"run_prevention_factor": 0.9933,
"strikeout_factor": 0.9864,
"walk_factor": 1.0072,
"homer_factor": 0.9524,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663542",
"espn_id": 4991171,
"player_name": "Bryan Hudson",
"team": "CHW",
"role": "pitcher",
"espn_rank": 78,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 78,
"gp_value": 34.0,
"gp_rank": 13,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.4545,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 3.0,
"sv_rank": 45,
"hld_value": 4.0,
"hld_rank": 121,
"ip_value": 33.0,
"ip_rank": 208,
"h_value": 28.0,
"h_rank": 233,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 14.0,
"bb_rank": 209,
"k_value": 28.0,
"k_rank": 268,
"k_per_9_value": 7.6363635,
"k_per_9_rank": 34,
"whip_value": 1.2727,
"whip_rank": null,
"war_value": 1.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0057,
"home_runs_vs_away_pitcher": 0.997,
"home_pitcher_quality_edge": -0.1525
},
"score_before": {
"away_runs": 3.3419,
"home_runs": 1.4335
},
"score_after": {
"away_runs": 3.3608,
"home_runs": 1.4292,
"home_win_probability": 0.3331
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away CHW | 21-46 | 0.313 | 1.30 | 2.30 | -68 | cold | strong | |
| Home NYY | 19-38 | 0.333 | 1.60 | 2.80 | -69 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away CHW | 38-34 | 0.528 | -3 | -0.042 | True |
| Home NYY | 45-27 | 0.625 | 122 | 1.694 | True |
| Signal | - | - | 1.736 | 1.882 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target CHW | - | - | 4 | - | - | - | - |
| Game target NYY | - | - | 3 | - | - | - | - |
| Player finalized CHW | 31 | 9 | 4 | 0 | 1 | 1 | 9 |
| Player finalized NYY | 32 | 9 | 6 | 0 | 6 | 3 | 9 |
| Player model fractional CHW | 30.19 | 6.76 | 3.84 | 1.04 | 3.66 | 2.51 | 7.56 |
| Player model fractional NYY | 31.75 | 8.10 | 4.81 | 1.58 | 5.30 | 3.25 | 7.56 |
| Simulation box CHW | 33 | 7 | 4 | 1 | 4 | 2 | 7 |
| Simulation box NYY | 37 | 10 | 3 | 0 | 3 | 4 | 8 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away CHW | Starter | Bryan Hudson | 5 | 0 | 4 | 3 | 3 | 3.58 | 1.29 | True |
| Away CHW | Middle Reliever | Brandon Eisert | 1 | 0 | 2 | 0 | 0 | 3.58 | 1.13 | True |
| Away CHW | Middle Reliever | Grant Taylor | 1 | 0 | 0 | 1 | 0 | 3.64 | 1.27 | True |
| Away CHW | Middle Reliever | Sean Newcomb | 1 | 2 | 1 | 4 | 1 | 4.78 | 1.37 | True |
| Away CHW | Middle Reliever | Seranthony Domínguez | 1 | 1 | 1 | 2 | 0 | 4.96 | 1.42 | True |
| Home NYY | Starter | Ryan Weathers | 5.20 | 4 | 4 | 6 | 2 | 5.18 | 1.23 | True |
| Home NYY | Middle Reliever | Camilo Doval | 1 | 0 | 1 | 0 | 0 | 3.49 | 1.25 | True |
| Home NYY | Middle Reliever | David Bednar | 1.10 | 0 | 0 | 1 | 0 | 3.10 | 1.14 | True |
| Home NYY | Middle Reliever | Fernando Cruz | 1 | 0 | 2 | 0 | 0 | 2.98 | 1.28 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | CHW | batter | 1B | Miguel Vargas | better | 10 | 5 | 5 | 6 | 4 | predicted_RBI | 2.5000 | boost | better |
| home | NYY | batter | 3B | Ryan McMahon | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 2.0170 | boost | worse |
| away | CHW | pitcher | Starter | Bryan Hudson | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -2.0000 | deboost | worse |
| home | NYY | batter | C | J.C. Escarra | better | 11 | 6 | 5 | 7 | 4 | predicted_2B | 1.8000 | boost | better |
| away | CHW | batter | SS | Luisangel Acuña | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.4770 | boost | worse |
| home | NYY | batter | LF | Cody Bellinger | worse | 10 | 5 | 5 | 4 | 6 | predicted_SO | 1.4650 | boost | worse |
| away | CHW | batter | CF | Tristan Peters | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.4030 | boost | worse |
| home | NYY | batter | CF | Spencer Jones | better | 11 | 8 | 3 | 9 | 2 | predicted_AB | 1.4000 | boost | better |
| home | NYY | batter | 2B | Jazz Chisholm Jr. | better | 11 | 9 | 2 | 10 | 1 | predicted_SO | -1.1910 | deboost | better |
| home | NYY | batter | DH | Paul Goldschmidt | worse | 9 | 3 | 6 | 4 | 5 | predicted_AB | 1.1800 | boost | better |
| home | NYY | batter | SS | José Caballero | worse | 11 | 4 | 7 | 5 | 6 | predicted_H | 1.1800 | boost | better |
| away | CHW | batter | LF | Junior Perez | worse | 11 | 4 | 7 | 3 | 8 | predicted_H | 1.1550 | boost | better |
| home | NYY | batter | 1B | Ben Rice | worse | 10 | 4 | 6 | 4 | 6 | predicted_H | -1.0300 | deboost | worse |
| away | CHW | batter | 2B | Chase Meidroth | worse | 11 | 3 | 8 | 4 | 7 | predicted_SO | -0.9860 | deboost | better |
| away | CHW | batter | C | Edgar Quero | worse | 10 | 1 | 9 | 2 | 8 | predicted_AB | 0.9560 | boost | better |
| away | CHW | pitcher | Middle Reliever | Sean Newcomb | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.9000 | boost | better |
| away | CHW | pitcher | Middle Reliever | Seranthony Domínguez | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.9000 | boost | better |
| away | CHW | batter | 3B | Colson Montgomery | worse | 11 | 2 | 9 | 3 | 8 | predicted_H | -0.8700 | deboost | worse |
| home | NYY | batter | RF | Jasson Domínguez | worse | 10 | 5 | 5 | 4 | 6 | predicted_BB | 0.8180 | boost | better |
| away | CHW | batter | RF | Braden Montgomery | worse | 11 | 3 | 8 | 4 | 7 | predicted_2B | 0.7140 | boost | better |
| away | CHW | batter | DH | Randal Grichuk | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_SO | -0.5910 | deboost | better |
| home | NYY | pitcher | Starter | Ryan Weathers | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | NYY | pitcher | Middle Reliever | David Bednar | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Bryan Hudson |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.0792 |
| ESPN Rank | 78 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0488 |
| Avg Velo | 88.8567 |
| Avg Spin | 2148.5033 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 0 |
| Pre H | 3 |
| Pre BB | 3 |
| Pre SO | 4 |
| Season ERA | 1.5652 |
| Season WHIP | 1.3478 |
| Role Avg IP | 1 |
| Recent Avg IP | 1 |
| Last Start IP | 1 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"opponent": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"edges": {
"quality_edge": -0.4015,
"offense_edge": 0.0291,
"opponent_offense_edge": 0.1096,
"defense_strength": -0.0685,
"opponent_defense_weakness": -0.2441,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9775,
"run_prevention": 1.0445,
"strikeout": 0.9792
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663542",
"profile": {
"available": true,
"pitcher_id": "663542",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 92.0,
"k_percent": 20.0,
"bb_percent": 10.0,
"woba": 0.285,
"xwoba": 0.298,
"sweet_spot_percent": 30.9,
"barrel_batted_rate": 3.2,
"hard_hit_percent": 35.1,
"avg_best_speed": 77.8823,
"avg_hyper_speed": 93.2665,
"whiff_percent": 22.9,
"swing_percent": 46.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5459,
"command_and_miss": -0.3407,
"regression_edge": -0.3714,
"xwoba_edge": 0.4857,
"barrel_edge": 0.9111,
"hard_hit_edge": 0.4571,
"whiff_edge": -0.4,
"bb_edge": -0.2,
"pitch_design_score": -0.0488
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663542",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8567,
"release_spin_rate": 2148.5033,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0488,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3489,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.0792,
"sample_weight": 0.45,
"run_prevention_factor": 0.9933,
"strikeout_factor": 0.9864,
"walk_factor": 1.0072,
"homer_factor": 0.9524,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663542",
"espn_id": 4991171,
"player_name": "Bryan Hudson",
"team": "CHW",
"role": "pitcher",
"espn_rank": 78,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 78,
"gp_value": 34.0,
"gp_rank": 13,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.4545,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 3.0,
"sv_rank": 45,
"hld_value": 4.0,
"hld_rank": 121,
"ip_value": 33.0,
"ip_rank": 208,
"h_value": 28.0,
"h_rank": 233,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 14.0,
"bb_rank": 209,
"k_value": 28.0,
"k_rank": 268,
"k_per_9_value": 7.6363635,
"k_per_9_rank": 34,
"whip_value": 1.2727,
"whip_rank": null,
"war_value": 1.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.997,
"adjusted": 0
},
"predicted_H": {
"original": 2.0,
"factor": 0.997,
"adjusted": 2
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0032,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9786,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9939,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 2,
"H": 10,
"BB": 2,
"SO": 7,
"HR": 0,
"ERA": 1.8,
"WHIP": 1.2,
"K9": 6.3,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-05-19T00:00:00"
}{
"available": true,
"pitcher_id": "663542",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8567,
"release_spin_rate": 2148.5033,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0488,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3489,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.567,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4774,
"prior_weight": 0.5226
},
"role": "pitcher",
"player_id": "663542",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 7.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 1.0,
"SO": 2.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 69.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.2,
"SO": 0.4,
"HR": 0.0,
"BF": 4.4,
"Pitches": 13.8
},
"rates": {
"ERA": 3.6,
"WHIP": 1.2,
"ER_per_IP": 0.4,
"H_per_IP": 1.0,
"BB_per_IP": 0.2,
"SO_per_IP": 0.4,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 2.0,
"SO": 7.0,
"HR": 0.0,
"BF": 42.0,
"Pitches": 147.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.2,
"SO": 0.7,
"HR": 0.0,
"BF": 4.2,
"Pitches": 14.7
},
"rates": {
"ERA": 1.8,
"WHIP": 1.2,
"ER_per_IP": 0.2,
"H_per_IP": 1.0,
"BB_per_IP": 0.2,
"SO_per_IP": 0.7,
"HR_per_IP": 0.0
}
},
"season": {
"games": 24,
"totals": {
"IP": 23.0,
"ER": 4.0,
"R": 5.0,
"H": 21.0,
"BB": 10.0,
"SO": 23.0,
"HR": 0.0,
"BF": 99.0,
"Pitches": 402.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.2083,
"H": 0.875,
"BB": 0.4167,
"SO": 0.9583,
"HR": 0.0,
"BF": 4.125,
"Pitches": 16.75
},
"rates": {
"ERA": 1.5652,
"WHIP": 1.3478,
"ER_per_IP": 0.17391,
"H_per_IP": 0.91304,
"BB_per_IP": 0.43478,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 4.0,
"predicted_ER": 1.645,
"predicted_H": 4.045,
"predicted_BB": 1.272,
"predicted_SO": 3.26,
"predicted_HR": 0.315,
"predicted_ERA": 3.5796,
"predicted_WHIP": 1.2858
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5708,
"form_weight": 0.4292,
"form_reliability": 0.4774,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.567,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4774,
"prior_weight": 0.5226
},
"applied_metrics": {
"predicted_IP": {
"model": 7.0,
"form": 4.0,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 1.645,
"final": 0.706,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 4.045,
"final": 3.4485,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 1.272,
"final": 2.2583,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 3.26,
"final": 3.6824,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.315,
"final": 0.1352,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5796,
"final": 3.5796,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2858,
"final": 1.2858,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Brandon Eisert |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1575 |
| ESPN Rank | 359 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1961 |
| Avg Velo | 86.2278 |
| Avg Spin | 1900.0916 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 3.5526 |
| Season WHIP | 1.2632 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"opponent": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"edges": {
"quality_edge": -0.4015,
"offense_edge": 0.0291,
"opponent_offense_edge": 0.1096,
"defense_strength": -0.0685,
"opponent_defense_weakness": -0.2441,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9775,
"run_prevention": 1.0445,
"strikeout": 0.9792
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "685126",
"profile": {
"available": true,
"pitcher_id": "685126",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 37.0,
"k_percent": 26.0,
"bb_percent": 8.2,
"woba": 0.348,
"xwoba": 0.285,
"sweet_spot_percent": 35.4,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 41.7,
"avg_best_speed": 79.3011,
"avg_hyper_speed": 94.2148,
"whiff_percent": 30.2,
"swing_percent": 46.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.0995,
"command_and_miss": 0.5,
"regression_edge": 1.8,
"xwoba_edge": 0.8571,
"barrel_edge": 0.2222,
"hard_hit_edge": -0.4857,
"whiff_edge": 0.6429,
"bb_edge": 0.25,
"pitch_design_score": -0.1961
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "685126",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 28,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 86.2278040716236,
"release_spin_rate": 1900.0916148915665,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 86.2278040716236,
"release_spin_rate": 1900.0916148915665,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.2278,
"release_spin_rate": 1900.0916,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1961,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4005,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.1575,
"sample_weight": 0.45,
"run_prevention_factor": 0.9866,
"strikeout_factor": 1.0206,
"walk_factor": 0.991,
"homer_factor": 0.9892,
"woba_minus_xwoba": 0.063,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "685126",
"espn_id": 4228247,
"player_name": "Brandon Eisert",
"team": "CHW",
"role": "pitcher",
"espn_rank": 359,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 359,
"gp_value": 16.0,
"gp_rank": 220,
"gs_value": 3.0,
"gs_rank": 189,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.86,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 16.2,
"ip_rank": 419,
"h_value": 17.0,
"h_rank": 386,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 6.0,
"bb_rank": 436,
"k_value": 19.0,
"k_rank": 363,
"k_per_9_value": 10.26,
"k_per_9_rank": 23,
"whip_value": 1.38,
"whip_rank": null,
"war_value": 0.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.994,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.994,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9951,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0093,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 1,
"H": 5,
"BB": 4,
"SO": 11,
"HR": 1,
"ERA": 0.870967741935484,
"WHIP": 0.870967741935484,
"K9": 9.580645161290324,
"HR9": 0.870967741935484,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-05T00:00:00"
}{
"available": true,
"pitcher_id": "685126",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 28,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 86.2278040716236,
"release_spin_rate": 1900.0916148915665,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 86.2278040716236,
"release_spin_rate": 1900.0916148915665,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.2278,
"release_spin_rate": 1900.0916,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1961,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4005,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.515,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3347,
"prior_weight": 0.6653
},
"role": "pitcher",
"player_id": "685126",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 6.0,
"HR": 1.0,
"BF": 19.0,
"Pitches": 81.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.0,
"SO": 1.2,
"HR": 0.2,
"BF": 3.8,
"Pitches": 16.2
},
"rates": {
"ERA": 1.5882,
"WHIP": 0.3529,
"ER_per_IP": 0.17647,
"H_per_IP": 0.35294,
"BB_per_IP": 0.0,
"SO_per_IP": 1.05882,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 4.0,
"SO": 11.0,
"HR": 1.0,
"BF": 40.0,
"Pitches": 188.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.4,
"SO": 1.1,
"HR": 0.1,
"BF": 4.0,
"Pitches": 18.8
},
"rates": {
"ERA": 0.871,
"WHIP": 0.871,
"ER_per_IP": 0.09677,
"H_per_IP": 0.48387,
"BB_per_IP": 0.3871,
"SO_per_IP": 1.06452,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 12,
"totals": {
"IP": 12.2,
"ER": 5.0,
"R": 5.0,
"H": 11.0,
"BB": 5.0,
"SO": 13.0,
"HR": 1.0,
"BF": 54.0,
"Pitches": 237.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4167,
"R": 0.4167,
"H": 0.9167,
"BB": 0.4167,
"SO": 1.0833,
"HR": 0.0833,
"BF": 4.5,
"Pitches": 19.75
},
"rates": {
"ERA": 3.5526,
"WHIP": 1.2632,
"ER_per_IP": 0.39474,
"H_per_IP": 0.86842,
"BB_per_IP": 0.39474,
"SO_per_IP": 1.02632,
"HR_per_IP": 0.07895
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.398,
"predicted_H": 0.816,
"predicted_BB": 0.313,
"predicted_SO": 0.977,
"predicted_HR": 0.14,
"predicted_ERA": 3.5784,
"predicted_WHIP": 1.1294
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6311,
"form_weight": 0.3689,
"form_reliability": 0.3347,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.515,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3347,
"prior_weight": 0.6653
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.398,
"final": 0.1468,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.816,
"final": 0.301,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.313,
"final": 0.1155,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.977,
"final": 1.6226,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.14,
"final": 0.0516,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5784,
"final": 3.5784,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1294,
"final": 1.1294,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Grant Taylor |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4739 |
| ESPN Rank | 89 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2754 |
| Avg Velo | 94.6463 |
| Avg Spin | 2483.6036 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.4211 |
| Season WHIP | 1.2632 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"opponent": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"edges": {
"quality_edge": -0.4015,
"offense_edge": 0.0291,
"opponent_offense_edge": 0.1096,
"defense_strength": -0.0685,
"opponent_defense_weakness": -0.2441,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9775,
"run_prevention": 1.0445,
"strikeout": 0.9792
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "691799",
"profile": {
"available": true,
"pitcher_id": "691799",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 21.0,
"k_percent": 35.1,
"bb_percent": 6.1,
"woba": 0.254,
"xwoba": 0.231,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 7.0,
"hard_hit_percent": 40.2,
"avg_best_speed": 79.3848,
"avg_hyper_speed": 93.8634,
"whiff_percent": 29.3,
"swing_percent": 50.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.1924,
"command_and_miss": 1.145,
"regression_edge": 0.6571,
"xwoba_edge": 2.4,
"barrel_edge": 0.0667,
"hard_hit_edge": -0.2714,
"whiff_edge": 0.5143,
"bb_edge": 0.775,
"pitch_design_score": 0.2754
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "691799",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 16,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 94.6463,
"release_spin_rate": 2483.6036,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.2754,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.9669,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.4739,
"sample_weight": 0.45,
"run_prevention_factor": 0.9597,
"strikeout_factor": 1.0417,
"walk_factor": 0.9721,
"homer_factor": 0.9701,
"woba_minus_xwoba": 0.023,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691799",
"espn_id": 4927630,
"player_name": "Grant Taylor",
"team": "CHW",
"role": "pitcher",
"espn_rank": 89,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 89,
"gp_value": 27.0,
"gp_rank": 111,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.209,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 4.0,
"hld_rank": 121,
"ip_value": 36.2,
"ip_rank": 180,
"h_value": 29.0,
"h_rank": 219,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 9.0,
"bb_rank": 332,
"k_value": 52.0,
"k_rank": 105,
"k_per_9_value": 12.763636,
"k_per_9_rank": 15,
"whip_value": 1.0363,
"whip_rank": null,
"war_value": 1.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9819,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9819,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9874,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9865,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0188,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 6.1,
"ER": 1,
"H": 6,
"BB": 2,
"SO": 8,
"HR": 0,
"ERA": 1.4210526315789473,
"WHIP": 1.2631578947368423,
"K9": 11.368421052631579,
"HR9": 0.0,
"games_pitched": 6,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 6,
"error_prone": false
},
"games_count": 6,
"latest_game_date": "2026-04-09T00:00:00"
}{
"available": true,
"pitcher_id": "691799",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 16,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 94.6463,
"release_spin_rate": 2483.6036,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.2754,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.9669,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.8653846153846154,
"last_10": 0.1346153846153846
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.258,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.201,
"prior_weight": 0.799
},
"role": "pitcher",
"player_id": "691799",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 6,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.8,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 4.2,
"Pitches": 16.0
},
"rates": {
"ERA": 0.0,
"WHIP": 0.9375,
"ER_per_IP": 0.0,
"H_per_IP": 0.75,
"BB_per_IP": 0.1875,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 6,
"totals": {
"IP": 6.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 2.0,
"SO": 8.0,
"HR": 0.0,
"BF": 27.0,
"Pitches": 106.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.1667,
"H": 1.0,
"BB": 0.3333,
"SO": 1.3333,
"HR": 0.0,
"BF": 4.5,
"Pitches": 17.6667
},
"rates": {
"ERA": 1.4211,
"WHIP": 1.2632,
"ER_per_IP": 0.15789,
"H_per_IP": 0.94737,
"BB_per_IP": 0.31579,
"SO_per_IP": 1.26316,
"HR_per_IP": 0.0
}
},
"season": {
"games": 6,
"totals": {
"IP": 6.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 2.0,
"SO": 8.0,
"HR": 0.0,
"BF": 27.0,
"Pitches": 106.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.1667,
"H": 1.0,
"BB": 0.3333,
"SO": 1.3333,
"HR": 0.0,
"BF": 4.5,
"Pitches": 17.6667
},
"rates": {
"ERA": 1.4211,
"WHIP": 1.2632,
"ER_per_IP": 0.15789,
"H_per_IP": 0.94737,
"BB_per_IP": 0.31579,
"SO_per_IP": 1.26316,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.405,
"predicted_H": 0.934,
"predicted_BB": 0.331,
"predicted_SO": 1.012,
"predicted_HR": 0.117,
"predicted_ERA": 3.6405,
"predicted_WHIP": 1.2657
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6876,
"form_weight": 0.3124,
"form_reliability": 0.201,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.258,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.201,
"prior_weight": 0.799
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.405,
"final": 0.1265,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.934,
"final": 0.9794,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.331,
"final": 0.1034,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.012,
"final": 0.3162,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.117,
"final": 0.0366,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6405,
"final": 3.6405,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2657,
"final": 1.2657,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Sean Newcomb |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0073 |
| ESPN Rank | 77 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 2 |
| Pre H | 4 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 7.7143 |
| Season WHIP | 1.7143 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"opponent": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"edges": {
"quality_edge": -0.4015,
"offense_edge": 0.0291,
"opponent_offense_edge": 0.1096,
"defense_strength": -0.0685,
"opponent_defense_weakness": -0.2441,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9775,
"run_prevention": 1.0445,
"strikeout": 0.9792
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656794",
"profile": {
"available": true,
"pitcher_id": "656794",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 0.0,
"k_percent": 22.7,
"bb_percent": 9.2,
"woba": 0.311,
"xwoba": 0.313,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.2,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.8,
"swing_percent": 47.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.0309,
"command_and_miss": 0.0179,
"regression_edge": -0.0571,
"xwoba_edge": 0.0571,
"barrel_edge": 0.0222,
"hard_hit_edge": 0.0,
"whiff_edge": 0.0143,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656794",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0073,
"sample_weight": 0.45,
"run_prevention_factor": 0.9994,
"strikeout_factor": 1.0008,
"walk_factor": 1.0,
"homer_factor": 0.9984,
"woba_minus_xwoba": -0.002,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656794",
"espn_id": 33856,
"player_name": "Sean Newcomb",
"team": "CHW",
"role": "pitcher",
"espn_rank": 77,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 77,
"gp_value": 28.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.7637,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 42.1,
"ip_rank": 155,
"h_value": 33.0,
"h_rank": 185,
"er_value": 13.0,
"er_rank": 243,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 40.0,
"k_rank": 160,
"k_per_9_value": 8.503937,
"k_per_9_rank": 27,
"whip_value": 1.0393,
"whip_rank": null,
"war_value": 1.17,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9997,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9997,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9993,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0004,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 2.1,
"ER": 2,
"H": 3,
"BB": 1,
"SO": 1,
"HR": 0,
"ERA": 7.7142857142857135,
"WHIP": 1.7142857142857142,
"K9": 3.8571428571428568,
"HR9": 0.0,
"games_pitched": 1,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 1,
"error_prone": false
},
"games_count": 1,
"latest_game_date": "2026-03-26T00:00:00"
}{
"available": false,
"pitcher_id": "656794",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.463,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0848,
"prior_weight": 0.9152
},
"role": "pitcher",
"player_id": "656794",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 1,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 1,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"per_game": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 1,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"per_game": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"season": {
"games": 1,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"per_game": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.267,
"predicted_H": 0.503,
"predicted_BB": 0.185,
"predicted_SO": 0.45,
"predicted_HR": 0.067,
"predicted_ERA": 4.7801,
"predicted_WHIP": 1.3692
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7367,
"form_weight": 0.2633,
"form_reliability": 0.0848,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.463,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0848,
"prior_weight": 0.9152
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 0.267,
"final": 1.5437,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 0.503,
"final": 3.0791,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.185,
"final": 0.7854,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.45,
"final": 0.8552,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.067,
"final": 0.0176,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.7801,
"final": 4.7801,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3692,
"final": 1.3692,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Seranthony Domínguez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1718 |
| ESPN Rank | 236 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1634 |
| Avg Velo | 92.6462 |
| Avg Spin | 2184.3077 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 13.5000 |
| Season WHIP | 3 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"opponent": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"edges": {
"quality_edge": -0.4015,
"offense_edge": 0.0291,
"opponent_offense_edge": 0.1096,
"defense_strength": -0.0685,
"opponent_defense_weakness": -0.2441,
"recent_win_pct_edge": -0.3
},
"player_factors": {
"ip": 0.9775,
"run_prevention": 1.0445,
"strikeout": 0.9792
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "622554",
"profile": {
"available": true,
"pitcher_id": "622554",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 4.0,
"k_percent": 27.9,
"bb_percent": 13.5,
"woba": 0.295,
"xwoba": 0.35,
"sweet_spot_percent": 38.1,
"barrel_batted_rate": 9.7,
"hard_hit_percent": 38.1,
"avg_best_speed": 80.6276,
"avg_hyper_speed": 94.4578,
"whiff_percent": 28.2,
"swing_percent": 42.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.5438,
"command_and_miss": 0.2571,
"regression_edge": -1.5714,
"xwoba_edge": -1.0,
"barrel_edge": -0.5333,
"hard_hit_edge": 0.0286,
"whiff_edge": 0.3571,
"bb_edge": -1.075,
"pitch_design_score": 0.1634
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "622554",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 13,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.6462,
"release_spin_rate": 2184.3077,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1634,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1669,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.1718,
"sample_weight": 0.45,
"run_prevention_factor": 1.0146,
"strikeout_factor": 1.0203,
"walk_factor": 1.0387,
"homer_factor": 1.0322,
"woba_minus_xwoba": -0.055,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "622554",
"espn_id": 37793,
"player_name": "Seranthony Dominguez",
"team": "CHW",
"role": "pitcher",
"espn_rank": 236,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 236,
"gp_value": 28.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.8076,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 12.0,
"sv_rank": 11,
"hld_value": 2.0,
"hld_rank": 165,
"ip_value": 26.0,
"ip_rank": 312,
"h_value": 16.0,
"h_rank": 401,
"er_value": 11.0,
"er_rank": 294,
"hr_value": 5.0,
"hr_rank": 157,
"bb_value": 15.0,
"bb_rank": 191,
"k_value": 31.0,
"k_rank": 239,
"k_per_9_value": 10.730769,
"k_per_9_rank": 20,
"whip_value": 1.1923,
"whip_rank": null,
"war_value": 0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0066,
"adjusted": 2
},
"predicted_H": {
"original": 0.0,
"factor": 1.0066,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0174,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0145,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 1.0091,
"adjusted": 0
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 1.1,
"ER": 2,
"H": 3,
"BB": 1,
"SO": 0,
"HR": 1,
"ERA": 13.5,
"WHIP": 3.0,
"K9": 0.0,
"HR9": 6.75,
"games_pitched": 2,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 2,
"error_prone": false
},
"games_count": 2,
"latest_game_date": "2026-03-29T00:00:00"
}{
"available": true,
"pitcher_id": "622554",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 13,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.6462,
"release_spin_rate": 2184.3077,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1634,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1669,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.265,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0503,
"prior_weight": 0.9497
},
"role": "pitcher",
"player_id": "622554",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 2,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 2,
"totals": {
"IP": 1.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 8.0,
"Pitches": 32.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.5,
"BB": 0.5,
"SO": 0.0,
"HR": 0.5,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 13.5,
"WHIP": 3.0,
"ER_per_IP": 1.5,
"H_per_IP": 2.25,
"BB_per_IP": 0.75,
"SO_per_IP": 0.0,
"HR_per_IP": 0.75
}
},
"last_10": {
"games": 2,
"totals": {
"IP": 1.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 8.0,
"Pitches": 32.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.5,
"BB": 0.5,
"SO": 0.0,
"HR": 0.5,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 13.5,
"WHIP": 3.0,
"ER_per_IP": 1.5,
"H_per_IP": 2.25,
"BB_per_IP": 0.75,
"SO_per_IP": 0.0,
"HR_per_IP": 0.75
}
},
"season": {
"games": 2,
"totals": {
"IP": 1.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 8.0,
"Pitches": 32.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.5,
"BB": 0.5,
"SO": 0.0,
"HR": 0.5,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 13.5,
"WHIP": 3.0,
"ER_per_IP": 1.5,
"H_per_IP": 2.25,
"BB_per_IP": 0.75,
"SO_per_IP": 0.0,
"HR_per_IP": 0.75
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.193,
"predicted_H": 0.363,
"predicted_BB": 0.134,
"predicted_SO": 0.312,
"predicted_HR": 0.062,
"predicted_ERA": 4.9605,
"predicted_WHIP": 1.4208
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7512,
"form_weight": 0.2488,
"form_reliability": 0.0503,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.265,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0503,
"prior_weight": 0.9497
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.193,
"final": 0.7993,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.363,
"final": 1.5928,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.134,
"final": 0.0333,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.312,
"final": 0.8289,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.062,
"final": 0.0154,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.9605,
"final": 4.9605,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4208,
"final": 1.4208,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.171 | 0.000 | 0.000 | Hitting_2B | 0.148 | 1.000 | -0.148 | -1.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.910 | 3.000 | 4.000 | Hitting_AB | 3.684 | 5.000 | -0.684 | -2.000 |
| predicted_AVG | 0.242 | 0.333 | 0.250 | Hitting_AVG | 0.233 | 0.200 | 0.100 | 0.133 |
| predicted_BB | 0.629 | 1.000 | 1.000 | Hitting_BB | 0.688 | 0.000 | 0.312 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_H | 0.940 | 1.000 | 1.000 | Hitting_H | 0.859 | 1.000 | 0.141 | 0.000 |
| predicted_HR | 0.170 | 1.000 | 0.000 | Hitting_HR | 0.230 | 0.000 | 0.770 | 1.000 |
| predicted_OBP | 0.334 | 0.500 | 0.400 | Hitting_OBP | 0.363 | 0.200 | 0.137 | 0.300 |
| predicted_R | 0.729 | 1.000 | 1.000 | Hitting_R | 0.777 | 0.000 | 0.223 | 1.000 |
| predicted_RBI | 0.500 | 3.000 | 0.000 | Hitting_RBI | 0.602 | 0.000 | 2.398 | 3.000 |
| predicted_SLG | 0.440 | 1.333 | 0.250 | Hitting_SLG | 0.470 | 0.400 | 0.864 | 0.933 |
| predicted_SO | 0.729 | 0.000 | 1.000 | Hitting_SO | 0.754 | 1.000 | -0.754 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.5000 -> 3.0000 (boost 2.5000, better) |
| Biggest Deboost | predicted_AB: 3.9100 -> 3.0000 (deboost -0.9100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_AB: 3.9100 -> 3.8468 (deboost -0.0632, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4394 -> 0.4133 (deboost -0.0261, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_BB: 0.5680 -> 1.0000 (boost 0.4320, better) | predicted_RBI: 0.4574 -> 0.0000 (deboost -0.4574, worse) | AB rounded to 4 (raw=3.91), rates preserved: AVG=0.231 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6298 -> 1.0000 (boost 0.3702, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3329 -> 0.4000 (boost 0.0671, better) | predicted_SLG: 0.4133 -> 0.2500 (deboost -0.1633, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 3 | 1 | predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.4133 (boost 0.1633, better) | predicted_OBP: 0.4000 -> 0.3329 (deboost -0.0671, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678246",
"player_name": "Miguel Vargas",
"position": "1B",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.171,
"predicted_3B": 0.014,
"predicted_AB": 3.91,
"predicted_AVG": 0.242,
"predicted_BB": 0.629,
"predicted_H": 0.94,
"predicted_HR": 0.17,
"predicted_OBP": 0.334,
"predicted_R": 0.729,
"predicted_RBI": 0.5,
"predicted_SLG": 0.44,
"predicted_SO": 0.729
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1914,
"predicted_3B": 0.0119,
"predicted_AB": 3.8468,
"predicted_AVG": 0.2456,
"predicted_BB": 0.5743,
"predicted_H": 0.9408,
"predicted_HBP": 0.043,
"predicted_HR": 0.1645,
"predicted_OBP": 0.3377,
"predicted_R": 0.6785,
"predicted_RBI": 0.4928,
"predicted_SLG": 0.4394,
"predicted_SO": 0.6989
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.171,
"after": 0.1914,
"delta": 0.0204,
"percent_delta": 0.1193,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.91,
"after": 3.8468,
"delta": -0.0632,
"percent_delta": -0.0162,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2456,
"delta": 0.0036,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.629,
"after": 0.5743,
"delta": -0.0547,
"percent_delta": -0.087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 0.9408,
"delta": 0.0008,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.1645,
"delta": -0.0055,
"percent_delta": -0.0324,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3377,
"delta": 0.0037,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.729,
"after": 0.6785,
"delta": -0.0505,
"percent_delta": -0.0693,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.4928,
"delta": -0.0072,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.44,
"after": 0.4394,
"delta": -0.0006,
"percent_delta": -0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.729,
"after": 0.6989,
"delta": -0.0301,
"percent_delta": -0.0413,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.91,
"after": 3.8468,
"delta": -0.0632,
"percent_delta": -0.0162,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1914,
"predicted_3B": 0.0119,
"predicted_AB": 3.8468,
"predicted_AVG": 0.2344,
"predicted_BB": 0.568,
"predicted_H": 0.9016,
"predicted_HBP": 0.043,
"predicted_HR": 0.1578,
"predicted_OBP": 0.3329,
"predicted_R": 0.6298,
"predicted_RBI": 0.4574,
"predicted_SLG": 0.4133,
"predicted_SO": 0.7065
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1914,
"after": 0.1914,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8468,
"after": 3.8468,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2456,
"after": 0.2344,
"delta": -0.0112,
"percent_delta": -0.0456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5743,
"after": 0.568,
"delta": -0.0063,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9408,
"after": 0.9016,
"delta": -0.0392,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.043,
"after": 0.043,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1645,
"after": 0.1578,
"delta": -0.0067,
"percent_delta": -0.0407,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3377,
"after": 0.3329,
"delta": -0.0048,
"percent_delta": -0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6785,
"after": 0.6298,
"delta": -0.0487,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4928,
"after": 0.4574,
"delta": -0.0354,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4394,
"after": 0.4133,
"delta": -0.0261,
"percent_delta": -0.0594,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6989,
"after": 0.7065,
"delta": 0.0076,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4394,
"after": 0.4133,
"delta": -0.0261,
"percent_delta": -0.0594,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.91), rates preserved: AVG=0.231 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1914,
"after": 0.0,
"delta": -0.1914,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8468,
"after": 4.0,
"delta": 0.1532,
"percent_delta": 0.0398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.568,
"after": 1.0,
"delta": 0.432,
"percent_delta": 0.7606,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9016,
"after": 1.0,
"delta": 0.0984,
"percent_delta": 0.1091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.043,
"after": 0.0,
"delta": -0.043,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1578,
"after": 0.0,
"delta": -0.1578,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4574,
"after": 0.0,
"delta": -0.4574,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7065,
"after": 1.0,
"delta": 0.2935,
"percent_delta": 0.4154,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.568,
"after": 1.0,
"delta": 0.432,
"percent_delta": 0.7606,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4574,
"after": 0.0,
"delta": -0.4574,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6298,
"after": 1.0,
"delta": 0.3702,
"percent_delta": 0.5878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6298,
"after": 1.0,
"delta": 0.3702,
"percent_delta": 0.5878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2344,
"after": 0.25,
"delta": 0.0156,
"percent_delta": 0.0666,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3329,
"after": 0.4,
"delta": 0.0671,
"percent_delta": 0.2016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4133,
"after": 0.25,
"delta": -0.1633,
"percent_delta": -0.3951,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3329,
"after": 0.4,
"delta": 0.0671,
"percent_delta": 0.2016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4133,
"after": 0.25,
"delta": -0.1633,
"percent_delta": -0.3951,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2344,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3329,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4133,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2344,
"delta": -0.0156,
"percent_delta": -0.0625,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3329,
"delta": -0.0671,
"percent_delta": -0.1678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4133,
"delta": 0.1633,
"percent_delta": 0.6534,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4133,
"delta": 0.1633,
"percent_delta": 0.6534,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3329,
"delta": -0.0671,
"percent_delta": -0.1678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.171,
"after": 0.0,
"delta": -0.171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.91,
"after": 3.0,
"delta": -0.91,
"percent_delta": -0.2327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2344,
"delta": -0.0076,
"percent_delta": -0.0314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.629,
"after": 1.0,
"delta": 0.371,
"percent_delta": 0.5898,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.0,
"delta": 0.06,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 1.0,
"delta": 0.83,
"percent_delta": 4.8824,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3329,
"delta": -0.0011,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.729,
"after": 1.0,
"delta": 0.271,
"percent_delta": 0.3717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 3.0,
"delta": 2.5,
"percent_delta": 5.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.44,
"after": 0.4133,
"delta": -0.0267,
"percent_delta": -0.0607,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.729,
"after": 0.0,
"delta": -0.729,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5,
"after": 3.0,
"delta": 2.5,
"percent_delta": 5.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.91,
"after": 3.0,
"delta": -0.91,
"percent_delta": -0.2327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.171 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.910 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.629 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.729 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.440 | - |
| predicted_SO | 0.729 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | 0.020 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 3.847 | -0.063 |
| predicted_AVG | 0.246 | 0.004 |
| predicted_BB | 0.574 | -0.055 |
| predicted_H | 0.941 | 0.001 |
| predicted_HBP | 0.043 | - |
| predicted_HR | 0.165 | -0.006 |
| predicted_OBP | 0.338 | 0.004 |
| predicted_R | 0.678 | -0.050 |
| predicted_RBI | 0.493 | -0.007 |
| predicted_SLG | 0.439 | -0.001 |
| predicted_SO | 0.699 | -0.030 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 3.847 | 0.000 |
| predicted_AVG | 0.234 | -0.011 |
| predicted_BB | 0.568 | -0.006 |
| predicted_H | 0.902 | -0.039 |
| predicted_HBP | 0.043 | 0.000 |
| predicted_HR | 0.158 | -0.007 |
| predicted_OBP | 0.333 | -0.005 |
| predicted_R | 0.630 | -0.049 |
| predicted_RBI | 0.457 | -0.035 |
| predicted_SLG | 0.413 | -0.026 |
| predicted_SO | 0.707 | 0.008 |
AB rounded to 4 (raw=3.91), rates preserved: AVG=0.231 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.191 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | 0.153 |
| predicted_AVG | 0.250 | 0.016 |
| predicted_BB | 1.000 | 0.432 |
| predicted_H | 1.000 | 0.098 |
| predicted_HR | 0.000 | -0.158 |
| predicted_OBP | 0.400 | 0.067 |
| predicted_R | 1.000 | 0.370 |
| predicted_RBI | 0.000 | -0.457 |
| predicted_SLG | 0.250 | -0.163 |
| predicted_SO | 1.000 | 0.293 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 3.000 | 3.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 5.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 2.000 | 0.2632 | 0.3000 | 0.3684 | 0.2632 | 0.0000 | 0.0526 | 0.0526 | 0.1053 |
| last_10 | 0.20 | 10 | - | 39.000 | 10.000 | 2.000 | 0.000 | 1.000 | 3.000 | 5.000 | 5.000 | 6.000 | 0.2564 | 0.3409 | 0.3846 | 0.2564 | 0.0256 | 0.0769 | 0.1282 | 0.1538 |
| season | 0.60 | 70 | - | 258.000 | 63.000 | 12.000 | 1.000 | 16.000 | 44.000 | 51.000 | 44.000 | 51.000 | 0.2442 | 0.3625 | 0.4845 | 0.2442 | 0.0620 | 0.1705 | 0.1705 | 0.1977 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2190 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.7610 |
| predicted_AVG | 0.2504 |
| predicted_BB | 0.5000 |
| predicted_H | 0.9420 |
| predicted_HBP | 0.0430 |
| predicted_HR | 0.1570 |
| predicted_OBP | 0.3428 |
| predicted_R | 0.6100 |
| predicted_RBI | 0.4830 |
| predicted_SLG | 0.4385 |
| predicted_SO | 0.6580 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1710 | 0.2190 | 0.1914 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 3.9100 | 3.7610 | 3.8468 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2504 | 0.2456 | model_form_blend |
| predicted_BB | 0.6290 | 0.5000 | 0.5743 | model_form_blend |
| predicted_H | 0.9400 | 0.9420 | 0.9408 | model_form_blend |
| predicted_HBP | - | 0.0430 | 0.0430 | form_only |
| predicted_HR | 0.1700 | 0.1570 | 0.1645 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3428 | 0.3377 | model_form_blend |
| predicted_R | 0.7290 | 0.6100 | 0.6785 | model_form_blend |
| predicted_RBI | 0.5000 | 0.4830 | 0.4928 | model_form_blend |
| predicted_SLG | 0.4400 | 0.4385 | 0.4394 | model_form_blend |
| predicted_SO | 0.7290 | 0.6580 | 0.6989 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 256 |
| Season rows before report date | 256 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.244 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B-3B |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 678246 |
| playerID | 678246 |
| playerName | Miguel Vargas |
| pos | 3B |
| started | True |
| startingPosition | 1B |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 16.4 |
| sl_bb_percent | 14.5 |
| sl_woba | 0.371 |
| sl_xwoba | 0.401 |
| sl_xba | 0.273 |
| sl_xslg | 0.542 |
| sl_sweet_spot_percent | 42.1 |
| sl_barrel_batted_rate | 14.4 |
| sl_hard_hit_percent | 45.2 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 19.7 |
| sl_whiff_percent | 20.2 |
| sl_swing_percent | 44.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.188 | 0.000 | 0.000 | Hitting_2B | 0.201 | 0.000 | -0.201 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.820 | 4.000 | 4.000 | Hitting_AB | 3.746 | 4.000 | 0.254 | 0.000 |
| predicted_AVG | 0.228 | 0.000 | 0.250 | Hitting_AVG | 0.235 | 0.500 | -0.235 | -0.500 |
| predicted_BB | 0.377 | 0.000 | 0.000 | Hitting_BB | 0.377 | 0.000 | -0.377 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_H | 0.870 | 0.000 | 1.000 | Hitting_H | 0.881 | 2.000 | -0.881 | -2.000 |
| predicted_HR | 0.270 | 0.000 | 0.000 | Hitting_HR | 0.258 | 2.000 | -0.258 | -2.000 |
| predicted_OBP | 0.309 | 0.000 | 0.250 | Hitting_OBP | 0.330 | 0.500 | -0.330 | -0.500 |
| predicted_R | 0.507 | 0.000 | 1.000 | Hitting_R | 0.516 | 2.000 | -0.516 | -2.000 |
| predicted_RBI | 0.690 | 0.000 | 1.000 | Hitting_RBI | 0.664 | 4.000 | -0.664 | -4.000 |
| predicted_SLG | 0.497 | 0.000 | 0.250 | Hitting_SLG | 0.496 | 2.000 | -0.496 | -2.000 |
| predicted_SO | 1.261 | 1.000 | 1.000 | Hitting_SO | 1.279 | 0.000 | -0.279 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.8200 -> 4.0000 (boost 0.1800, better) |
| Biggest Deboost | predicted_H: 0.8700 -> 0.0000 (deboost -0.8700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.4970 -> 0.5275 (boost 0.0305, better) | predicted_AB: 3.8200 -> 3.7300 (deboost -0.0900, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 0 | 4 | 0 | 4 | - | predicted_RBI: 0.7221 -> 0.6703 (deboost -0.0518, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_RBI: 0.6703 -> 1.0000 (boost 0.3297, better) | predicted_BB: 0.3579 -> 0.0000 (deboost -0.3579, worse) | AB rounded to 4 (raw=3.82), rates preserved: AVG=0.212 HR/AB=0.076 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5071 -> 1.0000 (boost 0.4929, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2171 -> 0.2500 (boost 0.0329, better) | predicted_SLG: 0.5023 -> 0.2500 (deboost -0.2523, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 0 | 3 | 0 | 3 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.5023 (boost 0.2523, better) | predicted_AVG: 0.2500 -> 0.2171 (deboost -0.0329, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695657",
"player_name": "Colson Montgomery",
"position": "3B",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.188,
"predicted_3B": 0.0,
"predicted_AB": 3.82,
"predicted_AVG": 0.228,
"predicted_BB": 0.377,
"predicted_H": 0.87,
"predicted_HR": 0.27,
"predicted_OBP": 0.309,
"predicted_R": 0.507,
"predicted_RBI": 0.69,
"predicted_SLG": 0.497,
"predicted_SO": 1.261
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1901,
"predicted_3B": 0.0004,
"predicted_AB": 3.73,
"predicted_AVG": 0.2267,
"predicted_BB": 0.3618,
"predicted_H": 0.8451,
"predicted_HBP": 0.091,
"predicted_HR": 0.3034,
"predicted_OBP": 0.3085,
"predicted_R": 0.5463,
"predicted_RBI": 0.7221,
"predicted_SLG": 0.5275,
"predicted_SO": 1.212
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.1901,
"delta": 0.0021,
"percent_delta": 0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.82,
"after": 3.73,
"delta": -0.09,
"percent_delta": -0.0236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2267,
"delta": -0.0013,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.377,
"after": 0.3618,
"delta": -0.0152,
"percent_delta": -0.0403,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.8451,
"delta": -0.0249,
"percent_delta": -0.0286,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.27,
"after": 0.3034,
"delta": 0.0334,
"percent_delta": 0.1237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3085,
"delta": -0.0005,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.507,
"after": 0.5463,
"delta": 0.0393,
"percent_delta": 0.0775,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.69,
"after": 0.7221,
"delta": 0.0321,
"percent_delta": 0.0465,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.497,
"after": 0.5275,
"delta": 0.0305,
"percent_delta": 0.0614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.261,
"after": 1.212,
"delta": -0.049,
"percent_delta": -0.0389,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.497,
"after": 0.5275,
"delta": 0.0305,
"percent_delta": 0.0614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.82,
"after": 3.73,
"delta": -0.09,
"percent_delta": -0.0236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1901,
"predicted_3B": 0.0004,
"predicted_AB": 3.73,
"predicted_AVG": 0.2171,
"predicted_BB": 0.3579,
"predicted_H": 0.8099,
"predicted_HBP": 0.091,
"predicted_HR": 0.291,
"predicted_OBP": 0.2857,
"predicted_R": 0.5071,
"predicted_RBI": 0.6703,
"predicted_SLG": 0.5023,
"predicted_SO": 1.2252
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1901,
"after": 0.1901,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.73,
"after": 3.73,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2267,
"after": 0.2171,
"delta": -0.0096,
"percent_delta": -0.0423,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3618,
"after": 0.3579,
"delta": -0.0039,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8451,
"after": 0.8099,
"delta": -0.0352,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.091,
"after": 0.091,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3034,
"after": 0.291,
"delta": -0.0124,
"percent_delta": -0.0409,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3085,
"after": 0.2857,
"delta": -0.0228,
"percent_delta": -0.0739,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5463,
"after": 0.5071,
"delta": -0.0392,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7221,
"after": 0.6703,
"delta": -0.0518,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5275,
"after": 0.5023,
"delta": -0.0252,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.212,
"after": 1.2252,
"delta": 0.0132,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.7221,
"after": 0.6703,
"delta": -0.0518,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.82), rates preserved: AVG=0.212 HR/AB=0.076",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1901,
"after": 0.0,
"delta": -0.1901,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.73,
"after": 4.0,
"delta": 0.27,
"percent_delta": 0.0724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3579,
"after": 0.0,
"delta": -0.3579,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8099,
"after": 1.0,
"delta": 0.1901,
"percent_delta": 0.2347,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.091,
"after": 0.0,
"delta": -0.091,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.291,
"after": 0.0,
"delta": -0.291,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6703,
"after": 1.0,
"delta": 0.3297,
"percent_delta": 0.4919,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2252,
"after": 1.0,
"delta": -0.2252,
"percent_delta": -0.1838,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6703,
"after": 1.0,
"delta": 0.3297,
"percent_delta": 0.4919,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3579,
"after": 0.0,
"delta": -0.3579,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5071,
"after": 1.0,
"delta": 0.4929,
"percent_delta": 0.972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5071,
"after": 1.0,
"delta": 0.4929,
"percent_delta": 0.972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2171,
"after": 0.25,
"delta": 0.0329,
"percent_delta": 0.1515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2857,
"after": 0.25,
"delta": -0.0357,
"percent_delta": -0.125,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5023,
"after": 0.25,
"delta": -0.2523,
"percent_delta": -0.5023,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2171,
"after": 0.25,
"delta": 0.0329,
"percent_delta": 0.1515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5023,
"after": 0.25,
"delta": -0.2523,
"percent_delta": -0.5023,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2171,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2857,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5023,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2171,
"delta": -0.0329,
"percent_delta": -0.1315,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2857,
"delta": 0.0357,
"percent_delta": 0.1426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5023,
"delta": 0.2523,
"percent_delta": 1.0093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5023,
"delta": 0.2523,
"percent_delta": 1.0093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2171,
"delta": -0.0329,
"percent_delta": -0.1315,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.82,
"after": 4.0,
"delta": 0.18,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2171,
"delta": -0.0109,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.377,
"after": 0.0,
"delta": -0.377,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.2857,
"delta": -0.0233,
"percent_delta": -0.0754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.507,
"after": 0.0,
"delta": -0.507,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.497,
"after": 0.5023,
"delta": 0.0053,
"percent_delta": 0.0107,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.261,
"after": 1.0,
"delta": -0.261,
"percent_delta": -0.207,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.82,
"after": 4.0,
"delta": 0.18,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.188 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.820 | - |
| predicted_AVG | 0.228 | - |
| predicted_BB | 0.377 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.270 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.507 | - |
| predicted_RBI | 0.690 | - |
| predicted_SLG | 0.497 | - |
| predicted_SO | 1.261 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.190 | 0.002 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.730 | -0.090 |
| predicted_AVG | 0.227 | -0.001 |
| predicted_BB | 0.362 | -0.015 |
| predicted_H | 0.845 | -0.025 |
| predicted_HBP | 0.091 | - |
| predicted_HR | 0.303 | 0.033 |
| predicted_OBP | 0.308 | -0.001 |
| predicted_R | 0.546 | 0.039 |
| predicted_RBI | 0.722 | 0.032 |
| predicted_SLG | 0.527 | 0.030 |
| predicted_SO | 1.212 | -0.049 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.190 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.730 | 0.000 |
| predicted_AVG | 0.217 | -0.010 |
| predicted_BB | 0.358 | -0.004 |
| predicted_H | 0.810 | -0.035 |
| predicted_HBP | 0.091 | 0.000 |
| predicted_HR | 0.291 | -0.012 |
| predicted_OBP | 0.286 | -0.023 |
| predicted_R | 0.507 | -0.039 |
| predicted_RBI | 0.670 | -0.052 |
| predicted_SLG | 0.502 | -0.025 |
| predicted_SO | 1.225 | 0.013 |
AB rounded to 4 (raw=3.82), rates preserved: AVG=0.212 HR/AB=0.076
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.190 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.270 |
| predicted_AVG | 0.250 | 0.033 |
| predicted_BB | 0.000 | -0.358 |
| predicted_H | 1.000 | 0.190 |
| predicted_HR | 0.000 | -0.291 |
| predicted_OBP | 0.250 | -0.036 |
| predicted_R | 1.000 | 0.493 |
| predicted_RBI | 1.000 | 0.330 |
| predicted_SLG | 0.250 | -0.252 |
| predicted_SO | 1.000 | -0.225 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 0.000 | 3.000 | 6.000 | 4.000 | 1.000 | 4.000 | 0.2353 | 0.2778 | 0.8235 | 0.2353 | 0.1765 | 0.3529 | 0.0588 | 0.2353 |
| last_10 | 0.20 | 10 | - | 35.000 | 7.000 | 2.000 | 0.000 | 4.000 | 8.000 | 7.000 | 4.000 | 13.000 | 0.2000 | 0.3000 | 0.6000 | 0.2000 | 0.1143 | 0.2286 | 0.1143 | 0.3714 |
| season | 0.60 | 69 | - | 253.000 | 57.000 | 13.000 | 0.000 | 19.000 | 44.000 | 35.000 | 26.000 | 87.000 | 0.2253 | 0.3194 | 0.5020 | 0.2253 | 0.0751 | 0.1739 | 0.1028 | 0.3439 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1930 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6070 |
| predicted_AVG | 0.2249 |
| predicted_BB | 0.3410 |
| predicted_H | 0.8110 |
| predicted_HBP | 0.0910 |
| predicted_HR | 0.3490 |
| predicted_OBP | 0.3078 |
| predicted_R | 0.6000 |
| predicted_RBI | 0.7660 |
| predicted_SLG | 0.5693 |
| predicted_SO | 1.1450 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1880 | 0.1930 | 0.1901 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8200 | 3.6070 | 3.7300 | model_form_blend |
| predicted_AVG | 0.2280 | 0.2249 | 0.2267 | model_form_blend |
| predicted_BB | 0.3770 | 0.3410 | 0.3618 | model_form_blend |
| predicted_H | 0.8700 | 0.8110 | 0.8451 | model_form_blend |
| predicted_HBP | - | 0.0910 | 0.0910 | form_only |
| predicted_HR | 0.2700 | 0.3490 | 0.3034 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3078 | 0.3085 | model_form_blend |
| predicted_R | 0.5070 | 0.6000 | 0.5463 | model_form_blend |
| predicted_RBI | 0.6900 | 0.7660 | 0.7221 | model_form_blend |
| predicted_SLG | 0.4970 | 0.5693 | 0.5275 | model_form_blend |
| predicted_SO | 1.2610 | 1.1450 | 1.2120 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 244 |
| Season rows before report date | 244 |
| Report year | 2026 |
| Profile rows used | 69 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.225 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 2 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 4 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 8 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B-SS |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 695657 |
| playerID | 695657 |
| playerName | Colson Montgomery |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 30.2 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.353 |
| sl_xwoba | 0.328 |
| sl_xba | 0.217 |
| sl_xslg | 0.447 |
| sl_sweet_spot_percent | 34.9 |
| sl_barrel_batted_rate | 13.9 |
| sl_hard_hit_percent | 46.7 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 20.4 |
| sl_whiff_percent | 37.7 |
| sl_swing_percent | 52.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.161 | 0.000 | 0.000 | Hitting_2B | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 3.000 | 3.000 | Hitting_AB | 2.520 | 4.000 | 0.480 | -1.000 |
| predicted_AVG | 0.299 | 0.333 | 0.333 | Hitting_AVG | 0.333 | 0.250 | 0.000 | 0.083 |
| predicted_BB | 0.108 | 0.000 | 0.000 | Hitting_BB | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.670 | 1.000 | 1.000 | Hitting_H | 0.840 | 1.000 | 0.160 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_OBP | 0.332 | 0.250 | 0.333 | Hitting_OBP | 0.373 | 0.250 | -0.123 | 0.000 |
| predicted_R | 0.430 | 1.000 | 0.000 | Hitting_R | 0.340 | 1.000 | 0.660 | 0.000 |
| predicted_RBI | 0.430 | 1.000 | 0.000 | Hitting_RBI | 0.900 | 0.000 | 0.100 | 1.000 |
| predicted_SLG | 0.465 | 0.333 | 0.333 | Hitting_SLG | 0.611 | 0.250 | -0.278 | 0.083 |
| predicted_SO | 0.591 | 0.000 | 1.000 | Hitting_SO | 0.520 | 0.000 | -0.520 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_R: 0.4300 -> 1.0000 (boost 0.5700, better) |
| Biggest Deboost | predicted_SO: 0.5910 -> 0.0000 (deboost -0.5910, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.4650 -> 0.4751 (boost 0.0101, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3354 -> 0.3034 (deboost -0.0320, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_AB: 2.5455 -> 3.0000 (boost 0.4545, better) | predicted_RBI: 0.4143 -> 0.0000 (deboost -0.4143, worse) | AB rounded to 3 (raw=2.55), rates preserved: AVG=0.264 HR/AB=0.047 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3871 -> 0.0000 (deboost -0.3871, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2639 -> 0.3330 (boost 0.0691, better) | predicted_SLG: 0.4645 -> 0.3330 (deboost -0.1315, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 3 | 1 | 3 | 0 | predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4645 (boost 0.1315, better) | predicted_AVG: 0.3330 -> 0.2639 (deboost -0.0691, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "545341",
"player_name": "Randal Grichuk",
"position": "DH",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.161,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.299,
"predicted_BB": 0.108,
"predicted_H": 0.67,
"predicted_HR": 0.12,
"predicted_OBP": 0.332,
"predicted_R": 0.43,
"predicted_RBI": 0.43,
"predicted_SLG": 0.465,
"predicted_SO": 0.591
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1476,
"predicted_3B": 0.0008,
"predicted_AB": 2.5455,
"predicted_AVG": 0.2943,
"predicted_BB": 0.1462,
"predicted_H": 0.7009,
"predicted_HBP": 0.019,
"predicted_HR": 0.1257,
"predicted_OBP": 0.3354,
"predicted_R": 0.417,
"predicted_RBI": 0.4464,
"predicted_SLG": 0.4751,
"predicted_SO": 0.5673
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.161,
"after": 0.1476,
"delta": -0.0134,
"percent_delta": -0.0832,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.5455,
"delta": 0.0455,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.299,
"after": 0.2943,
"delta": -0.0047,
"percent_delta": -0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.108,
"after": 0.1462,
"delta": 0.0382,
"percent_delta": 0.3537,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 0.7009,
"delta": 0.0309,
"percent_delta": 0.0461,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1257,
"delta": 0.0057,
"percent_delta": 0.0475,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3354,
"delta": 0.0034,
"percent_delta": 0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.43,
"after": 0.417,
"delta": -0.013,
"percent_delta": -0.0302,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4464,
"delta": 0.0164,
"percent_delta": 0.0381,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.4751,
"delta": 0.0101,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.591,
"after": 0.5673,
"delta": -0.0237,
"percent_delta": -0.0401,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.4751,
"delta": 0.0101,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 41
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1476,
"predicted_3B": 0.0008,
"predicted_AB": 2.5455,
"predicted_AVG": 0.2639,
"predicted_BB": 0.1446,
"predicted_H": 0.6717,
"predicted_HBP": 0.019,
"predicted_HR": 0.1205,
"predicted_OBP": 0.3034,
"predicted_R": 0.3871,
"predicted_RBI": 0.4143,
"predicted_SLG": 0.4645,
"predicted_SO": 0.5735
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1476,
"after": 0.1476,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5455,
"after": 2.5455,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2943,
"after": 0.2639,
"delta": -0.0304,
"percent_delta": -0.1033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1462,
"after": 0.1446,
"delta": -0.0016,
"percent_delta": -0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7009,
"after": 0.6717,
"delta": -0.0292,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1257,
"after": 0.1205,
"delta": -0.0052,
"percent_delta": -0.0414,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3354,
"after": 0.3034,
"delta": -0.032,
"percent_delta": -0.0954,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.417,
"after": 0.3871,
"delta": -0.0299,
"percent_delta": -0.0717,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4464,
"after": 0.4143,
"delta": -0.0321,
"percent_delta": -0.0719,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4751,
"after": 0.4645,
"delta": -0.0106,
"percent_delta": -0.0223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5673,
"after": 0.5735,
"delta": 0.0062,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3354,
"after": 0.3034,
"delta": -0.032,
"percent_delta": -0.0954,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.55), rates preserved: AVG=0.264 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1476,
"after": 0.0,
"delta": -0.1476,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5455,
"after": 3.0,
"delta": 0.4545,
"percent_delta": 0.1786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1446,
"after": 0.0,
"delta": -0.1446,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6717,
"after": 1.0,
"delta": 0.3283,
"percent_delta": 0.4888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1205,
"after": 0.0,
"delta": -0.1205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4143,
"after": 0.0,
"delta": -0.4143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5735,
"after": 1.0,
"delta": 0.4265,
"percent_delta": 0.7437,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5455,
"after": 3.0,
"delta": 0.4545,
"percent_delta": 0.1786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4143,
"after": 0.0,
"delta": -0.4143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3871,
"after": 0.0,
"delta": -0.3871,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3871,
"after": 0.0,
"delta": -0.3871,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2639,
"after": 0.333,
"delta": 0.0691,
"percent_delta": 0.2618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3034,
"after": 0.333,
"delta": 0.0296,
"percent_delta": 0.0976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4645,
"after": 0.333,
"delta": -0.1315,
"percent_delta": -0.2831,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2639,
"after": 0.333,
"delta": 0.0691,
"percent_delta": 0.2618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4645,
"after": 0.333,
"delta": -0.1315,
"percent_delta": -0.2831,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "higher",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2639,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3034,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SLG": 0.4645,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2639,
"delta": -0.0691,
"percent_delta": -0.2076,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3034,
"delta": -0.0296,
"percent_delta": -0.0888,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4645,
"delta": 0.1315,
"percent_delta": 0.395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4645,
"delta": 0.1315,
"percent_delta": 0.395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2639,
"delta": -0.0691,
"percent_delta": -0.2076,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.161,
"after": 0.0,
"delta": -0.161,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.299,
"after": 0.2639,
"delta": -0.0351,
"percent_delta": -0.1174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.108,
"after": 0.0,
"delta": -0.108,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 1.0,
"delta": 0.33,
"percent_delta": 0.4925,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3034,
"delta": -0.0286,
"percent_delta": -0.0861,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.43,
"after": 1.0,
"delta": 0.57,
"percent_delta": 1.3256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 1.0,
"delta": 0.57,
"percent_delta": 1.3256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.4645,
"delta": -0.0005,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.591,
"after": 0.0,
"delta": -0.591,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.43,
"after": 1.0,
"delta": 0.57,
"percent_delta": 1.3256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.591,
"after": 0.0,
"delta": -0.591,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.161 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.299 | - |
| predicted_BB | 0.108 | - |
| predicted_H | 0.670 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.430 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.465 | - |
| predicted_SO | 0.591 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | -0.013 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.546 | 0.046 |
| predicted_AVG | 0.294 | -0.005 |
| predicted_BB | 0.146 | 0.038 |
| predicted_H | 0.701 | 0.031 |
| predicted_HBP | 0.019 | - |
| predicted_HR | 0.126 | 0.006 |
| predicted_OBP | 0.335 | 0.003 |
| predicted_R | 0.417 | -0.013 |
| predicted_RBI | 0.446 | 0.016 |
| predicted_SLG | 0.475 | 0.010 |
| predicted_SO | 0.567 | -0.024 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.546 | 0.000 |
| predicted_AVG | 0.264 | -0.030 |
| predicted_BB | 0.145 | -0.002 |
| predicted_H | 0.672 | -0.029 |
| predicted_HBP | 0.019 | 0.000 |
| predicted_HR | 0.120 | -0.005 |
| predicted_OBP | 0.303 | -0.032 |
| predicted_R | 0.387 | -0.030 |
| predicted_RBI | 0.414 | -0.032 |
| predicted_SLG | 0.465 | -0.011 |
| predicted_SO | 0.574 | 0.006 |
AB rounded to 3 (raw=2.55), rates preserved: AVG=0.264 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.148 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.454 |
| predicted_AVG | 0.333 | 0.069 |
| predicted_BB | 0.000 | -0.145 |
| predicted_H | 1.000 | 0.328 |
| predicted_HR | 0.000 | -0.120 |
| predicted_OBP | 0.333 | 0.030 |
| predicted_R | 0.000 | -0.387 |
| predicted_RBI | 0.000 | -0.414 |
| predicted_SLG | 0.333 | -0.132 |
| predicted_SO | 1.000 | 0.426 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 1.000 | 1.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 11.000 | 4.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 2.000 | 1.000 | 0.3636 | 0.4615 | 0.3636 | 0.3636 | 0.0000 | 0.1818 | 0.1818 | 0.0909 |
| last_10 | 0.20 | 10 | - | 22.000 | 7.000 | 1.000 | 0.000 | 2.000 | 4.000 | 4.000 | 2.000 | 4.000 | 0.3182 | 0.3750 | 0.6364 | 0.3182 | 0.0909 | 0.1818 | 0.0909 | 0.1818 |
| season | 0.60 | 41 | - | 93.000 | 25.000 | 6.000 | 0.000 | 6.000 | 19.000 | 16.000 | 4.000 | 22.000 | 0.2688 | 0.3030 | 0.5269 | 0.2688 | 0.0645 | 0.2043 | 0.0430 | 0.2366 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1260 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.6190 |
| predicted_AVG | 0.2867 |
| predicted_BB | 0.2080 |
| predicted_H | 0.7510 |
| predicted_HBP | 0.0190 |
| predicted_HR | 0.1350 |
| predicted_OBP | 0.3408 |
| predicted_R | 0.3960 |
| predicted_RBI | 0.4730 |
| predicted_SLG | 0.4914 |
| predicted_SO | 0.5290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1610 | 0.1260 | 0.1476 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5000 | 2.6190 | 2.5455 | model_form_blend |
| predicted_AVG | 0.2990 | 0.2867 | 0.2943 | model_form_blend |
| predicted_BB | 0.1080 | 0.2080 | 0.1462 | model_form_blend |
| predicted_H | 0.6700 | 0.7510 | 0.7009 | model_form_blend |
| predicted_HBP | - | 0.0190 | 0.0190 | form_only |
| predicted_HR | 0.1200 | 0.1350 | 0.1257 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3408 | 0.3354 | model_form_blend |
| predicted_R | 0.4300 | 0.3960 | 0.4170 | model_form_blend |
| predicted_RBI | 0.4300 | 0.4730 | 0.4464 | model_form_blend |
| predicted_SLG | 0.4650 | 0.4914 | 0.4751 | model_form_blend |
| predicted_SO | 0.5910 | 0.5290 | 0.5673 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 50 |
| Season rows before report date | 50 |
| Report year | 2026 |
| Profile rows used | 41 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 1 |
| HBP | 0 |
| season_avg | 0.269 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 545341 |
| playerID | 545341 |
| playerName | Randal Grichuk |
| pos | RF |
| started | True |
| startingPosition | DH |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.2 |
| sl_bb_percent | 4.0 |
| sl_woba | 0.354 |
| sl_xwoba | 0.393 |
| sl_xba | 0.318 |
| sl_xslg | 0.57 |
| sl_sweet_spot_percent | 48.6 |
| sl_barrel_batted_rate | 13.9 |
| sl_hard_hit_percent | 47.2 |
| sl_exit_velocity_avg | 91.0 |
| sl_launch_angle_avg | 14.5 |
| sl_whiff_percent | 23.7 |
| sl_swing_percent | 49.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.203 | 1.000 | 0.000 | Hitting_2B | 0.175 | 1.000 | 0.825 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.210 | 4.000 | 4.000 | Hitting_AB | 3.833 | 5.000 | 0.167 | -1.000 |
| predicted_AVG | 0.249 | 0.250 | 0.250 | Hitting_AVG | 0.266 | 0.400 | -0.016 | -0.150 |
| predicted_BB | 0.377 | 0.000 | 0.000 | Hitting_BB | 0.435 | 0.000 | -0.435 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 1.050 | 1.000 | 1.000 | Hitting_H | 1.020 | 2.000 | -0.020 | -1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | -0.102 | 0.000 |
| predicted_OBP | 0.341 | 0.250 | 0.250 | Hitting_OBP | 0.339 | 0.400 | -0.089 | -0.150 |
| predicted_R | 0.623 | 1.000 | 1.000 | Hitting_R | 0.659 | 1.000 | 0.341 | 0.000 |
| predicted_RBI | 0.500 | 0.000 | 0.000 | Hitting_RBI | 0.378 | 0.000 | -0.378 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_SLG | 0.404 | 0.500 | 0.250 | Hitting_SLG | 0.391 | 0.600 | 0.109 | -0.100 |
| predicted_SO | 0.986 | 0.000 | 1.000 | Hitting_SO | 0.967 | 2.000 | -0.967 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_2B: 0.2030 -> 1.0000 (boost 0.7970, better) |
| Biggest Deboost | predicted_SO: 0.9860 -> 0.0000 (deboost -0.9860, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_AVG: 0.2490 -> 0.2666 (boost 0.0176, better) | predicted_AB: 4.2100 -> 4.0341 (deboost -0.1759, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3465 -> 0.3119 (deboost -0.0346, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 0 | 5 | 0 | 5 | - | predicted_RBI: 0.4578 -> 0.0000 (deboost -0.4578, worse) | AB rounded to 4 (raw=4.21), rates preserved: AVG=0.244 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5638 -> 1.0000 (boost 0.4362, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3872 -> 0.2500 (deboost -0.1372, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3872 (boost 0.1372, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805367",
"player_name": "Chase Meidroth",
"position": "2B",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.203,
"predicted_3B": 0.0,
"predicted_AB": 4.21,
"predicted_AVG": 0.249,
"predicted_BB": 0.377,
"predicted_H": 1.05,
"predicted_HR": 0.12,
"predicted_OBP": 0.341,
"predicted_R": 0.623,
"predicted_RBI": 0.5,
"predicted_SLG": 0.404,
"predicted_SO": 0.986
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1945,
"predicted_3B": 0.0004,
"predicted_AB": 4.0341,
"predicted_AVG": 0.2666,
"predicted_BB": 0.3389,
"predicted_H": 1.0724,
"predicted_HBP": 0.092,
"predicted_HR": 0.1179,
"predicted_OBP": 0.3465,
"predicted_R": 0.6074,
"predicted_RBI": 0.4932,
"predicted_SLG": 0.4152,
"predicted_SO": 1.0156
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.203,
"after": 0.1945,
"delta": -0.0085,
"percent_delta": -0.0419,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 4.0341,
"delta": -0.1759,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2666,
"delta": 0.0176,
"percent_delta": 0.0707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.377,
"after": 0.3389,
"delta": -0.0381,
"percent_delta": -0.1011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0724,
"delta": 0.0224,
"percent_delta": 0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1179,
"delta": -0.0021,
"percent_delta": -0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3465,
"delta": 0.0055,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.623,
"after": 0.6074,
"delta": -0.0156,
"percent_delta": -0.025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.4932,
"delta": -0.0068,
"percent_delta": -0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.404,
"after": 0.4152,
"delta": 0.0112,
"percent_delta": 0.0277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.986,
"after": 1.0156,
"delta": 0.0296,
"percent_delta": 0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2666,
"delta": 0.0176,
"percent_delta": 0.0707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 4.0341,
"delta": -0.1759,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1945,
"predicted_3B": 0.0004,
"predicted_AB": 4.0341,
"predicted_AVG": 0.2547,
"predicted_BB": 0.3352,
"predicted_H": 1.0277,
"predicted_HBP": 0.092,
"predicted_HR": 0.1131,
"predicted_OBP": 0.3119,
"predicted_R": 0.5638,
"predicted_RBI": 0.4578,
"predicted_SLG": 0.3872,
"predicted_SO": 1.0267
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1945,
"after": 0.1945,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0341,
"after": 4.0341,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2666,
"after": 0.2547,
"delta": -0.0119,
"percent_delta": -0.0446,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3389,
"after": 0.3352,
"delta": -0.0037,
"percent_delta": -0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0724,
"after": 1.0277,
"delta": -0.0447,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1179,
"after": 0.1131,
"delta": -0.0048,
"percent_delta": -0.0407,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3465,
"after": 0.3119,
"delta": -0.0346,
"percent_delta": -0.0999,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6074,
"after": 0.5638,
"delta": -0.0436,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4932,
"after": 0.4578,
"delta": -0.0354,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4152,
"after": 0.3872,
"delta": -0.028,
"percent_delta": -0.0674,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0156,
"after": 1.0267,
"delta": 0.0111,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3465,
"after": 0.3119,
"delta": -0.0346,
"percent_delta": -0.0999,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.21), rates preserved: AVG=0.244 HR/AB=0.027",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1945,
"after": 0.0,
"delta": -0.1945,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0341,
"after": 4.0,
"delta": -0.0341,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3352,
"after": 0.0,
"delta": -0.3352,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0277,
"after": 1.0,
"delta": -0.0277,
"percent_delta": -0.027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.0,
"delta": -0.092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1131,
"after": 0.0,
"delta": -0.1131,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4578,
"after": 0.0,
"delta": -0.4578,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0267,
"after": 1.0,
"delta": -0.0267,
"percent_delta": -0.026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4578,
"after": 0.0,
"delta": -0.4578,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5638,
"after": 1.0,
"delta": 0.4362,
"percent_delta": 0.7737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5638,
"after": 1.0,
"delta": 0.4362,
"percent_delta": 0.7737,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2547,
"after": 0.25,
"delta": -0.0047,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3119,
"after": 0.25,
"delta": -0.0619,
"percent_delta": -0.1985,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3872,
"after": 0.25,
"delta": -0.1372,
"percent_delta": -0.3543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3872,
"after": 0.25,
"delta": -0.1372,
"percent_delta": -0.3543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2547,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3119,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3872,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2547,
"delta": 0.0047,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3119,
"delta": 0.0619,
"percent_delta": 0.2477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3872,
"delta": 0.1372,
"percent_delta": 0.549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3872,
"delta": 0.1372,
"percent_delta": 0.549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.203,
"after": 1.0,
"delta": 0.797,
"percent_delta": 3.9261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 4.0,
"delta": -0.21,
"percent_delta": -0.0499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2547,
"delta": 0.0057,
"percent_delta": 0.0229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.377,
"after": 0.0,
"delta": -0.377,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0,
"delta": -0.05,
"percent_delta": -0.0476,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3119,
"delta": -0.0291,
"percent_delta": -0.0853,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.623,
"after": 1.0,
"delta": 0.377,
"percent_delta": 0.6051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.404,
"after": 0.3872,
"delta": -0.0168,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.986,
"after": 0.0,
"delta": -0.986,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.203,
"after": 1.0,
"delta": 0.797,
"percent_delta": 3.9261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.986,
"after": 0.0,
"delta": -0.986,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.203 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.377 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.341 | - |
| predicted_R | 0.623 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.404 | - |
| predicted_SO | 0.986 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.195 | -0.009 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.034 | -0.176 |
| predicted_AVG | 0.267 | 0.018 |
| predicted_BB | 0.339 | -0.038 |
| predicted_H | 1.072 | 0.022 |
| predicted_HBP | 0.092 | - |
| predicted_HR | 0.118 | -0.002 |
| predicted_OBP | 0.346 | 0.005 |
| predicted_R | 0.607 | -0.016 |
| predicted_RBI | 0.493 | -0.007 |
| predicted_SLG | 0.415 | 0.011 |
| predicted_SO | 1.016 | 0.030 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.195 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.034 | 0.000 |
| predicted_AVG | 0.255 | -0.012 |
| predicted_BB | 0.335 | -0.004 |
| predicted_H | 1.028 | -0.045 |
| predicted_HBP | 0.092 | 0.000 |
| predicted_HR | 0.113 | -0.005 |
| predicted_OBP | 0.312 | -0.035 |
| predicted_R | 0.564 | -0.044 |
| predicted_RBI | 0.458 | -0.035 |
| predicted_SLG | 0.387 | -0.028 |
| predicted_SO | 1.027 | 0.011 |
AB rounded to 4 (raw=4.21), rates preserved: AVG=0.244 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.195 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.034 |
| predicted_AVG | 0.250 | -0.005 |
| predicted_BB | 0.000 | -0.335 |
| predicted_H | 1.000 | -0.028 |
| predicted_HR | 0.000 | -0.113 |
| predicted_OBP | 0.250 | -0.062 |
| predicted_R | 1.000 | 0.436 |
| predicted_RBI | 0.000 | -0.458 |
| predicted_SLG | 0.250 | -0.137 |
| predicted_SO | 1.000 | -0.027 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 1.000 | 0.000 | 1.000 | 4.000 | 3.000 | 1.000 | 7.000 | 0.3333 | 0.4000 | 0.5556 | 0.3333 | 0.0556 | 0.2222 | 0.0556 | 0.3889 |
| last_10 | 0.20 | 10 | - | 39.000 | 12.000 | 1.000 | 0.000 | 1.000 | 5.000 | 5.000 | 1.000 | 10.000 | 0.3077 | 0.3571 | 0.4103 | 0.3077 | 0.0256 | 0.1282 | 0.0256 | 0.2564 |
| season | 0.60 | 69 | - | 263.000 | 73.000 | 14.000 | 0.000 | 6.000 | 25.000 | 43.000 | 26.000 | 68.000 | 0.2776 | 0.3447 | 0.3992 | 0.2776 | 0.0228 | 0.0951 | 0.0989 | 0.2586 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1830 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.7940 |
| predicted_AVG | 0.2906 |
| predicted_BB | 0.2870 |
| predicted_H | 1.1030 |
| predicted_HBP | 0.0920 |
| predicted_HR | 0.1150 |
| predicted_OBP | 0.3541 |
| predicted_R | 0.5860 |
| predicted_RBI | 0.4840 |
| predicted_SLG | 0.4306 |
| predicted_SO | 1.0560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2030 | 0.1830 | 0.1945 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2100 | 3.7940 | 4.0341 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2906 | 0.2666 | model_form_blend |
| predicted_BB | 0.3770 | 0.2870 | 0.3389 | model_form_blend |
| predicted_H | 1.0500 | 1.1030 | 1.0724 | model_form_blend |
| predicted_HBP | - | 0.0920 | 0.0920 | form_only |
| predicted_HR | 0.1200 | 0.1150 | 0.1179 | model_form_blend |
| predicted_OBP | 0.3410 | 0.3541 | 0.3465 | model_form_blend |
| predicted_R | 0.6230 | 0.5860 | 0.6074 | model_form_blend |
| predicted_RBI | 0.5000 | 0.4840 | 0.4932 | model_form_blend |
| predicted_SLG | 0.4040 | 0.4306 | 0.4152 | model_form_blend |
| predicted_SO | 0.9860 | 1.0560 | 1.0156 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 246 |
| Season rows before report date | 246 |
| Report year | 2026 |
| Profile rows used | 69 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.278 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 805367 |
| playerID | 805367 |
| playerName | Chase Meidroth |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.333 |
| sl_xwoba | 0.293 |
| sl_xba | 0.234 |
| sl_xslg | 0.336 |
| sl_sweet_spot_percent | 32.8 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 36.0 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | 7.0 |
| sl_whiff_percent | 19.6 |
| sl_swing_percent | 41.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.165 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.366 | 4.000 | 3.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.251 | 0.500 | 0.333 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.361 | 0.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.845 | 2.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.323 | 0.500 | 0.333 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.461 | 1.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.432 | 0.000 | 0.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.409 | 0.500 | 0.333 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.879 | 1.000 | 1.000 | Hitting_SO | - | - | - | - |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_H: 0.8450 -> 2.0000 (boost 1.1550, better) |
| Biggest Deboost | predicted_RBI: 0.4320 -> 0.0000 (deboost -0.4320, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.3660 -> 3.4446 (boost 0.0786, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4091 -> 0.3944 (deboost -0.0147, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.8284 -> 1.0000 (boost 0.1716, better) | predicted_AB: 3.4446 -> 3.0000 (deboost -0.4446, worse) | AB rounded to 3 (raw=3.44), rates preserved: AVG=0.240 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4337 -> 0.0000 (deboost -0.4337, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2405 -> 0.3330 (boost 0.0925, better) | predicted_SLG: 0.3944 -> 0.3330 (deboost -0.0614, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3944 (boost 0.0614, better) | predicted_AVG: 0.3330 -> 0.2405 (deboost -0.0925, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678577",
"player_name": "Junior Perez",
"position": "LF",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.165,
"predicted_3B": 0.018,
"predicted_AB": 3.366,
"predicted_AVG": 0.251,
"predicted_BB": 0.361,
"predicted_H": 0.845,
"predicted_HR": 0.11,
"predicted_OBP": 0.323,
"predicted_R": 0.461,
"predicted_RBI": 0.432,
"predicted_SLG": 0.409,
"predicted_SO": 0.879
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1688,
"predicted_3B": 0.0175,
"predicted_AB": 3.4446,
"predicted_AVG": 0.2509,
"predicted_BB": 0.3509,
"predicted_H": 0.8644,
"predicted_HBP": 0.035,
"predicted_HR": 0.1135,
"predicted_OBP": 0.3215,
"predicted_R": 0.4673,
"predicted_RBI": 0.444,
"predicted_SLG": 0.4091,
"predicted_SO": 0.8747
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.1688,
"delta": 0.0038,
"percent_delta": 0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0175,
"delta": -0.0005,
"percent_delta": -0.0278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.366,
"after": 3.4446,
"delta": 0.0786,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2509,
"delta": -0.0001,
"percent_delta": -0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.361,
"after": 0.3509,
"delta": -0.0101,
"percent_delta": -0.028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.845,
"after": 0.8644,
"delta": 0.0194,
"percent_delta": 0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1135,
"delta": 0.0035,
"percent_delta": 0.0318,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3215,
"delta": -0.0015,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 0.4673,
"delta": 0.0063,
"percent_delta": 0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.432,
"after": 0.444,
"delta": 0.012,
"percent_delta": 0.0278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.409,
"after": 0.4091,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.879,
"after": 0.8747,
"delta": -0.0043,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.366,
"after": 3.4446,
"delta": 0.0786,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 0,
"last_10": 0,
"season": 0
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1688,
"predicted_3B": 0.0175,
"predicted_AB": 3.4446,
"predicted_AVG": 0.2405,
"predicted_BB": 0.3471,
"predicted_H": 0.8284,
"predicted_HBP": 0.035,
"predicted_HR": 0.1088,
"predicted_OBP": 0.31,
"predicted_R": 0.4337,
"predicted_RBI": 0.4121,
"predicted_SLG": 0.3944,
"predicted_SO": 0.8842
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1688,
"after": 0.1688,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0175,
"after": 0.0175,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4446,
"after": 3.4446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2509,
"after": 0.2405,
"delta": -0.0104,
"percent_delta": -0.0415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3509,
"after": 0.3471,
"delta": -0.0038,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8644,
"after": 0.8284,
"delta": -0.036,
"percent_delta": -0.0416,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.035,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1135,
"after": 0.1088,
"delta": -0.0047,
"percent_delta": -0.0414,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3215,
"after": 0.31,
"delta": -0.0115,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4673,
"after": 0.4337,
"delta": -0.0336,
"percent_delta": -0.0719,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.444,
"after": 0.4121,
"delta": -0.0319,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4091,
"after": 0.3944,
"delta": -0.0147,
"percent_delta": -0.0359,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8747,
"after": 0.8842,
"delta": 0.0095,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4091,
"after": 0.3944,
"delta": -0.0147,
"percent_delta": -0.0359,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.44), rates preserved: AVG=0.240 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1688,
"after": 0.0,
"delta": -0.1688,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0175,
"after": 0.0,
"delta": -0.0175,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4446,
"after": 3.0,
"delta": -0.4446,
"percent_delta": -0.1291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3471,
"after": 0.0,
"delta": -0.3471,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8284,
"after": 1.0,
"delta": 0.1716,
"percent_delta": 0.2071,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1088,
"after": 0.0,
"delta": -0.1088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4121,
"after": 0.0,
"delta": -0.4121,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8842,
"after": 1.0,
"delta": 0.1158,
"percent_delta": 0.131,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8284,
"after": 1.0,
"delta": 0.1716,
"percent_delta": 0.2071,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.4446,
"after": 3.0,
"delta": -0.4446,
"percent_delta": -0.1291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4337,
"after": 0.0,
"delta": -0.4337,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4337,
"after": 0.0,
"delta": -0.4337,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2405,
"after": 0.333,
"delta": 0.0925,
"percent_delta": 0.3846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.333,
"delta": 0.023,
"percent_delta": 0.0742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3944,
"after": 0.333,
"delta": -0.0614,
"percent_delta": -0.1557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2405,
"after": 0.333,
"delta": 0.0925,
"percent_delta": 0.3846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3944,
"after": 0.333,
"delta": -0.0614,
"percent_delta": -0.1557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2405,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.31,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3944,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2405,
"delta": -0.0925,
"percent_delta": -0.2778,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.31,
"delta": -0.023,
"percent_delta": -0.0691,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3944,
"delta": 0.0614,
"percent_delta": 0.1845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3944,
"delta": 0.0614,
"percent_delta": 0.1845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2405,
"delta": -0.0925,
"percent_delta": -0.2778,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.0,
"delta": -0.165,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.366,
"after": 4.0,
"delta": 0.634,
"percent_delta": 0.1884,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2405,
"delta": -0.0105,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.361,
"after": 0.0,
"delta": -0.361,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.845,
"after": 2.0,
"delta": 1.155,
"percent_delta": 1.3669,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.31,
"delta": -0.013,
"percent_delta": -0.0402,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 1.0,
"delta": 0.539,
"percent_delta": 1.1692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.432,
"after": 0.0,
"delta": -0.432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.409,
"after": 0.3944,
"delta": -0.0146,
"percent_delta": -0.0357,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.879,
"after": 1.0,
"delta": 0.121,
"percent_delta": 0.1377,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.845,
"after": 2.0,
"delta": 1.155,
"percent_delta": 1.3669,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.432,
"after": 0.0,
"delta": -0.432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.165 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.366 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.361 | - |
| predicted_H | 0.845 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.323 | - |
| predicted_R | 0.461 | - |
| predicted_RBI | 0.432 | - |
| predicted_SLG | 0.409 | - |
| predicted_SO | 0.879 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.169 | 0.004 |
| predicted_3B | 0.018 | -0.000 |
| predicted_AB | 3.445 | 0.079 |
| predicted_AVG | 0.251 | -0.000 |
| predicted_BB | 0.351 | -0.010 |
| predicted_H | 0.864 | 0.019 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.114 | 0.004 |
| predicted_OBP | 0.322 | -0.002 |
| predicted_R | 0.467 | 0.006 |
| predicted_RBI | 0.444 | 0.012 |
| predicted_SLG | 0.409 | 0.000 |
| predicted_SO | 0.875 | -0.004 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.169 | 0.000 |
| predicted_3B | 0.018 | 0.000 |
| predicted_AB | 3.445 | 0.000 |
| predicted_AVG | 0.240 | -0.010 |
| predicted_BB | 0.347 | -0.004 |
| predicted_H | 0.828 | -0.036 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.109 | -0.005 |
| predicted_OBP | 0.310 | -0.012 |
| predicted_R | 0.434 | -0.034 |
| predicted_RBI | 0.412 | -0.032 |
| predicted_SLG | 0.394 | -0.015 |
| predicted_SO | 0.884 | 0.009 |
AB rounded to 3 (raw=3.44), rates preserved: AVG=0.240 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.169 |
| predicted_3B | 0.000 | -0.018 |
| predicted_AB | 3.000 | -0.445 |
| predicted_AVG | 0.333 | 0.093 |
| predicted_BB | 0.000 | -0.347 |
| predicted_H | 1.000 | 0.172 |
| predicted_HR | 0.000 | -0.109 |
| predicted_OBP | 0.333 | 0.023 |
| predicted_R | 0.000 | -0.434 |
| predicted_RBI | 0.000 | -0.412 |
| predicted_SLG | 0.333 | -0.061 |
| predicted_SO | 1.000 | 0.116 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| last_10 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| season | 0.60 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| Metric | Value |
|---|---|
| predicted_2B | 0.1890 |
| predicted_3B | 0.0150 |
| predicted_AB | 3.8650 |
| predicted_AVG | 0.2505 |
| predicted_BB | 0.2970 |
| predicted_H | 0.9680 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1320 |
| predicted_OBP | 0.3134 |
| predicted_R | 0.5010 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.4098 |
| predicted_SO | 0.8520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1650 | 0.1890 | 0.1688 | model_form_blend |
| predicted_3B | 0.0180 | 0.0150 | 0.0175 | model_form_blend |
| predicted_AB | 3.3660 | 3.8650 | 3.4446 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2505 | 0.2509 | model_form_blend |
| predicted_BB | 0.3610 | 0.2970 | 0.3509 | model_form_blend |
| predicted_H | 0.8450 | 0.9680 | 0.8644 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1100 | 0.1320 | 0.1135 | model_form_blend |
| predicted_OBP | 0.3230 | 0.3134 | 0.3215 | model_form_blend |
| predicted_R | 0.4610 | 0.5010 | 0.4673 | model_form_blend |
| predicted_RBI | 0.4320 | 0.5080 | 0.4440 | model_form_blend |
| predicted_SLG | 0.4090 | 0.4098 | 0.4091 | model_form_blend |
| predicted_SO | 0.8790 | 0.8520 | 0.8747 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 0 |
| Season rows before report date | 0 |
| Report year | 2026 |
| Profile rows used | 0 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.0 |
No historical data found for this player before report date.
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.022 | 0.000 | 0.000 | Hitting_2B | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.044 | 4.000 | 3.000 | Hitting_AB | 3.196 | 4.000 | 0.804 | 0.000 |
| predicted_AVG | 0.252 | 0.000 | 0.333 | Hitting_AVG | 0.195 | 0.750 | -0.195 | -0.750 |
| predicted_BB | 0.244 | 0.000 | 0.000 | Hitting_BB | 0.336 | 0.000 | -0.336 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.700 | 0.000 | 1.000 | Hitting_H | 0.622 | 3.000 | -0.622 | -3.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_OBP | 0.284 | 0.000 | 0.333 | Hitting_OBP | 0.269 | 0.750 | -0.269 | -0.750 |
| predicted_R | 0.244 | 0.000 | 0.000 | Hitting_R | 0.301 | 0.000 | -0.301 | 0.000 |
| predicted_RBI | 0.320 | 0.000 | 0.000 | Hitting_RBI | 0.434 | 0.000 | -0.434 | 0.000 |
| predicted_SLG | 0.327 | 0.000 | 0.333 | Hitting_SLG | 0.243 | 0.750 | -0.243 | -0.750 |
| predicted_SO | 0.867 | 0.000 | 1.000 | Hitting_SO | 0.930 | 0.000 | -0.930 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.0440 -> 4.0000 (boost 0.9560, better) |
| Biggest Deboost | predicted_SO: 0.8670 -> 0.0000 (deboost -0.8670, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3270 -> 0.3173 (deboost -0.0097, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2447 -> 0.2219 (deboost -0.0228, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.6816 -> 1.0000 (boost 0.3184, better) | predicted_RBI: 0.2799 -> 0.0000 (deboost -0.2799, worse) | AB rounded to 3 (raw=3.07), rates preserved: AVG=0.222 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2202 -> 0.0000 (deboost -0.2202, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2219 -> 0.3330 (boost 0.1111, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2219 (deboost -0.1111, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "700337",
"player_name": "Edgar Quero",
"position": "C",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.022,
"predicted_3B": 0.0,
"predicted_AB": 3.044,
"predicted_AVG": 0.252,
"predicted_BB": 0.244,
"predicted_H": 0.7,
"predicted_HR": 0.08,
"predicted_OBP": 0.284,
"predicted_R": 0.244,
"predicted_RBI": 0.32,
"predicted_SLG": 0.327,
"predicted_SO": 0.867
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0276,
"predicted_3B": 0.0008,
"predicted_AB": 3.0718,
"predicted_AVG": 0.2447,
"predicted_BB": 0.2118,
"predicted_H": 0.7113,
"predicted_HBP": 0.016,
"predicted_HR": 0.0711,
"predicted_OBP": 0.2793,
"predicted_R": 0.2372,
"predicted_RBI": 0.3015,
"predicted_SLG": 0.3173,
"predicted_SO": 0.8457
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.022,
"after": 0.0276,
"delta": 0.0056,
"percent_delta": 0.2545,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.044,
"after": 3.0718,
"delta": 0.0278,
"percent_delta": 0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2447,
"delta": -0.0073,
"percent_delta": -0.029,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.244,
"after": 0.2118,
"delta": -0.0322,
"percent_delta": -0.132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 0.7113,
"delta": 0.0113,
"percent_delta": 0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0711,
"delta": -0.0089,
"percent_delta": -0.1113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2793,
"delta": -0.0047,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.244,
"after": 0.2372,
"delta": -0.0068,
"percent_delta": -0.0279,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.3015,
"delta": -0.0185,
"percent_delta": -0.0578,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3173,
"delta": -0.0097,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.867,
"after": 0.8457,
"delta": -0.0213,
"percent_delta": -0.0246,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3173,
"delta": -0.0097,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 45
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0276,
"predicted_3B": 0.0008,
"predicted_AB": 3.0718,
"predicted_AVG": 0.2219,
"predicted_BB": 0.2095,
"predicted_H": 0.6816,
"predicted_HBP": 0.016,
"predicted_HR": 0.0682,
"predicted_OBP": 0.2716,
"predicted_R": 0.2202,
"predicted_RBI": 0.2799,
"predicted_SLG": 0.298,
"predicted_SO": 0.8549
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0276,
"after": 0.0276,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0718,
"after": 3.0718,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2447,
"after": 0.2219,
"delta": -0.0228,
"percent_delta": -0.0932,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2118,
"after": 0.2095,
"delta": -0.0023,
"percent_delta": -0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7113,
"after": 0.6816,
"delta": -0.0297,
"percent_delta": -0.0418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0711,
"after": 0.0682,
"delta": -0.0029,
"percent_delta": -0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2793,
"after": 0.2716,
"delta": -0.0077,
"percent_delta": -0.0276,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2372,
"after": 0.2202,
"delta": -0.017,
"percent_delta": -0.0717,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3015,
"after": 0.2799,
"delta": -0.0216,
"percent_delta": -0.0716,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3173,
"after": 0.298,
"delta": -0.0193,
"percent_delta": -0.0608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8457,
"after": 0.8549,
"delta": 0.0092,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2447,
"after": 0.2219,
"delta": -0.0228,
"percent_delta": -0.0932,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.07), rates preserved: AVG=0.222 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0276,
"after": 0.0,
"delta": -0.0276,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0718,
"after": 3.0,
"delta": -0.0718,
"percent_delta": -0.0234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2095,
"after": 0.0,
"delta": -0.2095,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6816,
"after": 1.0,
"delta": 0.3184,
"percent_delta": 0.4671,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0682,
"after": 0.0,
"delta": -0.0682,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2799,
"after": 0.0,
"delta": -0.2799,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8549,
"after": 1.0,
"delta": 0.1451,
"percent_delta": 0.1697,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6816,
"after": 1.0,
"delta": 0.3184,
"percent_delta": 0.4671,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2799,
"after": 0.0,
"delta": -0.2799,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2202,
"after": 0.0,
"delta": -0.2202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2202,
"after": 0.0,
"delta": -0.2202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2219,
"after": 0.333,
"delta": 0.1111,
"percent_delta": 0.5007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2716,
"after": 0.333,
"delta": 0.0614,
"percent_delta": 0.2261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.298,
"after": 0.333,
"delta": 0.035,
"percent_delta": 0.1174,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2219,
"after": 0.333,
"delta": 0.1111,
"percent_delta": 0.5007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2219,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2716,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.298,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2219,
"delta": -0.1111,
"percent_delta": -0.3336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2716,
"delta": -0.0614,
"percent_delta": -0.1844,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.298,
"delta": -0.035,
"percent_delta": -0.1051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2219,
"delta": -0.1111,
"percent_delta": -0.3336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.022,
"after": 0.0,
"delta": -0.022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.044,
"after": 4.0,
"delta": 0.956,
"percent_delta": 0.3141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2219,
"delta": -0.0301,
"percent_delta": -0.1194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.244,
"after": 0.0,
"delta": -0.244,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 0.0,
"delta": -0.7,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2716,
"delta": -0.0124,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.244,
"after": 0.0,
"delta": -0.244,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.298,
"delta": -0.029,
"percent_delta": -0.0887,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.867,
"after": 0.0,
"delta": -0.867,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.044,
"after": 4.0,
"delta": 0.956,
"percent_delta": 0.3141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.867,
"after": 0.0,
"delta": -0.867,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.022 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.044 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.244 | - |
| predicted_H | 0.700 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.284 | - |
| predicted_R | 0.244 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.327 | - |
| predicted_SO | 0.867 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.028 | 0.006 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.072 | 0.028 |
| predicted_AVG | 0.245 | -0.007 |
| predicted_BB | 0.212 | -0.032 |
| predicted_H | 0.711 | 0.011 |
| predicted_HBP | 0.016 | - |
| predicted_HR | 0.071 | -0.009 |
| predicted_OBP | 0.279 | -0.005 |
| predicted_R | 0.237 | -0.007 |
| predicted_RBI | 0.301 | -0.019 |
| predicted_SLG | 0.317 | -0.010 |
| predicted_SO | 0.846 | -0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.028 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.072 | 0.000 |
| predicted_AVG | 0.222 | -0.023 |
| predicted_BB | 0.209 | -0.002 |
| predicted_H | 0.682 | -0.030 |
| predicted_HBP | 0.016 | 0.000 |
| predicted_HR | 0.068 | -0.003 |
| predicted_OBP | 0.272 | -0.008 |
| predicted_R | 0.220 | -0.017 |
| predicted_RBI | 0.280 | -0.022 |
| predicted_SLG | 0.298 | -0.019 |
| predicted_SO | 0.855 | 0.009 |
AB rounded to 3 (raw=3.07), rates preserved: AVG=0.222 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.028 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.072 |
| predicted_AVG | 0.333 | 0.111 |
| predicted_BB | 0.000 | -0.209 |
| predicted_H | 1.000 | 0.318 |
| predicted_HR | 0.000 | -0.068 |
| predicted_OBP | 0.333 | 0.061 |
| predicted_R | 0.000 | -0.220 |
| predicted_RBI | 0.000 | -0.280 |
| predicted_SLG | 0.333 | 0.035 |
| predicted_SO | 1.000 | 0.145 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 0.2857 | 0.2857 | 0.2857 | 0.2857 | 0.0000 | 0.0000 | 0.0000 | 0.2857 |
| last_10 | 0.20 | 10 | - | 29.000 | 8.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 6.000 | 0.2759 | 0.2759 | 0.3793 | 0.2759 | 0.0345 | 0.0690 | 0.0000 | 0.2069 |
| season | 0.60 | 45 | - | 137.000 | 27.000 | 1.000 | 0.000 | 2.000 | 15.000 | 11.000 | 11.000 | 39.000 | 0.1971 | 0.2532 | 0.2482 | 0.1971 | 0.0146 | 0.1095 | 0.0803 | 0.2847 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0360 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1130 |
| predicted_AVG | 0.2338 |
| predicted_BB | 0.1640 |
| predicted_H | 0.7280 |
| predicted_HBP | 0.0160 |
| predicted_HR | 0.0580 |
| predicted_OBP | 0.2723 |
| predicted_R | 0.2270 |
| predicted_RBI | 0.2740 |
| predicted_SLG | 0.3028 |
| predicted_SO | 0.8140 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0220 | 0.0360 | 0.0276 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.0440 | 3.1130 | 3.0718 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2338 | 0.2447 | model_form_blend |
| predicted_BB | 0.2440 | 0.1640 | 0.2118 | model_form_blend |
| predicted_H | 0.7000 | 0.7280 | 0.7113 | model_form_blend |
| predicted_HBP | - | 0.0160 | 0.0160 | form_only |
| predicted_HR | 0.0800 | 0.0580 | 0.0711 | model_form_blend |
| predicted_OBP | 0.2840 | 0.2723 | 0.2793 | model_form_blend |
| predicted_R | 0.2440 | 0.2270 | 0.2372 | model_form_blend |
| predicted_RBI | 0.3200 | 0.2740 | 0.3015 | model_form_blend |
| predicted_SLG | 0.3270 | 0.3028 | 0.3173 | model_form_blend |
| predicted_SO | 0.8670 | 0.8140 | 0.8457 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 143 |
| Season rows before report date | 143 |
| Report year | 2026 |
| Profile rows used | 45 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.197 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.75 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 700337 |
| playerID | 700337 |
| playerName | Edgar Quero |
| pos | C |
| started | True |
| startingPosition | C |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.5 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.238 |
| sl_xwoba | 0.253 |
| sl_xba | 0.2 |
| sl_xslg | 0.275 |
| sl_sweet_spot_percent | 26.7 |
| sl_barrel_batted_rate | 1.9 |
| sl_hard_hit_percent | 34.3 |
| sl_exit_velocity_avg | 91.0 |
| sl_launch_angle_avg | 9.2 |
| sl_whiff_percent | 24.8 |
| sl_swing_percent | 48.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.286 | 1.000 | 0.000 | Hitting_2B | 0.250 | 0.000 | 0.750 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.857 | 4.000 | 4.000 | Hitting_AB | 3.375 | 4.000 | 0.625 | 0.000 |
| predicted_AVG | 0.224 | 0.250 | 0.250 | Hitting_AVG | 0.222 | 0.250 | 0.028 | 0.000 |
| predicted_BB | 0.143 | 0.000 | 0.000 | Hitting_BB | 0.125 | 0.000 | -0.125 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.770 | 1.000 | 1.000 | Hitting_H | 0.750 | 1.000 | 0.250 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.125 | 0.000 | -0.125 | 0.000 |
| predicted_OBP | 0.269 | 0.250 | 0.250 | Hitting_OBP | 0.250 | 0.250 | 0.000 | 0.000 |
| predicted_R | 0.571 | 0.000 | 1.000 | Hitting_R | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_RBI | 0.400 | 0.000 | 0.000 | Hitting_RBI | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_SLG | 0.336 | 0.500 | 0.250 | Hitting_SLG | 0.407 | 0.250 | 0.093 | 0.250 |
| predicted_SO | 1.143 | 1.000 | 1.000 | Hitting_SO | 1.000 | 2.000 | 0.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_2B: 0.2860 -> 1.0000 (boost 0.7140, better) |
| Biggest Deboost | predicted_R: 0.5710 -> 0.0000 (deboost -0.5710, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3360 -> 0.3272 (deboost -0.0088, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.2636 -> 0.2254 (deboost -0.0382, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 3 | 4 | predicted_H: 0.7319 -> 1.0000 (boost 0.2681, better) | predicted_RBI: 0.3730 -> 0.0000 (deboost -0.3730, worse) | AB rounded to 4 (raw=3.86), rates preserved: AVG=0.190 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5031 -> 1.0000 (boost 0.4969, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1910 -> 0.2500 (boost 0.0590, better) | predicted_SLG: 0.3270 -> 0.2500 (deboost -0.0770, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3270 (boost 0.0770, better) | predicted_AVG: 0.2500 -> 0.1910 (deboost -0.0590, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695731",
"player_name": "Braden Montgomery",
"position": "RF",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.286,
"predicted_3B": 0.0,
"predicted_AB": 3.857,
"predicted_AVG": 0.224,
"predicted_BB": 0.143,
"predicted_H": 0.77,
"predicted_HR": 0.1,
"predicted_OBP": 0.269,
"predicted_R": 0.571,
"predicted_RBI": 0.4,
"predicted_SLG": 0.336,
"predicted_SO": 1.143
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2406,
"predicted_3B": 0.0024,
"predicted_AB": 3.8319,
"predicted_AVG": 0.2164,
"predicted_BB": 0.1723,
"predicted_H": 0.7637,
"predicted_HBP": 0.018,
"predicted_HR": 0.0958,
"predicted_OBP": 0.2636,
"predicted_R": 0.542,
"predicted_RBI": 0.4018,
"predicted_SLG": 0.3272,
"predicted_SO": 1.1057
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.286,
"after": 0.2406,
"delta": -0.0454,
"percent_delta": -0.1587,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0024,
"delta": 0.0024,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.857,
"after": 3.8319,
"delta": -0.0251,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.2164,
"delta": -0.0076,
"percent_delta": -0.0339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.143,
"after": 0.1723,
"delta": 0.0293,
"percent_delta": 0.2049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.7637,
"delta": -0.0063,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0958,
"delta": -0.0042,
"percent_delta": -0.042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.269,
"after": 0.2636,
"delta": -0.0054,
"percent_delta": -0.0201,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.571,
"after": 0.542,
"delta": -0.029,
"percent_delta": -0.0508,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.4018,
"delta": 0.0018,
"percent_delta": 0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3272,
"delta": -0.0088,
"percent_delta": -0.0262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.143,
"after": 1.1057,
"delta": -0.0373,
"percent_delta": -0.0326,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3272,
"delta": -0.0088,
"percent_delta": -0.0262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 7,
"season": 7
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2406,
"predicted_3B": 0.0024,
"predicted_AB": 3.8319,
"predicted_AVG": 0.191,
"predicted_BB": 0.1704,
"predicted_H": 0.7319,
"predicted_HBP": 0.018,
"predicted_HR": 0.0919,
"predicted_OBP": 0.2254,
"predicted_R": 0.5031,
"predicted_RBI": 0.373,
"predicted_SLG": 0.327,
"predicted_SO": 1.1178
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2406,
"after": 0.2406,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0024,
"after": 0.0024,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8319,
"after": 3.8319,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2164,
"after": 0.191,
"delta": -0.0254,
"percent_delta": -0.1174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1723,
"after": 0.1704,
"delta": -0.0019,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7637,
"after": 0.7319,
"delta": -0.0318,
"percent_delta": -0.0416,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0958,
"after": 0.0919,
"delta": -0.0039,
"percent_delta": -0.0407,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2636,
"after": 0.2254,
"delta": -0.0382,
"percent_delta": -0.1449,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.542,
"after": 0.5031,
"delta": -0.0389,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4018,
"after": 0.373,
"delta": -0.0288,
"percent_delta": -0.0717,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3272,
"after": 0.327,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.1057,
"after": 1.1178,
"delta": 0.0121,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2636,
"after": 0.2254,
"delta": -0.0382,
"percent_delta": -0.1449,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.86), rates preserved: AVG=0.190 HR/AB=0.024",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2406,
"after": 0.0,
"delta": -0.2406,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0024,
"after": 0.0,
"delta": -0.0024,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8319,
"after": 4.0,
"delta": 0.1681,
"percent_delta": 0.0439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1704,
"after": 0.0,
"delta": -0.1704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7319,
"after": 1.0,
"delta": 0.2681,
"percent_delta": 0.3663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0919,
"after": 0.0,
"delta": -0.0919,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.373,
"after": 0.0,
"delta": -0.373,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1178,
"after": 1.0,
"delta": -0.1178,
"percent_delta": -0.1054,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7319,
"after": 1.0,
"delta": 0.2681,
"percent_delta": 0.3663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.373,
"after": 0.0,
"delta": -0.373,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5031,
"after": 1.0,
"delta": 0.4969,
"percent_delta": 0.9877,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5031,
"after": 1.0,
"delta": 0.4969,
"percent_delta": 0.9877,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.191,
"after": 0.25,
"delta": 0.059,
"percent_delta": 0.3089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2254,
"after": 0.25,
"delta": 0.0246,
"percent_delta": 0.1091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.25,
"delta": -0.077,
"percent_delta": -0.2355,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.191,
"after": 0.25,
"delta": 0.059,
"percent_delta": 0.3089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.25,
"delta": -0.077,
"percent_delta": -0.2355,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.191,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2254,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.327,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.191,
"delta": -0.059,
"percent_delta": -0.236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2254,
"delta": -0.0246,
"percent_delta": -0.0982,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.327,
"delta": 0.077,
"percent_delta": 0.3078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.327,
"delta": 0.077,
"percent_delta": 0.3078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.191,
"delta": -0.059,
"percent_delta": -0.236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.286,
"after": 1.0,
"delta": 0.714,
"percent_delta": 2.4965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.857,
"after": 4.0,
"delta": 0.143,
"percent_delta": 0.0371,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.191,
"delta": -0.033,
"percent_delta": -0.1473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.143,
"after": 0.0,
"delta": -0.143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.0,
"delta": 0.23,
"percent_delta": 0.2987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.269,
"after": 0.2254,
"delta": -0.0436,
"percent_delta": -0.1621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.571,
"after": 0.0,
"delta": -0.571,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.327,
"delta": -0.009,
"percent_delta": -0.0268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.143,
"after": 1.0,
"delta": -0.143,
"percent_delta": -0.1251,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.286,
"after": 1.0,
"delta": 0.714,
"percent_delta": 2.4965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.571,
"after": 0.0,
"delta": -0.571,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.286 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.857 | - |
| predicted_AVG | 0.224 | - |
| predicted_BB | 0.143 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.269 | - |
| predicted_R | 0.571 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.336 | - |
| predicted_SO | 1.143 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.241 | -0.045 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.832 | -0.025 |
| predicted_AVG | 0.216 | -0.008 |
| predicted_BB | 0.172 | 0.029 |
| predicted_H | 0.764 | -0.006 |
| predicted_HBP | 0.018 | - |
| predicted_HR | 0.096 | -0.004 |
| predicted_OBP | 0.264 | -0.005 |
| predicted_R | 0.542 | -0.029 |
| predicted_RBI | 0.402 | 0.002 |
| predicted_SLG | 0.327 | -0.009 |
| predicted_SO | 1.106 | -0.037 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.241 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.832 | 0.000 |
| predicted_AVG | 0.191 | -0.025 |
| predicted_BB | 0.170 | -0.002 |
| predicted_H | 0.732 | -0.032 |
| predicted_HBP | 0.018 | 0.000 |
| predicted_HR | 0.092 | -0.004 |
| predicted_OBP | 0.225 | -0.038 |
| predicted_R | 0.503 | -0.039 |
| predicted_RBI | 0.373 | -0.029 |
| predicted_SLG | 0.327 | -0.000 |
| predicted_SO | 1.118 | 0.012 |
AB rounded to 4 (raw=3.86), rates preserved: AVG=0.190 HR/AB=0.024
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.241 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.168 |
| predicted_AVG | 0.250 | 0.059 |
| predicted_BB | 0.000 | -0.170 |
| predicted_H | 1.000 | 0.268 |
| predicted_HR | 0.000 | -0.092 |
| predicted_OBP | 0.250 | 0.025 |
| predicted_R | 1.000 | 0.497 |
| predicted_RBI | 0.000 | -0.373 |
| predicted_SLG | 0.250 | -0.077 |
| predicted_SO | 1.000 | -0.118 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 6.000 | 0.1111 | 0.1579 | 0.1111 | 0.1111 | 0.0000 | 0.0556 | 0.0556 | 0.3333 |
| last_10 | 0.20 | 7 | - | 27.000 | 6.000 | 2.000 | 0.000 | 1.000 | 4.000 | 4.000 | 1.000 | 8.000 | 0.2222 | 0.2500 | 0.4074 | 0.2222 | 0.0370 | 0.1482 | 0.0370 | 0.2963 |
| season | 0.60 | 7 | - | 27.000 | 6.000 | 2.000 | 0.000 | 1.000 | 4.000 | 4.000 | 1.000 | 8.000 | 0.2222 | 0.2500 | 0.4074 | 0.2222 | 0.0370 | 0.1482 | 0.0370 | 0.2963 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1340 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.7730 |
| predicted_AVG | 0.1985 |
| predicted_BB | 0.2410 |
| predicted_H | 0.7490 |
| predicted_HBP | 0.0180 |
| predicted_HR | 0.0860 |
| predicted_OBP | 0.2510 |
| predicted_R | 0.4740 |
| predicted_RBI | 0.4060 |
| predicted_SLG | 0.3064 |
| predicted_SO | 1.0180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2860 | 0.1340 | 0.2406 | model_form_blend |
| predicted_3B | 0.0000 | 0.0080 | 0.0024 | model_form_blend |
| predicted_AB | 3.8570 | 3.7730 | 3.8319 | model_form_blend |
| predicted_AVG | 0.2240 | 0.1985 | 0.2164 | model_form_blend |
| predicted_BB | 0.1430 | 0.2410 | 0.1723 | model_form_blend |
| predicted_H | 0.7700 | 0.7490 | 0.7637 | model_form_blend |
| predicted_HBP | - | 0.0180 | 0.0180 | form_only |
| predicted_HR | 0.1000 | 0.0860 | 0.0958 | model_form_blend |
| predicted_OBP | 0.2690 | 0.2510 | 0.2636 | model_form_blend |
| predicted_R | 0.5710 | 0.4740 | 0.5420 | model_form_blend |
| predicted_RBI | 0.4000 | 0.4060 | 0.4018 | model_form_blend |
| predicted_SLG | 0.3360 | 0.3064 | 0.3272 | model_form_blend |
| predicted_SO | 1.1430 | 1.0180 | 1.1057 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 8 |
| Season rows before report date | 8 |
| Report year | 2026 |
| Profile rows used | 7 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.222 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 695731 |
| playerID | 695731 |
| playerName | Braden Montgomery |
| pos | OF |
| started | True |
| startingPosition | RF |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.6 |
| sl_bb_percent | 3.6 |
| sl_woba | 0.285 |
| sl_xwoba | 0.299 |
| sl_xba | 0.256 |
| sl_xslg | 0.412 |
| sl_sweet_spot_percent | 42.1 |
| sl_barrel_batted_rate | 10.5 |
| sl_hard_hit_percent | 47.4 |
| sl_exit_velocity_avg | 91.9 |
| sl_launch_angle_avg | 4.8 |
| sl_whiff_percent | 26.0 |
| sl_swing_percent | 50.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.242 | 0.000 | 0.000 | Hitting_2B | 0.186 | 0.000 | -0.186 | 0.000 |
| predicted_3B | 0.032 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 2.855 | 4.000 | 3.000 | Hitting_AB | 2.970 | 3.000 | 1.030 | 1.000 |
| predicted_AVG | 0.253 | 0.250 | 0.333 | Hitting_AVG | 0.292 | 0.000 | -0.042 | 0.250 |
| predicted_BB | 0.226 | 0.000 | 0.000 | Hitting_BB | 0.263 | 0.000 | -0.263 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_H | 0.250 | 1.000 | 1.000 | Hitting_H | 0.868 | 0.000 | 0.132 | 1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.054 | 0.000 | -0.054 | 0.000 |
| predicted_OBP | 0.291 | 0.250 | 0.333 | Hitting_OBP | 0.355 | 0.000 | -0.105 | 0.250 |
| predicted_R | 0.323 | 0.000 | 0.000 | Hitting_R | 0.365 | 0.000 | -0.365 | 0.000 |
| predicted_RBI | 0.170 | 0.000 | 0.000 | Hitting_RBI | 0.341 | 0.000 | -0.341 | 0.000 |
| predicted_SLG | 0.432 | 0.250 | 0.333 | Hitting_SLG | 0.421 | 0.000 | -0.171 | 0.250 |
| predicted_SO | 0.597 | 2.000 | 1.000 | Hitting_SO | 0.623 | 1.000 | 1.377 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.5970 -> 2.0000 (boost 1.4030, worse) |
| Biggest Deboost | predicted_R: 0.3230 -> 0.0000 (deboost -0.3230, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.2500 -> 0.4717 (boost 0.2217, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4527 -> 0.3260 (deboost -0.1267, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.6334 -> 1.0000 (boost 0.3666, worse) | predicted_H: 0.4520 -> 0.0000 (deboost -0.4520, worse) | AB rounded to 3 (raw=2.92), rates preserved: AVG=0.155 HR/AB=0.019 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3123 -> 0.0000 (deboost -0.3123, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1546 -> 0.3330 (boost 0.1784, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1546 (deboost -0.1784, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "671976",
"player_name": "Tristan Peters",
"position": "CF",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.242,
"predicted_3B": 0.032,
"predicted_AB": 2.855,
"predicted_AVG": 0.253,
"predicted_BB": 0.226,
"predicted_H": 0.25,
"predicted_HR": 0.03,
"predicted_OBP": 0.291,
"predicted_R": 0.323,
"predicted_RBI": 0.17,
"predicted_SLG": 0.432,
"predicted_SO": 0.597
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2399,
"predicted_3B": 0.0492,
"predicted_AB": 2.9244,
"predicted_AVG": 0.2564,
"predicted_BB": 0.2264,
"predicted_H": 0.4717,
"predicted_HBP": 0.013,
"predicted_HR": 0.0567,
"predicted_OBP": 0.3011,
"predicted_R": 0.3365,
"predicted_RBI": 0.2931,
"predicted_SLG": 0.4527,
"predicted_SO": 0.6266
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.242,
"after": 0.2399,
"delta": -0.0021,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0492,
"delta": 0.0172,
"percent_delta": 0.5375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.855,
"after": 2.9244,
"delta": 0.0694,
"percent_delta": 0.0243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2564,
"delta": 0.0034,
"percent_delta": 0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.226,
"after": 0.2264,
"delta": 0.0004,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.25,
"after": 0.4717,
"delta": 0.2217,
"percent_delta": 0.8868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0567,
"delta": 0.0267,
"percent_delta": 0.89,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.291,
"after": 0.3011,
"delta": 0.0101,
"percent_delta": 0.0347,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.323,
"after": 0.3365,
"delta": 0.0135,
"percent_delta": 0.0418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.2931,
"delta": 0.1231,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.432,
"after": 0.4527,
"delta": 0.0207,
"percent_delta": 0.0479,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.597,
"after": 0.6266,
"delta": 0.0296,
"percent_delta": 0.0496,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.25,
"after": 0.4717,
"delta": 0.2217,
"percent_delta": 0.8868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 62
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2399,
"predicted_3B": 0.0492,
"predicted_AB": 2.9244,
"predicted_AVG": 0.1546,
"predicted_BB": 0.2239,
"predicted_H": 0.452,
"predicted_HBP": 0.013,
"predicted_HR": 0.0544,
"predicted_OBP": 0.2147,
"predicted_R": 0.3123,
"predicted_RBI": 0.2721,
"predicted_SLG": 0.326,
"predicted_SO": 0.6334
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2399,
"after": 0.2399,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0492,
"after": 0.0492,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9244,
"after": 2.9244,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2564,
"after": 0.1546,
"delta": -0.1018,
"percent_delta": -0.397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2264,
"after": 0.2239,
"delta": -0.0025,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4717,
"after": 0.452,
"delta": -0.0197,
"percent_delta": -0.0418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.013,
"after": 0.013,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0567,
"after": 0.0544,
"delta": -0.0023,
"percent_delta": -0.0406,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3011,
"after": 0.2147,
"delta": -0.0864,
"percent_delta": -0.2869,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3365,
"after": 0.3123,
"delta": -0.0242,
"percent_delta": -0.0719,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2931,
"after": 0.2721,
"delta": -0.021,
"percent_delta": -0.0716,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4527,
"after": 0.326,
"delta": -0.1267,
"percent_delta": -0.2799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6266,
"after": 0.6334,
"delta": 0.0068,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4527,
"after": 0.326,
"delta": -0.1267,
"percent_delta": -0.2799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.92), rates preserved: AVG=0.155 HR/AB=0.019",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2399,
"after": 0.0,
"delta": -0.2399,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0492,
"after": 0.0,
"delta": -0.0492,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9244,
"after": 3.0,
"delta": 0.0756,
"percent_delta": 0.0259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2239,
"after": 0.0,
"delta": -0.2239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.452,
"after": 0.0,
"delta": -0.452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.013,
"after": 0.0,
"delta": -0.013,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0544,
"after": 0.0,
"delta": -0.0544,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2721,
"after": 0.0,
"delta": -0.2721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6334,
"after": 1.0,
"delta": 0.3666,
"percent_delta": 0.5788,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6334,
"after": 1.0,
"delta": 0.3666,
"percent_delta": 0.5788,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.452,
"after": 0.0,
"delta": -0.452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3123,
"after": 0.0,
"delta": -0.3123,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3123,
"after": 0.0,
"delta": -0.3123,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1546,
"after": 0.333,
"delta": 0.1784,
"percent_delta": 1.1539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2147,
"after": 0.333,
"delta": 0.1183,
"percent_delta": 0.551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.326,
"after": 0.333,
"delta": 0.007,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1546,
"after": 0.333,
"delta": 0.1784,
"percent_delta": 1.1539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1546,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2147,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.326,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1546,
"delta": -0.1784,
"percent_delta": -0.5358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2147,
"delta": -0.1183,
"percent_delta": -0.3552,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.326,
"delta": -0.007,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1546,
"delta": -0.1784,
"percent_delta": -0.5358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.242,
"after": 0.0,
"delta": -0.242,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.855,
"after": 4.0,
"delta": 1.145,
"percent_delta": 0.4011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.1546,
"delta": -0.0984,
"percent_delta": -0.3889,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.226,
"after": 0.0,
"delta": -0.226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.25,
"after": 1.0,
"delta": 0.75,
"percent_delta": 3.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.291,
"after": 0.2147,
"delta": -0.0763,
"percent_delta": -0.2622,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.323,
"after": 0.0,
"delta": -0.323,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.432,
"after": 0.326,
"delta": -0.106,
"percent_delta": -0.2454,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.597,
"after": 2.0,
"delta": 1.403,
"percent_delta": 2.3501,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.597,
"after": 2.0,
"delta": 1.403,
"percent_delta": 2.3501,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.323,
"after": 0.0,
"delta": -0.323,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.242 | - |
| predicted_3B | 0.032 | - |
| predicted_AB | 2.855 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.226 | - |
| predicted_H | 0.250 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.291 | - |
| predicted_R | 0.323 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.432 | - |
| predicted_SO | 0.597 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.240 | -0.002 |
| predicted_3B | 0.049 | 0.017 |
| predicted_AB | 2.924 | 0.069 |
| predicted_AVG | 0.256 | 0.003 |
| predicted_BB | 0.226 | 0.000 |
| predicted_H | 0.472 | 0.222 |
| predicted_HBP | 0.013 | - |
| predicted_HR | 0.057 | 0.027 |
| predicted_OBP | 0.301 | 0.010 |
| predicted_R | 0.337 | 0.014 |
| predicted_RBI | 0.293 | 0.123 |
| predicted_SLG | 0.453 | 0.021 |
| predicted_SO | 0.627 | 0.030 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.240 | 0.000 |
| predicted_3B | 0.049 | 0.000 |
| predicted_AB | 2.924 | 0.000 |
| predicted_AVG | 0.155 | -0.102 |
| predicted_BB | 0.224 | -0.003 |
| predicted_H | 0.452 | -0.020 |
| predicted_HBP | 0.013 | 0.000 |
| predicted_HR | 0.054 | -0.002 |
| predicted_OBP | 0.215 | -0.086 |
| predicted_R | 0.312 | -0.024 |
| predicted_RBI | 0.272 | -0.021 |
| predicted_SLG | 0.326 | -0.127 |
| predicted_SO | 0.633 | 0.007 |
AB rounded to 3 (raw=2.92), rates preserved: AVG=0.155 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.240 |
| predicted_3B | 0.000 | -0.049 |
| predicted_AB | 3.000 | 0.076 |
| predicted_AVG | 0.333 | 0.178 |
| predicted_BB | 0.000 | -0.224 |
| predicted_H | 1.000 | 0.548 |
| predicted_HR | 0.000 | -0.054 |
| predicted_OBP | 0.333 | 0.118 |
| predicted_R | 0.000 | -0.312 |
| predicted_RBI | 0.000 | -0.272 |
| predicted_SLG | 0.333 | 0.007 |
| predicted_SO | 1.000 | 0.367 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 2.000 | 0.000 | 1.000 | 1.000 | 3.000 | 2.000 | 1.000 | 4.000 | 0.1429 | 0.2000 | 0.5000 | 0.1429 | 0.0714 | 0.2143 | 0.0714 | 0.2857 |
| last_10 | 0.20 | 10 | - | 31.000 | 9.000 | 5.000 | 1.000 | 1.000 | 7.000 | 3.000 | 2.000 | 6.000 | 0.2903 | 0.3333 | 0.6129 | 0.2903 | 0.0323 | 0.2258 | 0.0645 | 0.1935 |
| season | 0.60 | 62 | - | 177.000 | 52.000 | 15.000 | 2.000 | 3.000 | 21.000 | 20.000 | 14.000 | 37.000 | 0.2938 | 0.3490 | 0.4520 | 0.2938 | 0.0169 | 0.1186 | 0.0791 | 0.2090 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2370 |
| predicted_3B | 0.0740 |
| predicted_AB | 3.0240 |
| predicted_AVG | 0.2612 |
| predicted_BB | 0.2270 |
| predicted_H | 0.7900 |
| predicted_HBP | 0.0130 |
| predicted_HR | 0.0950 |
| predicted_OBP | 0.3157 |
| predicted_R | 0.3560 |
| predicted_RBI | 0.4700 |
| predicted_SLG | 0.4824 |
| predicted_SO | 0.6690 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2420 | 0.2370 | 0.2399 | model_form_blend |
| predicted_3B | 0.0320 | 0.0740 | 0.0492 | model_form_blend |
| predicted_AB | 2.8550 | 3.0240 | 2.9244 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2612 | 0.2564 | model_form_blend |
| predicted_BB | 0.2260 | 0.2270 | 0.2264 | model_form_blend |
| predicted_H | 0.2500 | 0.7900 | 0.4717 | model_form_blend |
| predicted_HBP | - | 0.0130 | 0.0130 | form_only |
| predicted_HR | 0.0300 | 0.0950 | 0.0567 | model_form_blend |
| predicted_OBP | 0.2910 | 0.3157 | 0.3011 | model_form_blend |
| predicted_R | 0.3230 | 0.3560 | 0.3365 | model_form_blend |
| predicted_RBI | 0.1700 | 0.4700 | 0.2931 | model_form_blend |
| predicted_SLG | 0.4320 | 0.4824 | 0.4527 | model_form_blend |
| predicted_SO | 0.5970 | 0.6690 | 0.6266 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 167 |
| Season rows before report date | 167 |
| Report year | 2026 |
| Profile rows used | 62 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.294 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260614_LAD@CHW |
| game_type | full |
| mlbID | 671976 |
| playerID | 671976 |
| playerName | Tristan Peters |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-14 |
| sl_k_percent | 18.4 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.354 |
| sl_xwoba | 0.305 |
| sl_xba | 0.252 |
| sl_xslg | 0.369 |
| sl_sweet_spot_percent | 32.7 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 27.4 |
| sl_exit_velocity_avg | 86.4 |
| sl_launch_angle_avg | 13.5 |
| sl_whiff_percent | 22.7 |
| sl_swing_percent | 56.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.045 | 0.000 | 0.000 | Hitting_2B | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.705 | 3.000 | 3.000 | Hitting_AB | 2.872 | 2.000 | 0.128 | 1.000 |
| predicted_AVG | 0.281 | 0.000 | 0.333 | Hitting_AVG | 0.181 | 0.000 | -0.181 | 0.000 |
| predicted_BB | 0.159 | 1.000 | 0.000 | Hitting_BB | 0.224 | 0.000 | 0.776 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_H | 0.640 | 0.000 | 1.000 | Hitting_H | 0.520 | 0.000 | -0.520 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.314 | 0.250 | 0.333 | Hitting_OBP | 0.245 | 0.000 | 0.005 | 0.250 |
| predicted_R | 0.295 | 0.000 | 0.000 | Hitting_R | 0.312 | 0.000 | -0.312 | 0.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_SLG | 0.340 | 0.000 | 0.333 | Hitting_SLG | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_SO | 0.523 | 2.000 | 1.000 | Hitting_SO | 0.568 | 2.000 | 1.432 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.5230 -> 2.0000 (boost 1.4770, worse) |
| Biggest Deboost | predicted_H: 0.6400 -> 0.0000 (deboost -0.6400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AB: 2.7050 -> 2.7647 (boost 0.0597, better) | predicted_SLG: 0.3400 -> 0.3325 (deboost -0.0075, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3146 -> 0.2764 (deboost -0.0382, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.5339 -> 1.0000 (boost 0.4661, worse) | predicted_RBI: 0.3196 -> 0.0000 (deboost -0.3196, worse) | AB rounded to 3 (raw=2.76), rates preserved: AVG=0.237 HR/AB=0.013 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2870 -> 0.0000 (deboost -0.2870, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2371 -> 0.3330 (boost 0.0959, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2371 (deboost -0.0959, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682668",
"player_name": "Luisangel Acuña",
"position": "SS",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.045,
"predicted_3B": 0.0,
"predicted_AB": 2.705,
"predicted_AVG": 0.281,
"predicted_BB": 0.159,
"predicted_H": 0.64,
"predicted_HR": 0.05,
"predicted_OBP": 0.314,
"predicted_R": 0.295,
"predicted_RBI": 0.34,
"predicted_SLG": 0.34,
"predicted_SO": 0.523
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0691,
"predicted_3B": 0.0008,
"predicted_AB": 2.7647,
"predicted_AVG": 0.2739,
"predicted_BB": 0.1519,
"predicted_H": 0.6839,
"predicted_HBP": 0.085,
"predicted_HR": 0.0374,
"predicted_OBP": 0.3146,
"predicted_R": 0.3092,
"predicted_RBI": 0.3443,
"predicted_SLG": 0.3325,
"predicted_SO": 0.5281
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.045,
"after": 0.0691,
"delta": 0.0241,
"percent_delta": 0.5356,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.705,
"after": 2.7647,
"delta": 0.0597,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.2739,
"delta": -0.0071,
"percent_delta": -0.0253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.159,
"after": 0.1519,
"delta": -0.0071,
"percent_delta": -0.0447,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.6839,
"delta": 0.0439,
"percent_delta": 0.0686,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0374,
"delta": -0.0126,
"percent_delta": -0.252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3146,
"delta": 0.0006,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.295,
"after": 0.3092,
"delta": 0.0142,
"percent_delta": 0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.3443,
"delta": 0.0043,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3325,
"delta": -0.0075,
"percent_delta": -0.0221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.523,
"after": 0.5281,
"delta": 0.0051,
"percent_delta": 0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.705,
"after": 2.7647,
"delta": 0.0597,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3325,
"delta": -0.0075,
"percent_delta": -0.0221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 44
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0691,
"predicted_3B": 0.0008,
"predicted_AB": 2.7647,
"predicted_AVG": 0.2371,
"predicted_BB": 0.1502,
"predicted_H": 0.6554,
"predicted_HBP": 0.085,
"predicted_HR": 0.0359,
"predicted_OBP": 0.2764,
"predicted_R": 0.287,
"predicted_RBI": 0.3196,
"predicted_SLG": 0.3015,
"predicted_SO": 0.5339
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0691,
"after": 0.0691,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7647,
"after": 2.7647,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2739,
"after": 0.2371,
"delta": -0.0368,
"percent_delta": -0.1344,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1519,
"after": 0.1502,
"delta": -0.0017,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6839,
"after": 0.6554,
"delta": -0.0285,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.085,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0374,
"after": 0.0359,
"delta": -0.0015,
"percent_delta": -0.0401,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3146,
"after": 0.2764,
"delta": -0.0382,
"percent_delta": -0.1214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3092,
"after": 0.287,
"delta": -0.0222,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3443,
"after": 0.3196,
"delta": -0.0247,
"percent_delta": -0.0717,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3325,
"after": 0.3015,
"delta": -0.031,
"percent_delta": -0.0932,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5281,
"after": 0.5339,
"delta": 0.0058,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3146,
"after": 0.2764,
"delta": -0.0382,
"percent_delta": -0.1214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.76), rates preserved: AVG=0.237 HR/AB=0.013",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0691,
"after": 0.0,
"delta": -0.0691,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7647,
"after": 3.0,
"delta": 0.2353,
"percent_delta": 0.0851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1502,
"after": 0.0,
"delta": -0.1502,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6554,
"after": 1.0,
"delta": 0.3446,
"percent_delta": 0.5258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0359,
"after": 0.0,
"delta": -0.0359,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3196,
"after": 0.0,
"delta": -0.3196,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5339,
"after": 1.0,
"delta": 0.4661,
"percent_delta": 0.873,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5339,
"after": 1.0,
"delta": 0.4661,
"percent_delta": 0.873,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3196,
"after": 0.0,
"delta": -0.3196,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.287,
"after": 0.0,
"delta": -0.287,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.287,
"after": 0.0,
"delta": -0.287,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2371,
"after": 0.333,
"delta": 0.0959,
"percent_delta": 0.4045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2764,
"after": 0.333,
"delta": 0.0566,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3015,
"after": 0.333,
"delta": 0.0315,
"percent_delta": 0.1045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2371,
"after": 0.333,
"delta": 0.0959,
"percent_delta": 0.4045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2371,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2764,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3015,
"predicted_SO": 2.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2371,
"delta": -0.0959,
"percent_delta": -0.2881,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2764,
"delta": -0.0566,
"percent_delta": -0.17,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3015,
"delta": -0.0315,
"percent_delta": -0.0945,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2371,
"delta": -0.0959,
"percent_delta": -0.2881,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.045,
"after": 0.0,
"delta": -0.045,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.705,
"after": 3.0,
"delta": 0.295,
"percent_delta": 0.1091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.2371,
"delta": -0.0439,
"percent_delta": -0.1562,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.159,
"after": 1.0,
"delta": 0.841,
"percent_delta": 5.2893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.2764,
"delta": -0.0376,
"percent_delta": -0.1197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.295,
"after": 0.0,
"delta": -0.295,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3015,
"delta": -0.0385,
"percent_delta": -0.1132,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.523,
"after": 2.0,
"delta": 1.477,
"percent_delta": 2.8241,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.523,
"after": 2.0,
"delta": 1.477,
"percent_delta": 2.8241,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.045 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.705 | - |
| predicted_AVG | 0.281 | - |
| predicted_BB | 0.159 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.295 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.340 | - |
| predicted_SO | 0.523 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | 0.024 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.765 | 0.060 |
| predicted_AVG | 0.274 | -0.007 |
| predicted_BB | 0.152 | -0.007 |
| predicted_H | 0.684 | 0.044 |
| predicted_HBP | 0.085 | - |
| predicted_HR | 0.037 | -0.013 |
| predicted_OBP | 0.315 | 0.001 |
| predicted_R | 0.309 | 0.014 |
| predicted_RBI | 0.344 | 0.004 |
| predicted_SLG | 0.333 | -0.008 |
| predicted_SO | 0.528 | 0.005 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.765 | 0.000 |
| predicted_AVG | 0.237 | -0.037 |
| predicted_BB | 0.150 | -0.002 |
| predicted_H | 0.655 | -0.028 |
| predicted_HBP | 0.085 | 0.000 |
| predicted_HR | 0.036 | -0.002 |
| predicted_OBP | 0.276 | -0.038 |
| predicted_R | 0.287 | -0.022 |
| predicted_RBI | 0.320 | -0.025 |
| predicted_SLG | 0.301 | -0.031 |
| predicted_SO | 0.534 | 0.006 |
AB rounded to 3 (raw=2.76), rates preserved: AVG=0.237 HR/AB=0.013
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.069 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.235 |
| predicted_AVG | 0.333 | 0.096 |
| predicted_BB | 0.000 | -0.150 |
| predicted_H | 1.000 | 0.345 |
| predicted_HR | 0.000 | -0.036 |
| predicted_OBP | 0.333 | 0.057 |
| predicted_R | 0.000 | -0.287 |
| predicted_RBI | 0.000 | -0.320 |
| predicted_SLG | 0.333 | 0.032 |
| predicted_SO | 1.000 | 0.466 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 5.000 | 1.000 | 0.000 | 0.000 | 3.000 | 1.000 | 0.000 | 2.000 | 0.4167 | 0.4615 | 0.5000 | 0.4167 | 0.0000 | 0.2500 | 0.0000 | 0.1667 |
| last_10 | 0.20 | 10 | - | 26.000 | 8.000 | 1.000 | 0.000 | 0.000 | 4.000 | 4.000 | 1.000 | 4.000 | 0.3077 | 0.3571 | 0.3462 | 0.3077 | 0.0000 | 0.1538 | 0.0385 | 0.1538 |
| season | 0.60 | 44 | - | 119.000 | 24.000 | 2.000 | 0.000 | 0.000 | 8.000 | 13.000 | 7.000 | 23.000 | 0.2017 | 0.2538 | 0.2185 | 0.2017 | 0.0000 | 0.0672 | 0.0588 | 0.1933 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1060 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.8560 |
| predicted_AVG | 0.2630 |
| predicted_BB | 0.1410 |
| predicted_H | 0.7510 |
| predicted_HBP | 0.0850 |
| predicted_HR | 0.0180 |
| predicted_OBP | 0.3155 |
| predicted_R | 0.3310 |
| predicted_RBI | 0.3510 |
| predicted_SLG | 0.3209 |
| predicted_SO | 0.5360 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0450 | 0.1060 | 0.0691 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.7050 | 2.8560 | 2.7647 | model_form_blend |
| predicted_AVG | 0.2810 | 0.2630 | 0.2739 | model_form_blend |
| predicted_BB | 0.1590 | 0.1410 | 0.1519 | model_form_blend |
| predicted_H | 0.6400 | 0.7510 | 0.6839 | model_form_blend |
| predicted_HBP | - | 0.0850 | 0.0850 | form_only |
| predicted_HR | 0.0500 | 0.0180 | 0.0374 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3155 | 0.3146 | model_form_blend |
| predicted_R | 0.2950 | 0.3310 | 0.3092 | model_form_blend |
| predicted_RBI | 0.3400 | 0.3510 | 0.3443 | model_form_blend |
| predicted_SLG | 0.3400 | 0.3209 | 0.3325 | model_form_blend |
| predicted_SO | 0.5230 | 0.5360 | 0.5281 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 125 |
| Season rows before report date | 125 |
| Report year | 2026 |
| Profile rows used | 44 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.202 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 682668 |
| playerID | 682668 |
| playerName | Luisangel Acuña |
| pos | CF |
| started | True |
| startingPosition | SS |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.7 |
| sl_bb_percent | 5.4 |
| sl_woba | 0.216 |
| sl_xwoba | 0.267 |
| sl_xba | 0.239 |
| sl_xslg | 0.305 |
| sl_sweet_spot_percent | 19.2 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 38.4 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 1.8 |
| sl_whiff_percent | 24.1 |
| sl_swing_percent | 49.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 0.417 | 0.000 | 2.583 | 3.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 0.875 | 0.000 | 2.125 | 3.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 0.871 | 1.000 | 4.129 | 4.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 0.958 | 1.000 | 3.042 | 3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 7.0000 -> 5.0000 (deboost -2.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 7.0000 -> 5.0000 (deboost -2.0000, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663542",
"player_name": "Bryan Hudson",
"position": "Starter",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 0.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 7.0,
"predicted_SO": 4.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 0.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 0.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_R": 0.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 7.000 | - |
| predicted_SO | 4.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | 0.000 |
| predicted_ER | 0.000 | 0.000 |
| predicted_H | 3.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.000 | -2.000 |
| predicted_SO | 4.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 2.000 | 5.000 | 1.000 | 2.000 | 0.000 | 3.6000 | 1.2000 | 0.4000 | 1.0000 | 0.2000 | 0.4000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 2.000 | 10.000 | 2.000 | 7.000 | 0.000 | 1.8000 | 1.2000 | 0.2000 | 1.0000 | 0.2000 | 0.7000 | 0.0000 |
| season | 0.20 | 24 | 23.000 | 4.000 | 21.000 | 10.000 | 23.000 | 0.000 | 1.5652 | 1.3478 | 0.1739 | 0.9130 | 0.4348 | 1.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 1.2720 |
| predicted_ER | 1.6450 |
| predicted_ERA | 3.5796 |
| predicted_H | 4.0450 |
| predicted_HR | 0.3150 |
| predicted_IP | 4.0000 |
| predicted_SO | 3.2600 |
| predicted_WHIP | 1.2858 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 1.2720 | 2.2583 | model_form_blend |
| predicted_ER | 0.0000 | 1.6450 | 0.7060 | model_form_blend |
| predicted_ERA | - | 3.5796 | 3.5796 | form_only |
| predicted_H | 3.0000 | 4.0450 | 3.4485 | model_form_blend |
| predicted_HR | 0.0000 | 0.3150 | 0.1352 | model_form_blend |
| predicted_IP | 7.0000 | 4.0000 | 5.2000 | model_form_blend |
| predicted_SO | 4.0000 | 3.2600 | 3.6824 | model_form_blend |
| predicted_WHIP | - | 1.2858 | 1.2858 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 24 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.0 |
| H | 3 |
| R | 0 |
| ER | 0 |
| BB | 3 |
| SO | 4 |
| HR | 0 |
| BF | 21 |
| Pitches | 84 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.57 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260519_CHW@SEA |
| game_type | full |
| mlbID | 663542 |
| playerID | 663542 |
| playerName | Bryan Hudson |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-05-19 |
| game_pk | 823136.0 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.285 |
| sl_xwoba | 0.298 |
| sl_sweet_spot_percent | 30.9 |
| sl_barrel_batted_rate | 3.2 |
| sl_hard_hit_percent | 35.1 |
| sl_whiff_percent | 22.9 |
| sl_swing_percent | 46.2 |
| sv_pitch_count | 11.0 |
| sv_outs_recorded_est | 3.0 |
| sv_release_speed | 89.7090909090909 |
| sv_release_spin_rate | 2132.5454545454545 |
| sv_effective_speed | 91.4090909090909 |
| sv_launch_speed | 87.175 |
| sv_launch_angle | 6.75 |
| sv_woba_value | 0.0 |
| sv_woba_denom | 3.0 |
| sv_delta_run_exp | -0.774 |
| sv_delta_home_win_exp | -0.032 |
| sl_avg_best_speed | 77.88227 |
| sl_avg_hyper_speed | 93.266505393 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.417 | 0.000 | -0.417 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.417 | 0.000 | -0.417 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.917 | 0.000 | -0.917 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.958 | 1.000 | 0.042 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.083 | 2.000 | 0.917 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "685126",
"player_name": "Brandon Eisert",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 1.000 | 2.000 | 0.000 | 6.000 | 1.000 | 1.5882 | 0.3529 | 0.1765 | 0.3529 | 0.0000 | 1.0588 | 0.1765 |
| last_10 | 0.35 | 10 | 10.100 | 1.000 | 5.000 | 4.000 | 11.000 | 1.000 | 0.8710 | 0.8710 | 0.0968 | 0.4839 | 0.3871 | 1.0645 | 0.0968 |
| season | 0.20 | 12 | 12.200 | 5.000 | 11.000 | 5.000 | 13.000 | 1.000 | 3.5526 | 1.2632 | 0.3947 | 0.8684 | 0.3947 | 1.0263 | 0.0790 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3130 |
| predicted_ER | 0.3980 |
| predicted_ERA | 3.5784 |
| predicted_H | 0.8160 |
| predicted_HR | 0.1400 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9770 |
| predicted_WHIP | 1.1294 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3130 | 0.1155 | model_form_blend |
| predicted_ER | 0.0000 | 0.3980 | 0.1468 | model_form_blend |
| predicted_ERA | - | 3.5784 | 3.5784 | form_only |
| predicted_H | 0.0000 | 0.8160 | 0.3010 | model_form_blend |
| predicted_HR | 0.0000 | 0.1400 | 0.0516 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.9770 | 1.6226 | model_form_blend |
| predicted_WHIP | - | 1.1294 | 1.1294 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 12 |
| Season rows before report date | 12 |
| Report year | 2026 |
| Profile rows used | 12 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 3 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.55 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260605_CHW@PHI |
| game_type | full |
| mlbID | 685126 |
| playerID | 685126 |
| playerName | Brandon Eisert |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-05 |
| sl_k_percent | 26.0 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.348 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 35.4 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 41.7 |
| sl_whiff_percent | 30.2 |
| sl_swing_percent | 46.4 |
| sl_avg_best_speed | 79.301134348 |
| sl_avg_hyper_speed | 94.214774783 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.000 | 2.000 | 0.000 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.017 | 1.100 | -0.017 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.333 | 1.000 | -1.333 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "691799",
"player_name": "Grant Taylor",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 4.000 | 1.000 | 7.000 | 0.000 | 0.0000 | 0.9375 | 0.0000 | 0.7500 | 0.1875 | 1.3125 | 0.0000 |
| last_10 | 0.35 | 6 | 6.100 | 1.000 | 6.000 | 2.000 | 8.000 | 0.000 | 1.4211 | 1.2632 | 0.1579 | 0.9474 | 0.3158 | 1.2632 | 0.0000 |
| season | 0.20 | 6 | 6.100 | 1.000 | 6.000 | 2.000 | 8.000 | 0.000 | 1.4211 | 1.2632 | 0.1579 | 0.9474 | 0.3158 | 1.2632 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3310 |
| predicted_ER | 0.4050 |
| predicted_ERA | 3.6405 |
| predicted_H | 0.9340 |
| predicted_HR | 0.1170 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0120 |
| predicted_WHIP | 1.2657 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3310 | 0.1034 | model_form_blend |
| predicted_ER | 0.0000 | 0.4050 | 0.1265 | model_form_blend |
| predicted_ERA | - | 3.6405 | 3.6405 | form_only |
| predicted_H | 1.0000 | 0.9340 | 0.9794 | model_form_blend |
| predicted_HR | 0.0000 | 0.1170 | 0.0366 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0120 | 0.3162 | model_form_blend |
| predicted_WHIP | - | 1.2657 | 1.2657 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 6 |
| Season rows before report date | 6 |
| Report year | 2026 |
| Profile rows used | 6 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.42 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 22 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 17 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260409_CHW@KC |
| game_type | full |
| mlbID | 691799 |
| playerID | 691799 |
| playerName | Grant Taylor |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-04-09 |
| game_pk | 824130.0 |
| sl_k_percent | 35.1 |
| sl_bb_percent | 6.1 |
| sl_woba | 0.254 |
| sl_xwoba | 0.231 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 7.0 |
| sl_hard_hit_percent | 40.2 |
| sl_whiff_percent | 29.3 |
| sl_swing_percent | 50.3 |
| sv_pitch_count | 22.0 |
| sv_outs_recorded_est | 4.0 |
| sv_release_speed | 94.2909090909091 |
| sv_release_spin_rate | 2537.5454545454545 |
| sv_effective_speed | 95.62272727272726 |
| sv_launch_speed | 84.075 |
| sv_launch_angle | 12.625 |
| sv_woba_value | 1.8 |
| sv_woba_denom | 6.0 |
| sv_delta_run_exp | -0.404 |
| sv_delta_home_win_exp | -0.161 |
| sl_avg_best_speed | 79.384803488 |
| sl_avg_hyper_speed | 93.863440581 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 2.000 | 2.000 | 0.000 | 0.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 3.000 | 3.000 | 1.000 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 2.100 | 2.100 | -1.100 | -1.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.000 | 1.000 | 0.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656794",
"player_name": "Sean Newcomb",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 2.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 1 | 2.100 | 2.000 | 3.000 | 1.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.2857 | 0.4286 | 0.4286 | 0.0000 |
| last_10 | 0.35 | 1 | 2.100 | 2.000 | 3.000 | 1.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.2857 | 0.4286 | 0.4286 | 0.0000 |
| season | 0.20 | 1 | 2.100 | 2.000 | 3.000 | 1.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.2857 | 0.4286 | 0.4286 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1850 |
| predicted_ER | 0.2670 |
| predicted_ERA | 4.7801 |
| predicted_H | 0.5030 |
| predicted_HR | 0.0670 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.4500 |
| predicted_WHIP | 1.3692 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.1850 | 0.7854 | model_form_blend |
| predicted_ER | 2.0000 | 0.2670 | 1.5437 | model_form_blend |
| predicted_ERA | - | 4.7801 | 4.7801 | form_only |
| predicted_H | 4.0000 | 0.5030 | 3.0791 | model_form_blend |
| predicted_HR | 0.0000 | 0.0670 | 0.0176 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.4500 | 0.8552 | model_form_blend |
| predicted_WHIP | - | 1.3692 | 1.3692 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| Report year | 2026 |
| Profile rows used | 1 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 4 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 8 |
| Pitches | 24 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 10 |
| Pitching_ER | 2 |
| Pitching_ERA | 7.71 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 5 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.1 |
| Pitching_Pitches | 33 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 26 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260326_CHW@MIL |
| game_type | full |
| mlbID | 656794 |
| playerID | 656794 |
| playerName | Sean Newcomb |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-03-26 |
| game_pk | 823812.0 |
| sl_k_percent | 23.5 |
| sl_bb_percent | 6.5 |
| sl_woba | 0.274 |
| sl_xwoba | 0.3 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 35.1 |
| sl_whiff_percent | 24.9 |
| sl_swing_percent | 46.6 |
| sv_pitch_count | 37.0 |
| sv_outs_recorded_est | 6.0 |
| sv_release_speed | 90.8030303030303 |
| sv_release_spin_rate | 2396.818181818182 |
| sv_effective_speed | 89.39393939393939 |
| sv_launch_speed | 79.68571428571428 |
| sv_launch_angle | 4.428571428571429 |
| sv_woba_value | 3.3 |
| sv_woba_denom | 8.0 |
| sv_delta_run_exp | 0.0589999999999999 |
| sv_delta_home_win_exp | 0.0319999999999999 |
| sl_avg_best_speed | 74.39050875 |
| sl_avg_hyper_speed | 93.336573482 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.000 | 2.000 | 0.000 | -1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 1.500 | 2.000 | 0.500 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.550 | 0.100 | 0.450 | 0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.000 | 0.000 | 1.000 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "622554",
"player_name": "Seranthony Domínguez",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 2 | 1.100 | 2.000 | 3.000 | 1.000 | 0.000 | 1.000 | 13.5000 | 3.0000 | 1.5000 | 2.2500 | 0.7500 | 0.0000 | 0.7500 |
| last_10 | 0.35 | 2 | 1.100 | 2.000 | 3.000 | 1.000 | 0.000 | 1.000 | 13.5000 | 3.0000 | 1.5000 | 2.2500 | 0.7500 | 0.0000 | 0.7500 |
| season | 0.20 | 2 | 1.100 | 2.000 | 3.000 | 1.000 | 0.000 | 1.000 | 13.5000 | 3.0000 | 1.5000 | 2.2500 | 0.7500 | 0.0000 | 0.7500 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1340 |
| predicted_ER | 0.1930 |
| predicted_ERA | 4.9605 |
| predicted_H | 0.3630 |
| predicted_HR | 0.0620 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.3120 |
| predicted_WHIP | 1.4208 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1340 | 0.0333 | model_form_blend |
| predicted_ER | 1.0000 | 0.1930 | 0.7993 | model_form_blend |
| predicted_ERA | - | 4.9605 | 4.9605 | form_only |
| predicted_H | 2.0000 | 0.3630 | 1.5928 | model_form_blend |
| predicted_HR | 0.0000 | 0.0620 | 0.0154 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.3120 | 0.8289 | model_form_blend |
| predicted_WHIP | - | 1.4208 | 1.4208 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 2 |
| Season rows before report date | 2 |
| Report year | 2026 |
| Profile rows used | 2 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 5 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 2 |
| Pitching_ERA | 13.50 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 3 |
| Pitching_Inherited Runners Scored | 3 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 19 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L, BS |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260329_CHW@MIL |
| game_type | full |
| mlbID | 622554 |
| playerID | 622554 |
| playerName | Seranthony Domínguez |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-03-29 |
| game_pk | 823810.0 |
| sl_k_percent | 27.9 |
| sl_bb_percent | 13.5 |
| sl_woba | 0.295 |
| sl_xwoba | 0.35 |
| sl_sweet_spot_percent | 38.1 |
| sl_barrel_batted_rate | 9.7 |
| sl_hard_hit_percent | 38.1 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 42.1 |
| sv_pitch_count | 19.0 |
| sv_outs_recorded_est | 1.0 |
| sv_release_speed | 92.93157894736842 |
| sv_release_spin_rate | 2148.157894736842 |
| sv_effective_speed | 92.93157894736842 |
| sv_launch_speed | 82.55 |
| sv_launch_angle | 24.166666666666668 |
| sv_woba_value | 3.6 |
| sv_woba_denom | 4.0 |
| sv_delta_run_exp | 2.256 |
| sv_delta_home_win_exp | 0.681 |
| sl_avg_best_speed | 80.627565161 |
| sl_avg_hyper_speed | 94.457767419 |
| Field | Value |
|---|---|
| Pitcher | Ryan Weathers |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.0733 |
| ESPN Rank | 141 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0217 |
| Avg Velo | 89.3421 |
| Avg Spin | 2304.6615 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 4 |
| Pre H | 6 |
| Pre BB | 2 |
| Pre SO | 4 |
| Season ERA | 4.3587 |
| Season WHIP | 1.1704 |
| Role Avg IP | 5.7180 |
| Recent Avg IP | 5.8670 |
| Last Start IP | 4.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"opponent": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"edges": {
"quality_edge": 0.4015,
"offense_edge": 0.1096,
"opponent_offense_edge": 0.0291,
"defense_strength": 0.2441,
"opponent_defense_weakness": 0.0685,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0222,
"run_prevention": 0.9602,
"strikeout": 1.0097
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "677960",
"profile": {
"available": true,
"pitcher_id": "677960",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 228.0,
"k_percent": 26.6,
"bb_percent": 6.9,
"woba": 0.312,
"xwoba": 0.323,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 12.0,
"hard_hit_percent": 41.6,
"avg_best_speed": 77.3552,
"avg_hyper_speed": 94.9106,
"whiff_percent": 26.5,
"swing_percent": 44.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.2786,
"command_and_miss": 0.4186,
"regression_edge": -0.3143,
"xwoba_edge": -0.2286,
"barrel_edge": -1.0444,
"hard_hit_edge": -0.4714,
"whiff_edge": 0.1143,
"bb_edge": 0.575,
"pitch_design_score": -0.0217
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "677960",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 95,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 89.34212627065457,
"release_spin_rate": 2304.6615057998483,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 89.34212627065457,
"release_spin_rate": 2304.6615057998483,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3421,
"release_spin_rate": 2304.6615,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0217,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1547,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0733,
"sample_weight": 0.912,
"run_prevention_factor": 1.0062,
"strikeout_factor": 1.0255,
"walk_factor": 0.958,
"homer_factor": 1.0997,
"woba_minus_xwoba": -0.011,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677960",
"espn_id": 41178,
"player_name": "Ryan Weathers",
"team": "NYY",
"role": "pitcher",
"espn_rank": 141,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 141,
"gp_value": 13.0,
"gp_rank": 329,
"gs_value": 13.0,
"gs_rank": 69,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 4.3587,
"era_rank": 55.0,
"w_value": 2.0,
"w_rank": 180,
"l_value": 5.0,
"l_rank": 36,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 74.1,
"ip_rank": 59,
"h_value": 66.0,
"h_rank": 74,
"er_value": 36.0,
"er_rank": 46,
"hr_value": 15.0,
"hr_rank": 10,
"bb_value": 21.0,
"bb_rank": 109,
"k_value": 81.0,
"k_rank": 27,
"k_per_9_value": 9.807175,
"k_per_9_rank": 12,
"whip_value": 1.1704,
"whip_rank": 32.0,
"war_value": 0.73,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 4.0,
"factor": 1.0057,
"adjusted": 4
},
"predicted_H": {
"original": 5.0,
"factor": 1.0057,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9617,
"adjusted": 2
},
"predicted_HR": {
"original": 2.0,
"factor": 1.0909,
"adjusted": 2
},
"predicted_SO": {
"original": 6.0,
"factor": 1.0233,
"adjusted": 6
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 58.1,
"ER": 31,
"H": 49,
"BB": 16,
"SO": 63,
"HR": 15,
"ERA": 4.782857142857143,
"WHIP": 1.1142857142857143,
"K9": 9.719999999999999,
"HR9": 2.314285714285714,
"games_pitched": 10,
"quality_starts": 3,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "677960",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 95,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 89.34212627065457,
"release_spin_rate": 2304.6615057998483,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 95,
"pitch_usage": 0.0,
"release_speed": 89.34212627065457,
"release_spin_rate": 2304.6615057998483,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3421,
"release_spin_rate": 2304.6615,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0217,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1547,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 13.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7222,
"prior_weight": 0.2778
},
"role": "pitcher",
"player_id": "677960",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 29.1,
"ER": 21.0,
"R": 21.0,
"H": 29.0,
"BB": 8.0,
"SO": 27.0,
"HR": 9.0,
"BF": 124.0,
"Pitches": 467.0
},
"per_game": {
"IP": 6.0,
"ER": 4.2,
"R": 4.2,
"H": 5.8,
"BB": 1.6,
"SO": 5.4,
"HR": 1.8,
"BF": 24.8,
"Pitches": 93.4
},
"rates": {
"ERA": 6.4432,
"WHIP": 1.2614,
"ER_per_IP": 0.71591,
"H_per_IP": 0.98864,
"BB_per_IP": 0.27273,
"SO_per_IP": 0.92045,
"HR_per_IP": 0.30682
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 58.1,
"ER": 31.0,
"R": 33.0,
"H": 49.0,
"BB": 16.0,
"SO": 63.0,
"HR": 15.0,
"BF": 237.0,
"Pitches": 933.0
},
"per_game": {
"IP": 6.0,
"ER": 3.1,
"R": 3.3,
"H": 4.9,
"BB": 1.6,
"SO": 6.3,
"HR": 1.5,
"BF": 23.7,
"Pitches": 93.3
},
"rates": {
"ERA": 4.7829,
"WHIP": 1.1143,
"ER_per_IP": 0.53143,
"H_per_IP": 0.84,
"BB_per_IP": 0.27429,
"SO_per_IP": 1.08,
"HR_per_IP": 0.25714
}
},
"season": {
"games": 13,
"totals": {
"IP": 74.1,
"ER": 36.0,
"R": 38.0,
"H": 66.0,
"BB": 21.0,
"SO": 81.0,
"HR": 15.0,
"BF": 305.0,
"Pitches": 1199.0
},
"per_game": {
"IP": 5.2,
"ER": 2.7692,
"R": 2.9231,
"H": 5.0769,
"BB": 1.6154,
"SO": 6.2308,
"HR": 1.1538,
"BF": 23.4615,
"Pitches": 92.2308
},
"rates": {
"ERA": 4.3587,
"WHIP": 1.1704,
"ER_per_IP": 0.4843,
"H_per_IP": 0.88789,
"BB_per_IP": 0.28251,
"SO_per_IP": 1.08969,
"HR_per_IP": 0.20179
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 3.376,
"predicted_H": 5.463,
"predicted_BB": 1.756,
"predicted_SO": 5.801,
"predicted_HR": 1.373,
"predicted_ERA": 5.1849,
"predicted_WHIP": 1.2321
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4674,
"form_weight": 0.5326,
"form_reliability": 0.7222,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 13.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7222,
"prior_weight": 0.2778
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 4.0,
"form": 3.376,
"final": 3.6676,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.463,
"final": 5.714,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.756,
"final": 1.87,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 5.801,
"final": 4.9593,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 1.373,
"final": 1.1987,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.1849,
"final": 5.1849,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2321,
"final": 1.2321,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Camilo Doval |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2494 |
| ESPN Rank | 444 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 5.0625 |
| Season WHIP | 1.1625 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"opponent": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"edges": {
"quality_edge": 0.4015,
"offense_edge": 0.1096,
"opponent_offense_edge": 0.0291,
"defense_strength": 0.2441,
"opponent_defense_weakness": 0.0685,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0222,
"run_prevention": 0.9602,
"strikeout": 1.0097
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "666808",
"profile": {
"available": true,
"pitcher_id": "666808",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 86.0,
"k_percent": 22.5,
"bb_percent": 4.5,
"woba": 0.296,
"xwoba": 0.263,
"sweet_spot_percent": 21.0,
"barrel_batted_rate": 3.7,
"hard_hit_percent": 49.4,
"avg_best_speed": 80.7159,
"avg_hyper_speed": 94.9907,
"whiff_percent": 26.9,
"swing_percent": 50.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6845,
"command_and_miss": 0.295,
"regression_edge": 0.9429,
"xwoba_edge": 1.4857,
"barrel_edge": 0.8,
"hard_hit_edge": -1.5857,
"whiff_edge": 0.1714,
"bb_edge": 1.175,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "666808",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2494,
"sample_weight": 0.45,
"run_prevention_factor": 0.9788,
"strikeout_factor": 1.0031,
"walk_factor": 0.9577,
"homer_factor": 0.9797,
"woba_minus_xwoba": 0.033,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "666808",
"espn_id": 41337,
"player_name": "Camilo Doval",
"team": "NYY",
"role": "pitcher",
"espn_rank": 444,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 444,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.0625,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 3.0,
"hld_rank": 142,
"ip_value": 26.2,
"ip_rank": 306,
"h_value": 26.0,
"h_rank": 257,
"er_value": 15.0,
"er_rank": 209,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 25.0,
"k_rank": 302,
"k_per_9_value": 8.4375,
"k_per_9_rank": 26,
"whip_value": 1.1625,
"whip_rank": null,
"war_value": -0.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9905,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9905,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.981,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9909,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0014,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.1,
"ER": 4,
"H": 9,
"BB": 1,
"SO": 8,
"HR": 1,
"ERA": 4.32,
"WHIP": 1.2000000000000002,
"K9": 8.64,
"HR9": 1.08,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "666808",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.296,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5144,
"prior_weight": 0.4856
},
"role": "pitcher",
"player_id": "666808",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 1.0,
"SO": 6.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 64.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.8,
"BB": 0.2,
"SO": 1.2,
"HR": 0.0,
"BF": 3.4,
"Pitches": 12.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.1538,
"ER_per_IP": 0.0,
"H_per_IP": 0.92308,
"BB_per_IP": 0.23077,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 1.0,
"SO": 8.0,
"HR": 1.0,
"BF": 33.0,
"Pitches": 123.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.9,
"BB": 0.1,
"SO": 0.8,
"HR": 0.1,
"BF": 3.3,
"Pitches": 12.3
},
"rates": {
"ERA": 4.32,
"WHIP": 1.2,
"ER_per_IP": 0.48,
"H_per_IP": 1.08,
"BB_per_IP": 0.12,
"SO_per_IP": 0.96,
"HR_per_IP": 0.12
}
},
"season": {
"games": 31,
"totals": {
"IP": 26.2,
"ER": 15.0,
"R": 15.0,
"H": 26.0,
"BB": 5.0,
"SO": 25.0,
"HR": 4.0,
"BF": 111.0,
"Pitches": 430.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4839,
"R": 0.4839,
"H": 0.8387,
"BB": 0.1613,
"SO": 0.8065,
"HR": 0.129,
"BF": 3.5806,
"Pitches": 13.871
},
"rates": {
"ERA": 5.0625,
"WHIP": 1.1625,
"ER_per_IP": 0.5625,
"H_per_IP": 0.975,
"BB_per_IP": 0.1875,
"SO_per_IP": 0.9375,
"HR_per_IP": 0.15
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.364,
"predicted_H": 0.923,
"predicted_BB": 0.254,
"predicted_SO": 0.982,
"predicted_HR": 0.101,
"predicted_ERA": 3.4878,
"predicted_WHIP": 1.2521
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5552,
"form_weight": 0.4448,
"form_reliability": 0.5144,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.296,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5144,
"prior_weight": 0.4856
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.364,
"final": 0.1619,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.923,
"final": 0.4106,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.254,
"final": 0.113,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.982,
"final": 0.992,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.101,
"final": 0.0449,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4878,
"final": 3.4878,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2521,
"final": 1.2521,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | David Bednar |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3348 |
| ESPN Rank | 254 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 3.6404 |
| Season WHIP | 1.3820 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"opponent": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"edges": {
"quality_edge": 0.4015,
"offense_edge": 0.1096,
"opponent_offense_edge": 0.0291,
"defense_strength": 0.2441,
"opponent_defense_weakness": 0.0685,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0222,
"run_prevention": 0.9602,
"strikeout": 1.0097
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "670280",
"profile": {
"available": true,
"pitcher_id": "670280",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 105.0,
"k_percent": 27.5,
"bb_percent": 9.2,
"woba": 0.304,
"xwoba": 0.266,
"sweet_spot_percent": 23.2,
"barrel_batted_rate": 3.7,
"hard_hit_percent": 39.0,
"avg_best_speed": 75.7932,
"avg_hyper_speed": 93.4839,
"whiff_percent": 29.8,
"swing_percent": 52.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8903,
"command_and_miss": 0.5264,
"regression_edge": 1.0857,
"xwoba_edge": 1.4,
"barrel_edge": 0.8,
"hard_hit_edge": -0.1,
"whiff_edge": 0.5857,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "670280",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3348,
"sample_weight": 0.45,
"run_prevention_factor": 0.9715,
"strikeout_factor": 1.0234,
"walk_factor": 1.0,
"homer_factor": 0.9541,
"woba_minus_xwoba": 0.038,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "670280",
"espn_id": 38303,
"player_name": "David Bednar",
"team": "NYY",
"role": "pitcher",
"espn_rank": 254,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 254,
"gp_value": 29.0,
"gp_rank": 80,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.6404,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 14.0,
"sv_rank": 7,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 29.2,
"ip_rank": 259,
"h_value": 29.0,
"h_rank": 219,
"er_value": 12.0,
"er_rank": 266,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 12.0,
"bb_rank": 246,
"k_value": 36.0,
"k_rank": 191,
"k_per_9_value": 10.921349,
"k_per_9_rank": 19,
"whip_value": 1.382,
"whip_rank": null,
"war_value": 0.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9872,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9872,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9793,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0105,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 4,
"H": 8,
"BB": 6,
"SO": 14,
"HR": 1,
"ERA": 3.3749999999999996,
"WHIP": 1.3124999999999998,
"K9": 11.812499999999998,
"HR9": 0.8437499999999999,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "670280",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"role": "pitcher",
"player_id": "670280",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 75.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.0
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5294,
"ER_per_IP": 0.0,
"H_per_IP": 0.35294,
"BB_per_IP": 0.17647,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 6.0,
"SO": 14.0,
"HR": 1.0,
"BF": 46.0,
"Pitches": 187.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.6,
"SO": 1.4,
"HR": 0.1,
"BF": 4.6,
"Pitches": 18.7
},
"rates": {
"ERA": 3.375,
"WHIP": 1.3125,
"ER_per_IP": 0.375,
"H_per_IP": 0.75,
"BB_per_IP": 0.5625,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 29,
"totals": {
"IP": 29.2,
"ER": 12.0,
"R": 15.0,
"H": 29.0,
"BB": 12.0,
"SO": 36.0,
"HR": 2.0,
"BF": 131.0,
"Pitches": 541.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4138,
"R": 0.5172,
"H": 1.0,
"BB": 0.4138,
"SO": 1.2414,
"HR": 0.069,
"BF": 4.5172,
"Pitches": 18.6552
},
"rates": {
"ERA": 3.6404,
"WHIP": 1.382,
"ER_per_IP": 0.40449,
"H_per_IP": 0.97753,
"BB_per_IP": 0.40449,
"SO_per_IP": 1.21348,
"HR_per_IP": 0.06742
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.345,
"predicted_H": 0.781,
"predicted_BB": 0.36,
"predicted_SO": 1.111,
"predicted_HR": 0.092,
"predicted_ERA": 3.1025,
"predicted_WHIP": 1.1407
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.544,
"form_weight": 0.456,
"form_reliability": 0.5409,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.345,
"final": 0.1573,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.781,
"final": 0.9001,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.36,
"final": 0.1642,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.111,
"final": 0.5066,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.092,
"final": 0.042,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.1025,
"final": 3.1025,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1407,
"final": 1.1407,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Fernando Cruz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3886 |
| ESPN Rank | 69 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 2.0106 |
| Season WHIP | 1.2447 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYY",
"games": 82,
"wins": 50,
"losses": 32,
"win_pct": 0.6098,
"runs_scored": 410.0,
"runs_allowed": 297.0,
"run_differential": 113.0,
"run_differential_per_game": 1.378,
"avg_runs_scored": 5.0,
"avg_runs_allowed": 3.622,
"offense_index": 1.1096,
"defense_index": 1.2441,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 8,
"losses": 2,
"win_pct": 0.8,
"avg_runs_scored": 6.2,
"avg_runs_allowed": 3.1,
"run_differential": 31.0
},
"available": true,
"quality_score": 0.3665
},
"opponent": {
"team": "CHW",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 371.0,
"runs_allowed": 387.0,
"run_differential": -16.0,
"run_differential_per_game": -0.2,
"avg_runs_scored": 4.6375,
"avg_runs_allowed": 4.8375,
"offense_index": 1.0291,
"defense_index": 0.9315,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.1,
"avg_runs_allowed": 5.3,
"run_differential": -12.0
},
"available": true,
"quality_score": -0.035
},
"edges": {
"quality_edge": 0.4015,
"offense_edge": 0.1096,
"opponent_offense_edge": 0.0291,
"defense_strength": 0.2441,
"opponent_defense_weakness": 0.0685,
"recent_win_pct_edge": 0.3
},
"player_factors": {
"ip": 1.0222,
"run_prevention": 0.9602,
"strikeout": 1.0097
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "518585",
"profile": {
"available": true,
"pitcher_id": "518585",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 97.0,
"k_percent": 30.5,
"bb_percent": 14.5,
"woba": 0.275,
"xwoba": 0.275,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 5.7,
"hard_hit_percent": 22.9,
"avg_best_speed": 74.3158,
"avg_hyper_speed": 92.3424,
"whiff_percent": 41.6,
"swing_percent": 42.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.0573,
"command_and_miss": 1.0443,
"regression_edge": 0.0,
"xwoba_edge": 1.1429,
"barrel_edge": 0.3556,
"hard_hit_edge": 2.2,
"whiff_edge": 2.2714,
"bb_edge": -1.325,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "518585",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3886,
"sample_weight": 0.45,
"run_prevention_factor": 0.967,
"strikeout_factor": 1.0615,
"walk_factor": 1.0477,
"homer_factor": 0.9322,
"woba_minus_xwoba": 0.0,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "518585",
"espn_id": 34068,
"player_name": "Fernando Cruz",
"team": "NYY",
"role": "pitcher",
"espn_rank": 69,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 69,
"gp_value": 34.0,
"gp_rank": 13,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.0106,
"era_rank": null,
"w_value": 4.0,
"w_rank": 65,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 11.0,
"hld_rank": 12,
"ip_value": 31.1,
"ip_rank": 229,
"h_value": 20.0,
"h_rank": 330,
"er_value": 7.0,
"er_rank": 431,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 19.0,
"bb_rank": 131,
"k_value": 40.0,
"k_rank": 160,
"k_per_9_value": 11.489362,
"k_per_9_rank": 18,
"whip_value": 1.2446,
"whip_rank": null,
"war_value": 1.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9851,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9851,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0215,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9695,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0277,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 2,
"H": 6,
"BB": 6,
"SO": 10,
"HR": 0,
"ERA": 1.6874999999999998,
"WHIP": 1.1249999999999998,
"K9": 8.437499999999998,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "518585",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.222,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5545,
"prior_weight": 0.4455
},
"role": "pitcher",
"player_id": "518585",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 34,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 5.0,
"SO": 7.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 92.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 1.0,
"SO": 1.4,
"HR": 0.0,
"BF": 4.6,
"Pitches": 18.4
},
"rates": {
"ERA": 1.6875,
"WHIP": 1.3125,
"ER_per_IP": 0.1875,
"H_per_IP": 0.375,
"BB_per_IP": 0.9375,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 2.0,
"R": 2.0,
"H": 6.0,
"BB": 6.0,
"SO": 10.0,
"HR": 0.0,
"BF": 42.0,
"Pitches": 159.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 4.2,
"Pitches": 15.9
},
"rates": {
"ERA": 1.6875,
"WHIP": 1.125,
"ER_per_IP": 0.1875,
"H_per_IP": 0.5625,
"BB_per_IP": 0.5625,
"SO_per_IP": 0.9375,
"HR_per_IP": 0.0
}
},
"season": {
"games": 34,
"totals": {
"IP": 31.1,
"ER": 7.0,
"R": 8.0,
"H": 20.0,
"BB": 19.0,
"SO": 40.0,
"HR": 2.0,
"BF": 131.0,
"Pitches": 518.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2059,
"R": 0.2353,
"H": 0.5882,
"BB": 0.5588,
"SO": 1.1765,
"HR": 0.0588,
"BF": 3.8529,
"Pitches": 15.2353
},
"rates": {
"ERA": 2.0106,
"WHIP": 1.2447,
"ER_per_IP": 0.2234,
"H_per_IP": 0.6383,
"BB_per_IP": 0.60638,
"SO_per_IP": 1.2766,
"HR_per_IP": 0.06383
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.331,
"predicted_H": 0.707,
"predicted_BB": 0.572,
"predicted_SO": 1.069,
"predicted_HR": 0.072,
"predicted_ERA": 2.98,
"predicted_WHIP": 1.2796
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5382,
"form_weight": 0.4618,
"form_reliability": 0.5545,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.222,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5545,
"prior_weight": 0.4455
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.331,
"final": 0.1528,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.707,
"final": 0.3265,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.572,
"final": 0.2641,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.069,
"final": 1.5701,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.072,
"final": 0.0332,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.98,
"final": 2.98,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2796,
"final": 1.2796,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.211 | 0.000 | 0.000 | Hitting_2B | 0.227 | 1.000 | -0.227 | -1.000 |
| predicted_3B | 0.042 | 0.000 | 0.000 | Hitting_3B | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_AB | 3.960 | 4.000 | 4.000 | Hitting_AB | 3.661 | 4.000 | 0.339 | 0.000 |
| predicted_AVG | 0.260 | 0.000 | 0.250 | Hitting_AVG | 0.275 | 0.750 | -0.275 | -0.750 |
| predicted_BB | 0.592 | 1.000 | 1.000 | Hitting_BB | 0.645 | 1.000 | 0.355 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_H | 1.030 | 0.000 | 1.000 | Hitting_H | 1.008 | 3.000 | -1.008 | -3.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.155 | 1.000 | -0.155 | -1.000 |
| predicted_OBP | 0.355 | 0.200 | 0.400 | Hitting_OBP | 0.378 | 0.800 | -0.178 | -0.600 |
| predicted_R | 0.634 | 0.000 | 1.000 | Hitting_R | 0.645 | 2.000 | -0.645 | -2.000 |
| predicted_RBI | 0.700 | 0.000 | 1.000 | Hitting_RBI | 0.685 | 2.000 | -0.685 | -2.000 |
| predicted_SLG | 0.480 | 0.000 | 0.250 | Hitting_SLG | 0.495 | 1.750 | -0.495 | -1.750 |
| predicted_SO | 0.535 | 2.000 | 1.000 | Hitting_SO | 0.550 | 1.000 | 1.450 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_SO: 0.5350 -> 2.0000 (boost 1.4650, worse) |
| Biggest Deboost | predicted_H: 1.0300 -> 0.0000 (deboost -1.0300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_H: 1.0300 -> 1.0885 (boost 0.0585, better) | predicted_BB: 0.5920 -> 0.5411 (deboost -0.0509, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 4 | 0 | 4 | 0 | predicted_RBI: 0.7407 -> 0.7947 (boost 0.0540, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 0.5275 -> 1.0000 (boost 0.4725, worse) | predicted_2B: 0.2093 -> 0.0000 (deboost -0.2093, worse) | AB rounded to 4 (raw=3.96), rates preserved: AVG=0.286 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7308 -> 1.0000 (boost 0.2692, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3754 -> 0.4000 (boost 0.0246, better) | predicted_SLG: 0.5146 -> 0.2500 (deboost -0.2646, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 0 | 4 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.5146 (boost 0.2646, better) | predicted_OBP: 0.4000 -> 0.3754 (deboost -0.0246, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641355",
"player_name": "Cody Bellinger",
"position": "LF",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.211,
"predicted_3B": 0.042,
"predicted_AB": 3.96,
"predicted_AVG": 0.26,
"predicted_BB": 0.592,
"predicted_H": 1.03,
"predicted_HR": 0.18,
"predicted_OBP": 0.355,
"predicted_R": 0.634,
"predicted_RBI": 0.7,
"predicted_SLG": 0.48,
"predicted_SO": 0.535
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2093,
"predicted_3B": 0.0352,
"predicted_AB": 3.9354,
"predicted_AVG": 0.2766,
"predicted_BB": 0.5411,
"predicted_H": 1.0885,
"predicted_HBP": 0.003,
"predicted_HR": 0.1961,
"predicted_OBP": 0.3623,
"predicted_R": 0.6811,
"predicted_RBI": 0.7407,
"predicted_SLG": 0.5026,
"predicted_SO": 0.5363
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.211,
"after": 0.2093,
"delta": -0.0017,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.042,
"after": 0.0352,
"delta": -0.0068,
"percent_delta": -0.1619,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.96,
"after": 3.9354,
"delta": -0.0246,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2766,
"delta": 0.0166,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.592,
"after": 0.5411,
"delta": -0.0509,
"percent_delta": -0.086,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.0885,
"delta": 0.0585,
"percent_delta": 0.0568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.1961,
"delta": 0.0161,
"percent_delta": 0.0894,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.355,
"after": 0.3623,
"delta": 0.0073,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.634,
"after": 0.6811,
"delta": 0.0471,
"percent_delta": 0.0743,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7,
"after": 0.7407,
"delta": 0.0407,
"percent_delta": 0.0581,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.48,
"after": 0.5026,
"delta": 0.0226,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.535,
"after": 0.5363,
"delta": 0.0013,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.03,
"after": 1.0885,
"delta": 0.0585,
"percent_delta": 0.0568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.592,
"after": 0.5411,
"delta": -0.0509,
"percent_delta": -0.086,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2093,
"predicted_3B": 0.0352,
"predicted_AB": 3.9354,
"predicted_AVG": 0.2881,
"predicted_BB": 0.55,
"predicted_H": 1.1337,
"predicted_HBP": 0.003,
"predicted_HR": 0.204,
"predicted_OBP": 0.3754,
"predicted_R": 0.7308,
"predicted_RBI": 0.7947,
"predicted_SLG": 0.5146,
"predicted_SO": 0.5275
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2093,
"after": 0.2093,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0352,
"after": 0.0352,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9354,
"after": 3.9354,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2766,
"after": 0.2881,
"delta": 0.0115,
"percent_delta": 0.0416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5411,
"after": 0.55,
"delta": 0.0089,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0885,
"after": 1.1337,
"delta": 0.0452,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.003,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1961,
"after": 0.204,
"delta": 0.0079,
"percent_delta": 0.0403,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3623,
"after": 0.3754,
"delta": 0.0131,
"percent_delta": 0.0362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6811,
"after": 0.7308,
"delta": 0.0497,
"percent_delta": 0.073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7407,
"after": 0.7947,
"delta": 0.054,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5026,
"after": 0.5146,
"delta": 0.012,
"percent_delta": 0.0239,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5363,
"after": 0.5275,
"delta": -0.0088,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.7407,
"after": 0.7947,
"delta": 0.054,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.96), rates preserved: AVG=0.286 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2093,
"after": 0.0,
"delta": -0.2093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0352,
"after": 0.0,
"delta": -0.0352,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9354,
"after": 4.0,
"delta": 0.0646,
"percent_delta": 0.0164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.55,
"after": 1.0,
"delta": 0.45,
"percent_delta": 0.8182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1337,
"after": 1.0,
"delta": -0.1337,
"percent_delta": -0.1179,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.0,
"delta": -0.003,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.204,
"after": 0.0,
"delta": -0.204,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7947,
"after": 1.0,
"delta": 0.2053,
"percent_delta": 0.2583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5275,
"after": 1.0,
"delta": 0.4725,
"percent_delta": 0.8957,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5275,
"after": 1.0,
"delta": 0.4725,
"percent_delta": 0.8957,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2093,
"after": 0.0,
"delta": -0.2093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7308,
"after": 1.0,
"delta": 0.2692,
"percent_delta": 0.3684,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7308,
"after": 1.0,
"delta": 0.2692,
"percent_delta": 0.3684,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2881,
"after": 0.25,
"delta": -0.0381,
"percent_delta": -0.1322,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3754,
"after": 0.4,
"delta": 0.0246,
"percent_delta": 0.0655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5146,
"after": 0.25,
"delta": -0.2646,
"percent_delta": -0.5142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3754,
"after": 0.4,
"delta": 0.0246,
"percent_delta": 0.0655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5146,
"after": 0.25,
"delta": -0.2646,
"percent_delta": -0.5142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2881,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3754,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5146,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2881,
"delta": 0.0381,
"percent_delta": 0.1523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3754,
"delta": -0.0246,
"percent_delta": -0.0616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5146,
"delta": 0.2646,
"percent_delta": 1.0585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5146,
"delta": 0.2646,
"percent_delta": 1.0585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3754,
"delta": -0.0246,
"percent_delta": -0.0616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.211,
"after": 0.0,
"delta": -0.211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.96,
"after": 4.0,
"delta": 0.04,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2881,
"delta": 0.0281,
"percent_delta": 0.1081,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.592,
"after": 1.0,
"delta": 0.408,
"percent_delta": 0.6892,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 0.0,
"delta": -1.03,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.355,
"after": 0.3754,
"delta": 0.0204,
"percent_delta": 0.0575,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.634,
"after": 0.0,
"delta": -0.634,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7,
"after": 0.0,
"delta": -0.7,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.48,
"after": 0.5146,
"delta": 0.0346,
"percent_delta": 0.0721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.535,
"after": 2.0,
"delta": 1.465,
"percent_delta": 2.7383,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.535,
"after": 2.0,
"delta": 1.465,
"percent_delta": 2.7383,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.03,
"after": 0.0,
"delta": -1.03,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.211 | - |
| predicted_3B | 0.042 | - |
| predicted_AB | 3.960 | - |
| predicted_AVG | 0.260 | - |
| predicted_BB | 0.592 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.355 | - |
| predicted_R | 0.634 | - |
| predicted_RBI | 0.700 | - |
| predicted_SLG | 0.480 | - |
| predicted_SO | 0.535 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | -0.002 |
| predicted_3B | 0.035 | -0.007 |
| predicted_AB | 3.935 | -0.025 |
| predicted_AVG | 0.277 | 0.017 |
| predicted_BB | 0.541 | -0.051 |
| predicted_H | 1.089 | 0.058 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.196 | 0.016 |
| predicted_OBP | 0.362 | 0.007 |
| predicted_R | 0.681 | 0.047 |
| predicted_RBI | 0.741 | 0.041 |
| predicted_SLG | 0.503 | 0.023 |
| predicted_SO | 0.536 | 0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | 0.000 |
| predicted_3B | 0.035 | 0.000 |
| predicted_AB | 3.935 | 0.000 |
| predicted_AVG | 0.288 | 0.012 |
| predicted_BB | 0.550 | 0.009 |
| predicted_H | 1.134 | 0.045 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.204 | 0.008 |
| predicted_OBP | 0.375 | 0.013 |
| predicted_R | 0.731 | 0.050 |
| predicted_RBI | 0.795 | 0.054 |
| predicted_SLG | 0.515 | 0.012 |
| predicted_SO | 0.527 | -0.009 |
AB rounded to 4 (raw=3.96), rates preserved: AVG=0.286 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.209 |
| predicted_3B | 0.000 | -0.035 |
| predicted_AB | 4.000 | 0.065 |
| predicted_AVG | 0.250 | -0.038 |
| predicted_BB | 1.000 | 0.450 |
| predicted_H | 1.000 | -0.134 |
| predicted_HR | 0.000 | -0.204 |
| predicted_OBP | 0.400 | 0.025 |
| predicted_R | 1.000 | 0.269 |
| predicted_RBI | 1.000 | 0.205 |
| predicted_SLG | 0.250 | -0.265 |
| predicted_SO | 1.000 | 0.473 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 8.000 | 1.000 | 0.000 | 2.000 | 6.000 | 6.000 | 1.000 | 2.000 | 0.3636 | 0.3913 | 0.6818 | 0.3636 | 0.0909 | 0.2727 | 0.0454 | 0.0909 |
| last_10 | 0.20 | 10 | - | 41.000 | 13.000 | 2.000 | 0.000 | 3.000 | 9.000 | 8.000 | 4.000 | 5.000 | 0.3171 | 0.3778 | 0.5854 | 0.3171 | 0.0732 | 0.2195 | 0.0976 | 0.1220 |
| season | 0.60 | 71 | - | 261.000 | 73.000 | 15.000 | 3.000 | 11.000 | 49.000 | 45.000 | 42.000 | 38.000 | 0.2797 | 0.3734 | 0.4866 | 0.2797 | 0.0421 | 0.1877 | 0.1609 | 0.1456 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2070 |
| predicted_3B | 0.0260 |
| predicted_AB | 3.9020 |
| predicted_AVG | 0.2992 |
| predicted_BB | 0.4720 |
| predicted_H | 1.1680 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2180 |
| predicted_OBP | 0.3721 |
| predicted_R | 0.7450 |
| predicted_RBI | 0.7960 |
| predicted_SLG | 0.5334 |
| predicted_SO | 0.5380 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2110 | 0.2070 | 0.2093 | model_form_blend |
| predicted_3B | 0.0420 | 0.0260 | 0.0352 | model_form_blend |
| predicted_AB | 3.9600 | 3.9020 | 3.9354 | model_form_blend |
| predicted_AVG | 0.2600 | 0.2992 | 0.2766 | model_form_blend |
| predicted_BB | 0.5920 | 0.4720 | 0.5411 | model_form_blend |
| predicted_H | 1.0300 | 1.1680 | 1.0885 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1800 | 0.2180 | 0.1961 | model_form_blend |
| predicted_OBP | 0.3550 | 0.3721 | 0.3623 | model_form_blend |
| predicted_R | 0.6340 | 0.7450 | 0.6811 | model_form_blend |
| predicted_RBI | 0.7000 | 0.7960 | 0.7407 | model_form_blend |
| predicted_SLG | 0.4800 | 0.5334 | 0.5026 | model_form_blend |
| predicted_SO | 0.5350 | 0.5380 | 0.5363 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 251 |
| Season rows before report date | 251 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.28 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.75 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 7 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 641355 |
| playerID | 641355 |
| playerName | Cody Bellinger |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 12.3 |
| sl_bb_percent | 13.6 |
| sl_woba | 0.374 |
| sl_xwoba | 0.375 |
| sl_xba | 0.293 |
| sl_xslg | 0.461 |
| sl_sweet_spot_percent | 40.8 |
| sl_barrel_batted_rate | 8.0 |
| sl_hard_hit_percent | 37.0 |
| sl_exit_velocity_avg | 89.3 |
| sl_launch_angle_avg | 19.1 |
| sl_whiff_percent | 17.7 |
| sl_swing_percent | 44.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.227 | 0.000 | 0.000 | Hitting_2B | 0.239 | 0.000 | -0.239 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_AB | 4.120 | 5.000 | 4.000 | Hitting_AB | 3.774 | 4.000 | 1.226 | 1.000 |
| predicted_AVG | 0.249 | 0.000 | 0.250 | Hitting_AVG | 0.297 | 0.250 | -0.297 | -0.250 |
| predicted_BB | 0.591 | 0.000 | 1.000 | Hitting_BB | 0.617 | 1.000 | -0.617 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.030 | 0.000 | 1.000 | Hitting_H | 1.122 | 1.000 | -1.122 | -1.000 |
| predicted_HR | 0.260 | 0.000 | 0.000 | Hitting_HR | 0.317 | 0.000 | -0.317 | 0.000 |
| predicted_OBP | 0.362 | 0.000 | 0.400 | Hitting_OBP | 0.400 | 0.400 | -0.400 | -0.400 |
| predicted_R | 0.803 | 0.000 | 1.000 | Hitting_R | 0.848 | 0.000 | -0.848 | 0.000 |
| predicted_RBI | 0.650 | 0.000 | 1.000 | Hitting_RBI | 0.774 | 0.000 | -0.774 | 0.000 |
| predicted_SLG | 0.503 | 0.000 | 0.250 | Hitting_SLG | 0.627 | 0.250 | -0.627 | -0.250 |
| predicted_SO | 1.015 | 1.000 | 1.000 | Hitting_SO | 1.017 | 1.000 | -0.017 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 4.1200 -> 5.0000 (boost 0.8800, better) |
| Biggest Deboost | predicted_H: 1.0300 -> 0.0000 (deboost -1.0300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_SLG: 0.5030 -> 0.5256 (boost 0.0226, better) | predicted_AB: 4.1200 -> 4.0047 (deboost -0.1153, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_R: 0.7836 -> 0.8407 (boost 0.0571, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 2 | 3 | 2 | 3 | predicted_BB: 0.6355 -> 1.0000 (boost 0.3645, better) | predicted_HR: 0.2898 -> 0.0000 (deboost -0.2898, worse) | AB rounded to 4 (raw=4.12), rates preserved: AVG=0.262 HR/AB=0.070 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8407 -> 1.0000 (boost 0.1593, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3699 -> 0.4000 (boost 0.0301, better) | predicted_SLG: 0.5475 -> 0.2500 (deboost -0.2975, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 1 | 4 | 1 | 4 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.5475 (boost 0.2975, better) | predicted_OBP: 0.4000 -> 0.3699 (deboost -0.0301, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "700250",
"player_name": "Ben Rice",
"position": "1B",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.227,
"predicted_3B": 0.03,
"predicted_AB": 4.12,
"predicted_AVG": 0.249,
"predicted_BB": 0.591,
"predicted_H": 1.03,
"predicted_HR": 0.26,
"predicted_OBP": 0.362,
"predicted_R": 0.803,
"predicted_RBI": 0.65,
"predicted_SLG": 0.503,
"predicted_SO": 1.015
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1924,
"predicted_3B": 0.0249,
"predicted_AB": 4.0047,
"predicted_AVG": 0.259,
"predicted_BB": 0.6252,
"predicted_H": 1.038,
"predicted_HBP": 0.02,
"predicted_HR": 0.2786,
"predicted_OBP": 0.3706,
"predicted_R": 0.7836,
"predicted_RBI": 0.6631,
"predicted_SLG": 0.5256,
"predicted_SO": 1.007
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.1924,
"delta": -0.0346,
"percent_delta": -0.1524,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0249,
"delta": -0.0051,
"percent_delta": -0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.12,
"after": 4.0047,
"delta": -0.1153,
"percent_delta": -0.028,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.259,
"delta": 0.01,
"percent_delta": 0.0402,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.591,
"after": 0.6252,
"delta": 0.0342,
"percent_delta": 0.0579,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.038,
"delta": 0.008,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.26,
"after": 0.2786,
"delta": 0.0186,
"percent_delta": 0.0715,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.362,
"after": 0.3706,
"delta": 0.0086,
"percent_delta": 0.0238,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.803,
"after": 0.7836,
"delta": -0.0194,
"percent_delta": -0.0242,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.6631,
"delta": 0.0131,
"percent_delta": 0.0202,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.503,
"after": 0.5256,
"delta": 0.0226,
"percent_delta": 0.0449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.015,
"after": 1.007,
"delta": -0.008,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.503,
"after": 0.5256,
"delta": 0.0226,
"percent_delta": 0.0449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.12,
"after": 4.0047,
"delta": -0.1153,
"percent_delta": -0.028,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1924,
"predicted_3B": 0.0249,
"predicted_AB": 4.0047,
"predicted_AVG": 0.27,
"predicted_BB": 0.6355,
"predicted_H": 1.0811,
"predicted_HBP": 0.02,
"predicted_HR": 0.2898,
"predicted_OBP": 0.3699,
"predicted_R": 0.8407,
"predicted_RBI": 0.7114,
"predicted_SLG": 0.5475,
"predicted_SO": 0.9905
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1924,
"after": 0.1924,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0249,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0047,
"after": 4.0047,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.27,
"delta": 0.011,
"percent_delta": 0.0425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6252,
"after": 0.6355,
"delta": 0.0103,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.038,
"after": 1.0811,
"delta": 0.0431,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2786,
"after": 0.2898,
"delta": 0.0112,
"percent_delta": 0.0402,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3706,
"after": 0.3699,
"delta": -0.0007,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7836,
"after": 0.8407,
"delta": 0.0571,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6631,
"after": 0.7114,
"delta": 0.0483,
"percent_delta": 0.0728,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5256,
"after": 0.5475,
"delta": 0.0219,
"percent_delta": 0.0417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.007,
"after": 0.9905,
"delta": -0.0165,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7836,
"after": 0.8407,
"delta": 0.0571,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.12), rates preserved: AVG=0.262 HR/AB=0.070",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0,
"delta": -0.0249,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0047,
"after": 4.0,
"delta": -0.0047,
"percent_delta": -0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6355,
"after": 1.0,
"delta": 0.3645,
"percent_delta": 0.5736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0811,
"after": 1.0,
"delta": -0.0811,
"percent_delta": -0.075,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2898,
"after": 0.0,
"delta": -0.2898,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7114,
"after": 1.0,
"delta": 0.2886,
"percent_delta": 0.4057,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9905,
"after": 1.0,
"delta": 0.0095,
"percent_delta": 0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6355,
"after": 1.0,
"delta": 0.3645,
"percent_delta": 0.5736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2898,
"after": 0.0,
"delta": -0.2898,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8407,
"after": 1.0,
"delta": 0.1593,
"percent_delta": 0.1895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8407,
"after": 1.0,
"delta": 0.1593,
"percent_delta": 0.1895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.25,
"delta": -0.02,
"percent_delta": -0.0741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3699,
"after": 0.4,
"delta": 0.0301,
"percent_delta": 0.0814,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5475,
"after": 0.25,
"delta": -0.2975,
"percent_delta": -0.5434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3699,
"after": 0.4,
"delta": 0.0301,
"percent_delta": 0.0814,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5475,
"after": 0.25,
"delta": -0.2975,
"percent_delta": -0.5434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.27,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3699,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5475,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.27,
"delta": 0.02,
"percent_delta": 0.0798,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3699,
"delta": -0.0301,
"percent_delta": -0.0752,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5475,
"delta": 0.2975,
"percent_delta": 1.19,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5475,
"delta": 0.2975,
"percent_delta": 1.19,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3699,
"delta": -0.0301,
"percent_delta": -0.0752,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.0,
"delta": -0.227,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.12,
"after": 5.0,
"delta": 0.88,
"percent_delta": 0.2136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.27,
"delta": 0.021,
"percent_delta": 0.0843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.591,
"after": 0.0,
"delta": -0.591,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 0.0,
"delta": -1.03,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.362,
"after": 0.3699,
"delta": 0.0079,
"percent_delta": 0.0218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.803,
"after": 0.0,
"delta": -0.803,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.503,
"after": 0.5475,
"delta": 0.0445,
"percent_delta": 0.0885,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.015,
"after": 1.0,
"delta": -0.015,
"percent_delta": -0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.12,
"after": 5.0,
"delta": 0.88,
"percent_delta": 0.2136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.03,
"after": 0.0,
"delta": -1.03,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.227 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 4.120 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.591 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.260 | - |
| predicted_OBP | 0.362 | - |
| predicted_R | 0.803 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.503 | - |
| predicted_SO | 1.015 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | -0.035 |
| predicted_3B | 0.025 | -0.005 |
| predicted_AB | 4.005 | -0.115 |
| predicted_AVG | 0.259 | 0.010 |
| predicted_BB | 0.625 | 0.034 |
| predicted_H | 1.038 | 0.008 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.279 | 0.019 |
| predicted_OBP | 0.371 | 0.009 |
| predicted_R | 0.784 | -0.019 |
| predicted_RBI | 0.663 | 0.013 |
| predicted_SLG | 0.526 | 0.023 |
| predicted_SO | 1.007 | -0.008 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 4.005 | 0.000 |
| predicted_AVG | 0.270 | 0.011 |
| predicted_BB | 0.635 | 0.010 |
| predicted_H | 1.081 | 0.043 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.290 | 0.011 |
| predicted_OBP | 0.370 | -0.001 |
| predicted_R | 0.841 | 0.057 |
| predicted_RBI | 0.711 | 0.048 |
| predicted_SLG | 0.547 | 0.022 |
| predicted_SO | 0.991 | -0.016 |
AB rounded to 4 (raw=4.12), rates preserved: AVG=0.262 HR/AB=0.070
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.192 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 4.000 | -0.005 |
| predicted_AVG | 0.250 | -0.020 |
| predicted_BB | 1.000 | 0.365 |
| predicted_H | 1.000 | -0.081 |
| predicted_HR | 0.000 | -0.290 |
| predicted_OBP | 0.400 | 0.030 |
| predicted_R | 1.000 | 0.159 |
| predicted_RBI | 1.000 | 0.289 |
| predicted_SLG | 0.250 | -0.297 |
| predicted_SO | 1.000 | 0.009 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 5.000 | 0.000 | 0.000 | 2.000 | 4.000 | 4.000 | 5.000 | 5.000 | 0.2500 | 0.4000 | 0.5500 | 0.2500 | 0.1000 | 0.2000 | 0.2500 | 0.2500 |
| last_10 | 0.20 | 10 | - | 40.000 | 10.000 | 0.000 | 0.000 | 3.000 | 5.000 | 7.000 | 8.000 | 10.000 | 0.2500 | 0.3750 | 0.4750 | 0.2500 | 0.0750 | 0.1250 | 0.2000 | 0.2500 |
| season | 0.60 | 66 | - | 247.000 | 72.000 | 15.000 | 2.000 | 20.000 | 48.000 | 53.000 | 39.000 | 67.000 | 0.2915 | 0.3910 | 0.6113 | 0.2915 | 0.0810 | 0.1943 | 0.1579 | 0.2713 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1450 |
| predicted_3B | 0.0180 |
| predicted_AB | 3.8470 |
| predicted_AVG | 0.2726 |
| predicted_BB | 0.6720 |
| predicted_H | 1.0490 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.3040 |
| predicted_OBP | 0.3824 |
| predicted_R | 0.7570 |
| predicted_RBI | 0.6810 |
| predicted_SLG | 0.5566 |
| predicted_SO | 0.9960 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2270 | 0.1450 | 0.1924 | model_form_blend |
| predicted_3B | 0.0300 | 0.0180 | 0.0249 | model_form_blend |
| predicted_AB | 4.1200 | 3.8470 | 4.0047 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2726 | 0.2590 | model_form_blend |
| predicted_BB | 0.5910 | 0.6720 | 0.6252 | model_form_blend |
| predicted_H | 1.0300 | 1.0490 | 1.0380 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.2600 | 0.3040 | 0.2786 | model_form_blend |
| predicted_OBP | 0.3620 | 0.3824 | 0.3706 | model_form_blend |
| predicted_R | 0.8030 | 0.7570 | 0.7836 | model_form_blend |
| predicted_RBI | 0.6500 | 0.6810 | 0.6631 | model_form_blend |
| predicted_SLG | 0.5030 | 0.5566 | 0.5256 | model_form_blend |
| predicted_SO | 1.0150 | 0.9960 | 1.0070 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 230 |
| Season rows before report date | 230 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.291 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 700250 |
| playerID | 700250 |
| playerName | Ben Rice |
| pos | 1B |
| started | True |
| startingPosition | DH |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 23.1 |
| sl_bb_percent | 13.4 |
| sl_woba | 0.423 |
| sl_xwoba | 0.393 |
| sl_xba | 0.284 |
| sl_xslg | 0.527 |
| sl_sweet_spot_percent | 41.2 |
| sl_barrel_batted_rate | 15.4 |
| sl_hard_hit_percent | 48.4 |
| sl_exit_velocity_avg | 92.1 |
| sl_launch_angle_avg | 14.4 |
| sl_whiff_percent | 26.2 |
| sl_swing_percent | 42.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.178 | 0.000 | 0.000 | Hitting_2B | 0.228 | 0.000 | -0.228 | 0.000 |
| predicted_3B | 0.022 | 0.000 | 0.000 | Hitting_3B | 0.039 | 0.000 | -0.039 | 0.000 |
| predicted_AB | 3.820 | 5.000 | 4.000 | Hitting_AB | 3.709 | 5.000 | 1.291 | 0.000 |
| predicted_AVG | 0.271 | 0.200 | 0.250 | Hitting_AVG | 0.293 | 0.400 | -0.093 | -0.200 |
| predicted_BB | 0.311 | 0.000 | 0.000 | Hitting_BB | 0.394 | 0.000 | -0.394 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.040 | 1.000 | 1.000 | Hitting_H | 1.087 | 2.000 | -0.087 | -1.000 |
| predicted_HR | 0.230 | 0.000 | 0.000 | Hitting_HR | 0.228 | 1.000 | -0.228 | -1.000 |
| predicted_OBP | 0.349 | 0.200 | 0.250 | Hitting_OBP | 0.371 | 0.400 | -0.171 | -0.200 |
| predicted_R | 0.556 | 0.000 | 1.000 | Hitting_R | 0.654 | 1.000 | -0.654 | -1.000 |
| predicted_RBI | 0.770 | 0.000 | 1.000 | Hitting_RBI | 0.654 | 3.000 | -0.654 | -3.000 |
| predicted_SLG | 0.525 | 0.200 | 0.250 | Hitting_SLG | 0.561 | 1.000 | -0.361 | -0.800 |
| predicted_SO | 0.756 | 0.000 | 1.000 | Hitting_SO | 0.780 | 0.000 | -0.780 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_AB: 3.8200 -> 5.0000 (boost 1.1800, better) |
| Biggest Deboost | predicted_RBI: 0.7700 -> 0.0000 (deboost -0.7700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 6 | 0 | predicted_H: 1.0400 -> 1.1377 (boost 0.0977, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_RBI: 0.8485 -> 0.9104 (boost 0.0619, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.7440 -> 1.0000 (boost 0.2560, worse) | predicted_BB: 0.2899 -> 0.0000 (deboost -0.2899, worse) | AB rounded to 4 (raw=3.88), rates preserved: AVG=0.305 HR/AB=0.070 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5869 -> 1.0000 (boost 0.4131, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5657 -> 0.2500 (deboost -0.3157, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5657 (boost 0.3157, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "502671",
"player_name": "Paul Goldschmidt",
"position": "DH",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.178,
"predicted_3B": 0.022,
"predicted_AB": 3.82,
"predicted_AVG": 0.271,
"predicted_BB": 0.311,
"predicted_H": 1.04,
"predicted_HR": 0.23,
"predicted_OBP": 0.349,
"predicted_R": 0.556,
"predicted_RBI": 0.77,
"predicted_SLG": 0.525,
"predicted_SO": 0.756
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1567,
"predicted_3B": 0.0191,
"predicted_AB": 3.8834,
"predicted_AVG": 0.2917,
"predicted_BB": 0.2852,
"predicted_H": 1.1377,
"predicted_HBP": 0.03,
"predicted_HR": 0.2619,
"predicted_OBP": 0.3554,
"predicted_R": 0.547,
"predicted_RBI": 0.8485,
"predicted_SLG": 0.5528,
"predicted_SO": 0.7564
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.1567,
"delta": -0.0213,
"percent_delta": -0.1197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.0191,
"delta": -0.0029,
"percent_delta": -0.1318,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.82,
"after": 3.8834,
"delta": 0.0634,
"percent_delta": 0.0166,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2917,
"delta": 0.0207,
"percent_delta": 0.0764,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.311,
"after": 0.2852,
"delta": -0.0258,
"percent_delta": -0.083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.1377,
"delta": 0.0977,
"percent_delta": 0.0939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.2619,
"delta": 0.0319,
"percent_delta": 0.1387,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.349,
"after": 0.3554,
"delta": 0.0064,
"percent_delta": 0.0183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 0.547,
"delta": -0.009,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.77,
"after": 0.8485,
"delta": 0.0785,
"percent_delta": 0.1019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.525,
"after": 0.5528,
"delta": 0.0278,
"percent_delta": 0.053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.756,
"after": 0.7564,
"delta": 0.0004,
"percent_delta": 0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 6,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.04,
"after": 1.1377,
"delta": 0.0977,
"percent_delta": 0.0939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 45
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1567,
"predicted_3B": 0.0191,
"predicted_AB": 3.8834,
"predicted_AVG": 0.3051,
"predicted_BB": 0.2899,
"predicted_H": 1.1849,
"predicted_HBP": 0.03,
"predicted_HR": 0.2724,
"predicted_OBP": 0.3534,
"predicted_R": 0.5869,
"predicted_RBI": 0.9104,
"predicted_SLG": 0.5657,
"predicted_SO": 0.744
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1567,
"after": 0.1567,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0191,
"after": 0.0191,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8834,
"after": 3.8834,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2917,
"after": 0.3051,
"delta": 0.0134,
"percent_delta": 0.0459,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2852,
"after": 0.2899,
"delta": 0.0047,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1377,
"after": 1.1849,
"delta": 0.0472,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.03,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2619,
"after": 0.2724,
"delta": 0.0105,
"percent_delta": 0.0401,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3554,
"after": 0.3534,
"delta": -0.002,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.547,
"after": 0.5869,
"delta": 0.0399,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8485,
"after": 0.9104,
"delta": 0.0619,
"percent_delta": 0.073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5528,
"after": 0.5657,
"delta": 0.0129,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7564,
"after": 0.744,
"delta": -0.0124,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.8485,
"after": 0.9104,
"delta": 0.0619,
"percent_delta": 0.073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.88), rates preserved: AVG=0.305 HR/AB=0.070",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1567,
"after": 0.0,
"delta": -0.1567,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0191,
"after": 0.0,
"delta": -0.0191,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8834,
"after": 4.0,
"delta": 0.1166,
"percent_delta": 0.03,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2899,
"after": 0.0,
"delta": -0.2899,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1849,
"after": 1.0,
"delta": -0.1849,
"percent_delta": -0.156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2724,
"after": 0.0,
"delta": -0.2724,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9104,
"after": 1.0,
"delta": 0.0896,
"percent_delta": 0.0984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.744,
"after": 1.0,
"delta": 0.256,
"percent_delta": 0.3441,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.744,
"after": 1.0,
"delta": 0.256,
"percent_delta": 0.3441,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2899,
"after": 0.0,
"delta": -0.2899,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5869,
"after": 1.0,
"delta": 0.4131,
"percent_delta": 0.7039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5869,
"after": 1.0,
"delta": 0.4131,
"percent_delta": 0.7039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3051,
"after": 0.25,
"delta": -0.0551,
"percent_delta": -0.1806,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3534,
"after": 0.25,
"delta": -0.1034,
"percent_delta": -0.2926,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5657,
"after": 0.25,
"delta": -0.3157,
"percent_delta": -0.5581,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5657,
"after": 0.25,
"delta": -0.3157,
"percent_delta": -0.5581,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.3051,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3534,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5657,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.3051,
"delta": 0.0551,
"percent_delta": 0.2205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3534,
"delta": 0.1034,
"percent_delta": 0.4136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5657,
"delta": 0.3157,
"percent_delta": 1.263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5657,
"delta": 0.3157,
"percent_delta": 1.263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.0,
"delta": -0.178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.0,
"delta": -0.022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.82,
"after": 5.0,
"delta": 1.18,
"percent_delta": 0.3089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.3051,
"delta": 0.0341,
"percent_delta": 0.1258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.311,
"after": 0.0,
"delta": -0.311,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.0,
"delta": -0.04,
"percent_delta": -0.0385,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.0,
"delta": -0.23,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.349,
"after": 0.3534,
"delta": 0.0044,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 0.0,
"delta": -0.556,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.525,
"after": 0.5657,
"delta": 0.0407,
"percent_delta": 0.0775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.756,
"after": 0.0,
"delta": -0.756,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.82,
"after": 5.0,
"delta": 1.18,
"percent_delta": 0.3089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | - |
| predicted_3B | 0.022 | - |
| predicted_AB | 3.820 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.311 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.230 | - |
| predicted_OBP | 0.349 | - |
| predicted_R | 0.556 | - |
| predicted_RBI | 0.770 | - |
| predicted_SLG | 0.525 | - |
| predicted_SO | 0.756 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.157 | -0.021 |
| predicted_3B | 0.019 | -0.003 |
| predicted_AB | 3.883 | 0.063 |
| predicted_AVG | 0.292 | 0.021 |
| predicted_BB | 0.285 | -0.026 |
| predicted_H | 1.138 | 0.098 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.262 | 0.032 |
| predicted_OBP | 0.355 | 0.006 |
| predicted_R | 0.547 | -0.009 |
| predicted_RBI | 0.849 | 0.079 |
| predicted_SLG | 0.553 | 0.028 |
| predicted_SO | 0.756 | 0.000 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.157 | 0.000 |
| predicted_3B | 0.019 | 0.000 |
| predicted_AB | 3.883 | 0.000 |
| predicted_AVG | 0.305 | 0.013 |
| predicted_BB | 0.290 | 0.005 |
| predicted_H | 1.185 | 0.047 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.272 | 0.010 |
| predicted_OBP | 0.353 | -0.002 |
| predicted_R | 0.587 | 0.040 |
| predicted_RBI | 0.910 | 0.062 |
| predicted_SLG | 0.566 | 0.013 |
| predicted_SO | 0.744 | -0.012 |
AB rounded to 4 (raw=3.88), rates preserved: AVG=0.305 HR/AB=0.070
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.157 |
| predicted_3B | 0.000 | -0.019 |
| predicted_AB | 4.000 | 0.117 |
| predicted_AVG | 0.250 | -0.055 |
| predicted_BB | 0.000 | -0.290 |
| predicted_H | 1.000 | -0.185 |
| predicted_HR | 0.000 | -0.272 |
| predicted_OBP | 0.250 | -0.103 |
| predicted_R | 1.000 | 0.413 |
| predicted_RBI | 1.000 | 0.090 |
| predicted_SLG | 0.250 | -0.316 |
| predicted_SO | 1.000 | 0.256 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 23.000 | 9.000 | 0.000 | 0.000 | 3.000 | 8.000 | 3.000 | 0.000 | 4.000 | 0.3913 | 0.3913 | 0.7826 | 0.3913 | 0.1304 | 0.3478 | 0.0000 | 0.1739 |
| last_10 | 0.20 | 10 | - | 43.000 | 16.000 | 0.000 | 0.000 | 4.000 | 13.000 | 4.000 | 2.000 | 6.000 | 0.3721 | 0.3913 | 0.6512 | 0.3721 | 0.0930 | 0.3023 | 0.0465 | 0.1395 |
| season | 0.60 | 45 | - | 166.000 | 50.000 | 8.000 | 1.000 | 11.000 | 36.000 | 25.000 | 14.000 | 34.000 | 0.3012 | 0.3607 | 0.5602 | 0.3012 | 0.0663 | 0.2169 | 0.0843 | 0.2048 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1260 |
| predicted_3B | 0.0150 |
| predicted_AB | 3.9750 |
| predicted_AVG | 0.3217 |
| predicted_BB | 0.2480 |
| predicted_H | 1.2790 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.3080 |
| predicted_OBP | 0.3646 |
| predicted_R | 0.5340 |
| predicted_RBI | 0.9620 |
| predicted_SLG | 0.5929 |
| predicted_SO | 0.7570 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1780 | 0.1260 | 0.1567 | model_form_blend |
| predicted_3B | 0.0220 | 0.0150 | 0.0191 | model_form_blend |
| predicted_AB | 3.8200 | 3.9750 | 3.8834 | model_form_blend |
| predicted_AVG | 0.2710 | 0.3217 | 0.2917 | model_form_blend |
| predicted_BB | 0.3110 | 0.2480 | 0.2852 | model_form_blend |
| predicted_H | 1.0400 | 1.2790 | 1.1377 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.2300 | 0.3080 | 0.2619 | model_form_blend |
| predicted_OBP | 0.3490 | 0.3646 | 0.3554 | model_form_blend |
| predicted_R | 0.5560 | 0.5340 | 0.5470 | model_form_blend |
| predicted_RBI | 0.7700 | 0.9620 | 0.8485 | model_form_blend |
| predicted_SLG | 0.5250 | 0.5929 | 0.5528 | model_form_blend |
| predicted_SO | 0.7560 | 0.7570 | 0.7564 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 127 |
| Season rows before report date | 127 |
| Report year | 2026 |
| Profile rows used | 45 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.301 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 502671 |
| playerID | 502671 |
| playerName | Paul Goldschmidt |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.4 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.399 |
| sl_xwoba | 0.363 |
| sl_xba | 0.274 |
| sl_xslg | 0.495 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 12.0 |
| sl_hard_hit_percent | 40.6 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 23.6 |
| sl_swing_percent | 48.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.364 | 0.000 | 0.000 | Hitting_2B | 0.333 | 1.000 | -0.333 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.909 | 4.000 | 4.000 | Hitting_AB | 3.889 | 5.000 | 0.111 | -1.000 |
| predicted_AVG | 0.227 | 0.250 | 0.250 | Hitting_AVG | 0.221 | 0.200 | 0.029 | 0.050 |
| predicted_BB | 0.182 | 1.000 | 0.000 | Hitting_BB | 0.167 | 0.000 | 0.833 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.860 | 1.000 | 1.000 | Hitting_H | 0.861 | 1.000 | 0.139 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_OBP | 0.284 | 0.400 | 0.250 | Hitting_OBP | 0.264 | 0.200 | 0.136 | 0.200 |
| predicted_R | 0.545 | 0.000 | 1.000 | Hitting_R | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_RBI | 0.450 | 0.000 | 0.000 | Hitting_RBI | 0.583 | 0.000 | -0.583 | 0.000 |
| predicted_SLG | 0.412 | 0.250 | 0.250 | Hitting_SLG | 0.436 | 0.400 | -0.186 | -0.150 |
| predicted_SO | 0.545 | 1.000 | 1.000 | Hitting_SO | 0.500 | 0.000 | 0.500 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.1820 -> 1.0000 (boost 0.8180, better) |
| Biggest Deboost | predicted_R: 0.5450 -> 0.0000 (deboost -0.5450, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.4161 -> 0.4407 (boost 0.0246, better) | predicted_OBP: 0.2801 -> 0.2660 (deboost -0.0141, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_SO: 0.5769 -> 1.0000 (boost 0.4231, worse) | predicted_RBI: 0.4839 -> 0.0000 (deboost -0.4839, worse) | AB rounded to 4 (raw=3.91), rates preserved: AVG=0.228 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5833 -> 1.0000 (boost 0.4167, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2281 -> 0.2500 (boost 0.0219, better) | predicted_SLG: 0.4407 -> 0.2500 (deboost -0.1907, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4407 (boost 0.1907, better) | predicted_AVG: 0.2500 -> 0.2281 (deboost -0.0219, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691176",
"player_name": "Jasson Domínguez",
"position": "RF",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.364,
"predicted_3B": 0.0,
"predicted_AB": 3.909,
"predicted_AVG": 0.227,
"predicted_BB": 0.182,
"predicted_H": 0.86,
"predicted_HR": 0.15,
"predicted_OBP": 0.284,
"predicted_R": 0.545,
"predicted_RBI": 0.45,
"predicted_SLG": 0.412,
"predicted_SO": 0.545
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3433,
"predicted_3B": 0.002,
"predicted_AB": 3.9147,
"predicted_AVG": 0.2237,
"predicted_BB": 0.1987,
"predicted_H": 0.8573,
"predicted_HBP": 0.059,
"predicted_HR": 0.1554,
"predicted_OBP": 0.2801,
"predicted_R": 0.5437,
"predicted_RBI": 0.451,
"predicted_SLG": 0.4161,
"predicted_SO": 0.5865
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.364,
"after": 0.3433,
"delta": -0.0207,
"percent_delta": -0.0569,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.002,
"delta": 0.002,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.909,
"after": 3.9147,
"delta": 0.0057,
"percent_delta": 0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.227,
"after": 0.2237,
"delta": -0.0033,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.182,
"after": 0.1987,
"delta": 0.0167,
"percent_delta": 0.0918,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.8573,
"delta": -0.0027,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1554,
"delta": 0.0054,
"percent_delta": 0.036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2801,
"delta": -0.0039,
"percent_delta": -0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.545,
"after": 0.5437,
"delta": -0.0013,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.451,
"delta": 0.001,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.4161,
"delta": 0.0041,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.545,
"after": 0.5865,
"delta": 0.0415,
"percent_delta": 0.0761,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 11
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3433,
"predicted_3B": 0.002,
"predicted_AB": 3.9147,
"predicted_AVG": 0.2281,
"predicted_BB": 0.202,
"predicted_H": 0.8929,
"predicted_HBP": 0.059,
"predicted_HR": 0.1616,
"predicted_OBP": 0.266,
"predicted_R": 0.5833,
"predicted_RBI": 0.4839,
"predicted_SLG": 0.4407,
"predicted_SO": 0.5769
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3433,
"after": 0.3433,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.002,
"after": 0.002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9147,
"after": 3.9147,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2237,
"after": 0.2281,
"delta": 0.0044,
"percent_delta": 0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1987,
"after": 0.202,
"delta": 0.0033,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8573,
"after": 0.8929,
"delta": 0.0356,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.059,
"after": 0.059,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1554,
"after": 0.1616,
"delta": 0.0062,
"percent_delta": 0.0399,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2801,
"after": 0.266,
"delta": -0.0141,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5437,
"after": 0.5833,
"delta": 0.0396,
"percent_delta": 0.0728,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.451,
"after": 0.4839,
"delta": 0.0329,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4161,
"after": 0.4407,
"delta": 0.0246,
"percent_delta": 0.0591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5865,
"after": 0.5769,
"delta": -0.0096,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4161,
"after": 0.4407,
"delta": 0.0246,
"percent_delta": 0.0591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2801,
"after": 0.266,
"delta": -0.0141,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.91), rates preserved: AVG=0.228 HR/AB=0.041",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3433,
"after": 0.0,
"delta": -0.3433,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.002,
"after": 0.0,
"delta": -0.002,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9147,
"after": 4.0,
"delta": 0.0853,
"percent_delta": 0.0218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.202,
"after": 0.0,
"delta": -0.202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8929,
"after": 1.0,
"delta": 0.1071,
"percent_delta": 0.1199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.059,
"after": 0.0,
"delta": -0.059,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1616,
"after": 0.0,
"delta": -0.1616,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4839,
"after": 0.0,
"delta": -0.4839,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5769,
"after": 1.0,
"delta": 0.4231,
"percent_delta": 0.7334,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5769,
"after": 1.0,
"delta": 0.4231,
"percent_delta": 0.7334,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4839,
"after": 0.0,
"delta": -0.4839,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5833,
"after": 1.0,
"delta": 0.4167,
"percent_delta": 0.7144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5833,
"after": 1.0,
"delta": 0.4167,
"percent_delta": 0.7144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2281,
"after": 0.25,
"delta": 0.0219,
"percent_delta": 0.096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.266,
"after": 0.25,
"delta": -0.016,
"percent_delta": -0.0602,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4407,
"after": 0.25,
"delta": -0.1907,
"percent_delta": -0.4327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2281,
"after": 0.25,
"delta": 0.0219,
"percent_delta": 0.096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4407,
"after": 0.25,
"delta": -0.1907,
"percent_delta": -0.4327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2281,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.266,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4407,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2281,
"delta": -0.0219,
"percent_delta": -0.0877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.266,
"delta": 0.016,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4407,
"delta": 0.1907,
"percent_delta": 0.7627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4407,
"delta": 0.1907,
"percent_delta": 0.7627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2281,
"delta": -0.0219,
"percent_delta": -0.0877,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.364,
"after": 0.0,
"delta": -0.364,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.909,
"after": 4.0,
"delta": 0.091,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.227,
"after": 0.2281,
"delta": 0.0011,
"percent_delta": 0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.182,
"after": 1.0,
"delta": 0.818,
"percent_delta": 4.4945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 1.0,
"delta": 0.14,
"percent_delta": 0.1628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.266,
"delta": -0.018,
"percent_delta": -0.0634,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.545,
"after": 0.0,
"delta": -0.545,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.4407,
"delta": 0.0287,
"percent_delta": 0.0697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.545,
"after": 1.0,
"delta": 0.455,
"percent_delta": 0.8349,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.182,
"after": 1.0,
"delta": 0.818,
"percent_delta": 4.4945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.545,
"after": 0.0,
"delta": -0.545,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.364 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.909 | - |
| predicted_AVG | 0.227 | - |
| predicted_BB | 0.182 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.284 | - |
| predicted_R | 0.545 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.412 | - |
| predicted_SO | 0.545 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.343 | -0.021 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.915 | 0.006 |
| predicted_AVG | 0.224 | -0.003 |
| predicted_BB | 0.199 | 0.017 |
| predicted_H | 0.857 | -0.003 |
| predicted_HBP | 0.059 | - |
| predicted_HR | 0.155 | 0.005 |
| predicted_OBP | 0.280 | -0.004 |
| predicted_R | 0.544 | -0.001 |
| predicted_RBI | 0.451 | 0.001 |
| predicted_SLG | 0.416 | 0.004 |
| predicted_SO | 0.587 | 0.041 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.343 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.915 | 0.000 |
| predicted_AVG | 0.228 | 0.004 |
| predicted_BB | 0.202 | 0.003 |
| predicted_H | 0.893 | 0.036 |
| predicted_HBP | 0.059 | 0.000 |
| predicted_HR | 0.162 | 0.006 |
| predicted_OBP | 0.266 | -0.014 |
| predicted_R | 0.583 | 0.040 |
| predicted_RBI | 0.484 | 0.033 |
| predicted_SLG | 0.441 | 0.025 |
| predicted_SO | 0.577 | -0.010 |
AB rounded to 4 (raw=3.91), rates preserved: AVG=0.228 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.343 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.085 |
| predicted_AVG | 0.250 | 0.022 |
| predicted_BB | 0.000 | -0.202 |
| predicted_H | 1.000 | 0.107 |
| predicted_HR | 0.000 | -0.162 |
| predicted_OBP | 0.250 | -0.016 |
| predicted_R | 1.000 | 0.417 |
| predicted_RBI | 0.000 | -0.484 |
| predicted_SLG | 0.250 | -0.191 |
| predicted_SO | 1.000 | 0.423 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 3.000 | 2.000 | 0.000 | 1.000 | 1.000 | 3.000 | 1.000 | 3.000 | 0.1429 | 0.1818 | 0.3810 | 0.1429 | 0.0476 | 0.0476 | 0.0476 | 0.1429 |
| last_10 | 0.20 | 10 | - | 39.000 | 8.000 | 4.000 | 0.000 | 2.000 | 5.000 | 6.000 | 2.000 | 5.000 | 0.2051 | 0.2619 | 0.4615 | 0.2051 | 0.0513 | 0.1282 | 0.0513 | 0.1282 |
| season | 0.60 | 11 | - | 43.000 | 9.000 | 4.000 | 0.000 | 2.000 | 5.000 | 6.000 | 2.000 | 6.000 | 0.2093 | 0.2609 | 0.4419 | 0.2093 | 0.0465 | 0.1163 | 0.0465 | 0.1395 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3020 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.9260 |
| predicted_AVG | 0.2170 |
| predicted_BB | 0.2320 |
| predicted_H | 0.8520 |
| predicted_HBP | 0.0590 |
| predicted_HR | 0.1660 |
| predicted_OBP | 0.2722 |
| predicted_R | 0.5410 |
| predicted_RBI | 0.4530 |
| predicted_SLG | 0.4242 |
| predicted_SO | 0.6690 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3640 | 0.3020 | 0.3433 | model_form_blend |
| predicted_3B | 0.0000 | 0.0060 | 0.0020 | model_form_blend |
| predicted_AB | 3.9090 | 3.9260 | 3.9147 | model_form_blend |
| predicted_AVG | 0.2270 | 0.2170 | 0.2237 | model_form_blend |
| predicted_BB | 0.1820 | 0.2320 | 0.1987 | model_form_blend |
| predicted_H | 0.8600 | 0.8520 | 0.8573 | model_form_blend |
| predicted_HBP | - | 0.0590 | 0.0590 | form_only |
| predicted_HR | 0.1500 | 0.1660 | 0.1554 | model_form_blend |
| predicted_OBP | 0.2840 | 0.2722 | 0.2801 | model_form_blend |
| predicted_R | 0.5450 | 0.5410 | 0.5437 | model_form_blend |
| predicted_RBI | 0.4500 | 0.4530 | 0.4510 | model_form_blend |
| predicted_SLG | 0.4120 | 0.4242 | 0.4161 | model_form_blend |
| predicted_SO | 0.5450 | 0.6690 | 0.5865 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 36 |
| Season rows before report date | 36 |
| Report year | 2026 |
| Profile rows used | 11 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.209 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 691176 |
| playerID | 691176 |
| playerName | Jasson Domínguez |
| pos | DH |
| started | True |
| startingPosition | RF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.0 |
| sl_bb_percent | 4.3 |
| sl_woba | 0.304 |
| sl_xwoba | 0.306 |
| sl_xba | 0.29 |
| sl_xslg | 0.345 |
| sl_sweet_spot_percent | 24.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 37.8 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 8.7 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 50.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.147 | 1.000 | 0.000 | Hitting_2B | 0.185 | 0.000 | 0.815 | 1.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_AB | 3.720 | 4.000 | 4.000 | Hitting_AB | 3.750 | 5.000 | 0.250 | -1.000 |
| predicted_AVG | 0.225 | 0.500 | 0.250 | Hitting_AVG | 0.245 | 0.200 | 0.255 | 0.300 |
| predicted_BB | 0.426 | 1.000 | 1.000 | Hitting_BB | 0.466 | 0.000 | 0.534 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.060 | 0.000 | -0.060 | 0.000 |
| predicted_H | 0.840 | 2.000 | 1.000 | Hitting_H | 0.918 | 1.000 | 1.082 | 1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.134 | 1.000 | -0.134 | -1.000 |
| predicted_OBP | 0.312 | 0.600 | 0.400 | Hitting_OBP | 0.329 | 0.200 | 0.271 | 0.400 |
| predicted_R | 0.529 | 1.000 | 1.000 | Hitting_R | 0.547 | 1.000 | 0.453 | 0.000 |
| predicted_RBI | 0.540 | 1.000 | 1.000 | Hitting_RBI | 0.440 | 1.000 | 0.560 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_SLG | 0.407 | 0.750 | 0.250 | Hitting_SLG | 0.413 | 0.800 | 0.337 | -0.050 |
| predicted_SO | 1.191 | 0.000 | 1.000 | Hitting_SO | 1.198 | 2.000 | -1.198 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 9 |
| Deboosted Metrics | 2 |
| Better Metrics | 10 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_H: 0.8400 -> 2.0000 (boost 1.1600, better) |
| Biggest Deboost | predicted_SO: 1.1910 -> 0.0000 (deboost -1.1910, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.4070 -> 0.4151 (boost 0.0081, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.4151 -> 0.4312 (boost 0.0161, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 5 | 2 | predicted_BB: 0.4771 -> 1.0000 (boost 0.5229, better) | predicted_SO: 1.2038 -> 1.0000 (deboost -0.2038, better) | AB rounded to 4 (raw=3.72), rates preserved: AVG=0.230 HR/AB=0.047 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6192 -> 1.0000 (boost 0.3808, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3176 -> 0.4000 (boost 0.0824, better) | predicted_SLG: 0.4312 -> 0.2500 (deboost -0.1812, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.4312 (boost 0.1812, better) | predicted_OBP: 0.4000 -> 0.3176 (deboost -0.0824, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665862",
"player_name": "Jazz Chisholm Jr.",
"position": "2B",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.147,
"predicted_3B": 0.029,
"predicted_AB": 3.72,
"predicted_AVG": 0.225,
"predicted_BB": 0.426,
"predicted_H": 0.84,
"predicted_HR": 0.16,
"predicted_OBP": 0.312,
"predicted_R": 0.529,
"predicted_RBI": 0.54,
"predicted_SLG": 0.407,
"predicted_SO": 1.191
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1268,
"predicted_3B": 0.0463,
"predicted_AB": 3.7246,
"predicted_AVG": 0.2206,
"predicted_BB": 0.4694,
"predicted_H": 0.8231,
"predicted_HBP": 0.011,
"predicted_HR": 0.1697,
"predicted_OBP": 0.3119,
"predicted_R": 0.5771,
"predicted_RBI": 0.5628,
"predicted_SLG": 0.4151,
"predicted_SO": 1.2239
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.1268,
"delta": -0.0202,
"percent_delta": -0.1374,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0463,
"delta": 0.0173,
"percent_delta": 0.5966,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.72,
"after": 3.7246,
"delta": 0.0046,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2206,
"delta": -0.0044,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.426,
"after": 0.4694,
"delta": 0.0434,
"percent_delta": 0.1019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.8231,
"delta": -0.0169,
"percent_delta": -0.0201,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.1697,
"delta": 0.0097,
"percent_delta": 0.0606,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3119,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 0.5771,
"delta": 0.0481,
"percent_delta": 0.0909,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.5628,
"delta": 0.0228,
"percent_delta": 0.0422,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.4151,
"delta": 0.0081,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.191,
"after": 1.2239,
"delta": 0.0329,
"percent_delta": 0.0276,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.4151,
"delta": 0.0081,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1268,
"predicted_3B": 0.0463,
"predicted_AB": 3.7246,
"predicted_AVG": 0.2302,
"predicted_BB": 0.4771,
"predicted_H": 0.8573,
"predicted_HBP": 0.011,
"predicted_HR": 0.1765,
"predicted_OBP": 0.3176,
"predicted_R": 0.6192,
"predicted_RBI": 0.6038,
"predicted_SLG": 0.4312,
"predicted_SO": 1.2038
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1268,
"after": 0.1268,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0463,
"after": 0.0463,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7246,
"after": 3.7246,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2206,
"after": 0.2302,
"delta": 0.0096,
"percent_delta": 0.0435,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4694,
"after": 0.4771,
"delta": 0.0077,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8231,
"after": 0.8573,
"delta": 0.0342,
"percent_delta": 0.0416,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1697,
"after": 0.1765,
"delta": 0.0068,
"percent_delta": 0.0401,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3119,
"after": 0.3176,
"delta": 0.0057,
"percent_delta": 0.0183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5771,
"after": 0.6192,
"delta": 0.0421,
"percent_delta": 0.073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5628,
"after": 0.6038,
"delta": 0.041,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4151,
"after": 0.4312,
"delta": 0.0161,
"percent_delta": 0.0388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2239,
"after": 1.2038,
"delta": -0.0201,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4151,
"after": 0.4312,
"delta": 0.0161,
"percent_delta": 0.0388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.72), rates preserved: AVG=0.230 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1268,
"after": 0.0,
"delta": -0.1268,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0463,
"after": 0.0,
"delta": -0.0463,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7246,
"after": 4.0,
"delta": 0.2754,
"percent_delta": 0.0739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4771,
"after": 1.0,
"delta": 0.5229,
"percent_delta": 1.096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8573,
"after": 1.0,
"delta": 0.1427,
"percent_delta": 0.1665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1765,
"after": 0.0,
"delta": -0.1765,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6038,
"after": 1.0,
"delta": 0.3962,
"percent_delta": 0.6562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2038,
"after": 1.0,
"delta": -0.2038,
"percent_delta": -0.1693,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 5,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.4771,
"after": 1.0,
"delta": 0.5229,
"percent_delta": 1.096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.2038,
"after": 1.0,
"delta": -0.2038,
"percent_delta": -0.1693,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6192,
"after": 1.0,
"delta": 0.3808,
"percent_delta": 0.615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6192,
"after": 1.0,
"delta": 0.3808,
"percent_delta": 0.615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2302,
"after": 0.25,
"delta": 0.0198,
"percent_delta": 0.086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3176,
"after": 0.4,
"delta": 0.0824,
"percent_delta": 0.2594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4312,
"after": 0.25,
"delta": -0.1812,
"percent_delta": -0.4202,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3176,
"after": 0.4,
"delta": 0.0824,
"percent_delta": 0.2594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4312,
"after": 0.25,
"delta": -0.1812,
"percent_delta": -0.4202,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2302,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3176,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4312,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2302,
"delta": -0.0198,
"percent_delta": -0.0794,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3176,
"delta": -0.0824,
"percent_delta": -0.2061,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4312,
"delta": 0.1812,
"percent_delta": 0.7249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4312,
"delta": 0.1812,
"percent_delta": 0.7249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3176,
"delta": -0.0824,
"percent_delta": -0.2061,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 1.0,
"delta": 0.853,
"percent_delta": 5.8027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.72,
"after": 4.0,
"delta": 0.28,
"percent_delta": 0.0753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.225,
"after": 0.2302,
"delta": 0.0052,
"percent_delta": 0.0231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.426,
"after": 1.0,
"delta": 0.574,
"percent_delta": 1.3474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 2.0,
"delta": 1.16,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3176,
"delta": 0.0056,
"percent_delta": 0.0179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 1.0,
"delta": 0.471,
"percent_delta": 0.8904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 1.0,
"delta": 0.46,
"percent_delta": 0.8519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.4312,
"delta": 0.0242,
"percent_delta": 0.0595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.191,
"after": 0.0,
"delta": -1.191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 9,
"deboosted_metrics": 2,
"better_metrics": 10,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.84,
"after": 2.0,
"delta": 1.16,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.191,
"after": 0.0,
"delta": -1.191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.147 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.720 | - |
| predicted_AVG | 0.225 | - |
| predicted_BB | 0.426 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.529 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.407 | - |
| predicted_SO | 1.191 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.127 | -0.020 |
| predicted_3B | 0.046 | 0.017 |
| predicted_AB | 3.725 | 0.005 |
| predicted_AVG | 0.221 | -0.004 |
| predicted_BB | 0.469 | 0.043 |
| predicted_H | 0.823 | -0.017 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.170 | 0.010 |
| predicted_OBP | 0.312 | -0.000 |
| predicted_R | 0.577 | 0.048 |
| predicted_RBI | 0.563 | 0.023 |
| predicted_SLG | 0.415 | 0.008 |
| predicted_SO | 1.224 | 0.033 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.127 | 0.000 |
| predicted_3B | 0.046 | 0.000 |
| predicted_AB | 3.725 | 0.000 |
| predicted_AVG | 0.230 | 0.010 |
| predicted_BB | 0.477 | 0.008 |
| predicted_H | 0.857 | 0.034 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.176 | 0.007 |
| predicted_OBP | 0.318 | 0.006 |
| predicted_R | 0.619 | 0.042 |
| predicted_RBI | 0.604 | 0.041 |
| predicted_SLG | 0.431 | 0.016 |
| predicted_SO | 1.204 | -0.020 |
AB rounded to 4 (raw=3.72), rates preserved: AVG=0.230 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.127 |
| predicted_3B | 0.000 | -0.046 |
| predicted_AB | 4.000 | 0.275 |
| predicted_AVG | 0.250 | 0.020 |
| predicted_BB | 1.000 | 0.523 |
| predicted_H | 1.000 | 0.143 |
| predicted_HR | 0.000 | -0.176 |
| predicted_OBP | 0.400 | 0.082 |
| predicted_R | 1.000 | 0.381 |
| predicted_RBI | 1.000 | 0.396 |
| predicted_SLG | 0.250 | -0.181 |
| predicted_SO | 1.000 | -0.204 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 4.000 | 0.000 | 1.000 | 1.000 | 4.000 | 4.000 | 4.000 | 8.000 | 0.2000 | 0.3333 | 0.4500 | 0.2000 | 0.0500 | 0.2000 | 0.2000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 36.000 | 6.000 | 0.000 | 1.000 | 3.000 | 9.000 | 9.000 | 7.000 | 14.000 | 0.1667 | 0.2955 | 0.4722 | 0.1667 | 0.0833 | 0.2500 | 0.1944 | 0.3889 |
| season | 0.60 | 68 | - | 249.000 | 57.000 | 10.000 | 2.000 | 10.000 | 30.000 | 36.000 | 29.000 | 81.000 | 0.2289 | 0.3096 | 0.4056 | 0.2289 | 0.0402 | 0.1205 | 0.1165 | 0.3253 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0990 |
| predicted_3B | 0.0700 |
| predicted_AB | 3.7310 |
| predicted_AVG | 0.2145 |
| predicted_BB | 0.5290 |
| predicted_H | 0.8000 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.1830 |
| predicted_OBP | 0.3117 |
| predicted_R | 0.6430 |
| predicted_RBI | 0.5940 |
| predicted_SLG | 0.4261 |
| predicted_SO | 1.2690 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.0990 | 0.1268 | model_form_blend |
| predicted_3B | 0.0290 | 0.0700 | 0.0463 | model_form_blend |
| predicted_AB | 3.7200 | 3.7310 | 3.7246 | model_form_blend |
| predicted_AVG | 0.2250 | 0.2145 | 0.2206 | model_form_blend |
| predicted_BB | 0.4260 | 0.5290 | 0.4694 | model_form_blend |
| predicted_H | 0.8400 | 0.8000 | 0.8231 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1600 | 0.1830 | 0.1697 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3117 | 0.3119 | model_form_blend |
| predicted_R | 0.5290 | 0.6430 | 0.5771 | model_form_blend |
| predicted_RBI | 0.5400 | 0.5940 | 0.5628 | model_form_blend |
| predicted_SLG | 0.4070 | 0.4261 | 0.4151 | model_form_blend |
| predicted_SO | 1.1910 | 1.2690 | 1.2239 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 232 |
| Season rows before report date | 232 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.229 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 665862 |
| playerID | 665862 |
| playerName | Jazz Chisholm Jr. |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.5 |
| sl_bb_percent | 11.3 |
| sl_woba | 0.32 |
| sl_xwoba | 0.3 |
| sl_xba | 0.213 |
| sl_xslg | 0.366 |
| sl_sweet_spot_percent | 28.8 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 40.6 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 15.1 |
| sl_whiff_percent | 32.0 |
| sl_swing_percent | 43.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.167 | 0.000 | 0.000 | Hitting_2B | 0.183 | 0.000 | -0.183 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.350 | 4.000 | 3.000 | Hitting_AB | 3.478 | 3.000 | 0.522 | 1.000 |
| predicted_AVG | 0.257 | 0.500 | 0.333 | Hitting_AVG | 0.275 | 0.333 | 0.225 | 0.167 |
| predicted_BB | 0.200 | 0.000 | 0.000 | Hitting_BB | 0.189 | 0.000 | -0.189 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.128 | 0.000 | -0.128 | 0.000 |
| predicted_H | 0.820 | 2.000 | 1.000 | Hitting_H | 0.956 | 1.000 | 1.044 | 1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.117 | 0.000 | -0.117 | 0.000 |
| predicted_OBP | 0.320 | 0.500 | 0.333 | Hitting_OBP | 0.327 | 0.500 | 0.173 | 0.000 |
| predicted_R | 0.467 | 0.000 | 1.000 | Hitting_R | 0.472 | 1.000 | -0.472 | -1.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.406 | 2.000 | -0.406 | -2.000 |
| predicted_SLG | 0.437 | 0.500 | 0.333 | Hitting_SLG | 0.428 | 0.333 | 0.072 | 0.167 |
| predicted_SO | 0.717 | 0.000 | 1.000 | Hitting_SO | 0.678 | 0.000 | -0.678 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_H: 0.8200 -> 2.0000 (boost 1.1800, better) |
| Biggest Deboost | predicted_SO: 0.7170 -> 0.0000 (deboost -0.7170, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 5 | 1 | predicted_AB: 3.3500 -> 3.4122 (boost 0.0622, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.4541 -> 0.4611 (boost 0.0070, better) | predicted_OBP: 0.3216 -> 0.3089 (deboost -0.0127, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_RBI: 0.6458 -> 1.0000 (boost 0.3542, better) | predicted_AB: 3.4122 -> 3.0000 (deboost -0.4122, worse) | AB rounded to 3 (raw=3.41), rates preserved: AVG=0.267 HR/AB=0.048 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5380 -> 1.0000 (boost 0.4620, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2667 -> 0.3330 (boost 0.0663, better) | predicted_SLG: 0.4611 -> 0.3330 (deboost -0.1281, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 3 | 2 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4611 (boost 0.1281, better) | predicted_AVG: 0.3330 -> 0.2667 (deboost -0.0663, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676609",
"player_name": "José Caballero",
"position": "SS",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.167,
"predicted_3B": 0.0,
"predicted_AB": 3.35,
"predicted_AVG": 0.257,
"predicted_BB": 0.2,
"predicted_H": 0.82,
"predicted_HR": 0.14,
"predicted_OBP": 0.32,
"predicted_R": 0.467,
"predicted_RBI": 0.55,
"predicted_SLG": 0.437,
"predicted_SO": 0.717
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1728,
"predicted_3B": 0.0008,
"predicted_AB": 3.4122,
"predicted_AVG": 0.263,
"predicted_BB": 0.2046,
"predicted_H": 0.8739,
"predicted_HBP": 0.1,
"predicted_HR": 0.1566,
"predicted_OBP": 0.3216,
"predicted_R": 0.5014,
"predicted_RBI": 0.6019,
"predicted_SLG": 0.4541,
"predicted_SO": 0.7701
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.1728,
"delta": 0.0058,
"percent_delta": 0.0347,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.35,
"after": 3.4122,
"delta": 0.0622,
"percent_delta": 0.0186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.263,
"delta": 0.006,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.2046,
"delta": 0.0046,
"percent_delta": 0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 0.8739,
"delta": 0.0539,
"percent_delta": 0.0657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1566,
"delta": 0.0166,
"percent_delta": 0.1186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3216,
"delta": 0.0016,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.467,
"after": 0.5014,
"delta": 0.0344,
"percent_delta": 0.0737,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.6019,
"delta": 0.0519,
"percent_delta": 0.0944,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.437,
"after": 0.4541,
"delta": 0.0171,
"percent_delta": 0.0391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.717,
"after": 0.7701,
"delta": 0.0531,
"percent_delta": 0.0741,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 6,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.35,
"after": 3.4122,
"delta": 0.0622,
"percent_delta": 0.0186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 60
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1728,
"predicted_3B": 0.0008,
"predicted_AB": 3.4122,
"predicted_AVG": 0.2667,
"predicted_BB": 0.208,
"predicted_H": 0.9102,
"predicted_HBP": 0.1,
"predicted_HR": 0.1629,
"predicted_OBP": 0.3089,
"predicted_R": 0.538,
"predicted_RBI": 0.6458,
"predicted_SLG": 0.4611,
"predicted_SO": 0.7575
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1728,
"after": 0.1728,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4122,
"after": 3.4122,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2667,
"delta": 0.0037,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2046,
"after": 0.208,
"delta": 0.0034,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8739,
"after": 0.9102,
"delta": 0.0363,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1566,
"after": 0.1629,
"delta": 0.0063,
"percent_delta": 0.0402,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3216,
"after": 0.3089,
"delta": -0.0127,
"percent_delta": -0.0395,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5014,
"after": 0.538,
"delta": 0.0366,
"percent_delta": 0.073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6019,
"after": 0.6458,
"delta": 0.0439,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4541,
"after": 0.4611,
"delta": 0.007,
"percent_delta": 0.0154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7701,
"after": 0.7575,
"delta": -0.0126,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4541,
"after": 0.4611,
"delta": 0.007,
"percent_delta": 0.0154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3216,
"after": 0.3089,
"delta": -0.0127,
"percent_delta": -0.0395,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.41), rates preserved: AVG=0.267 HR/AB=0.048",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1728,
"after": 0.0,
"delta": -0.1728,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4122,
"after": 3.0,
"delta": -0.4122,
"percent_delta": -0.1208,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.208,
"after": 0.0,
"delta": -0.208,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9102,
"after": 1.0,
"delta": 0.0898,
"percent_delta": 0.0987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1629,
"after": 0.0,
"delta": -0.1629,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6458,
"after": 1.0,
"delta": 0.3542,
"percent_delta": 0.5485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7575,
"after": 1.0,
"delta": 0.2425,
"percent_delta": 0.3201,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6458,
"after": 1.0,
"delta": 0.3542,
"percent_delta": 0.5485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.4122,
"after": 3.0,
"delta": -0.4122,
"percent_delta": -0.1208,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.538,
"after": 1.0,
"delta": 0.462,
"percent_delta": 0.8587,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.538,
"after": 1.0,
"delta": 0.462,
"percent_delta": 0.8587,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2667,
"after": 0.333,
"delta": 0.0663,
"percent_delta": 0.2486,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3089,
"after": 0.333,
"delta": 0.0241,
"percent_delta": 0.078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4611,
"after": 0.333,
"delta": -0.1281,
"percent_delta": -0.2778,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2667,
"after": 0.333,
"delta": 0.0663,
"percent_delta": 0.2486,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4611,
"after": 0.333,
"delta": -0.1281,
"percent_delta": -0.2778,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2667,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3089,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4611,
"predicted_SO": 0.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2667,
"delta": -0.0663,
"percent_delta": -0.199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3089,
"delta": -0.0241,
"percent_delta": -0.0725,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4611,
"delta": 0.1281,
"percent_delta": 0.3845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4611,
"delta": 0.1281,
"percent_delta": 0.3845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2667,
"delta": -0.0663,
"percent_delta": -0.199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.35,
"after": 4.0,
"delta": 0.65,
"percent_delta": 0.194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2667,
"delta": 0.0097,
"percent_delta": 0.0377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 2.0,
"delta": 1.18,
"percent_delta": 1.439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3089,
"delta": -0.0111,
"percent_delta": -0.0347,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.467,
"after": 0.0,
"delta": -0.467,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.437,
"after": 0.4611,
"delta": 0.0241,
"percent_delta": 0.0551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.717,
"after": 0.0,
"delta": -0.717,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.82,
"after": 2.0,
"delta": 1.18,
"percent_delta": 1.439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.717,
"after": 0.0,
"delta": -0.717,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.167 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.350 | - |
| predicted_AVG | 0.257 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.820 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.320 | - |
| predicted_R | 0.467 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.437 | - |
| predicted_SO | 0.717 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.173 | 0.006 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.412 | 0.062 |
| predicted_AVG | 0.263 | 0.006 |
| predicted_BB | 0.205 | 0.005 |
| predicted_H | 0.874 | 0.054 |
| predicted_HBP | 0.100 | - |
| predicted_HR | 0.157 | 0.017 |
| predicted_OBP | 0.322 | 0.002 |
| predicted_R | 0.501 | 0.034 |
| predicted_RBI | 0.602 | 0.052 |
| predicted_SLG | 0.454 | 0.017 |
| predicted_SO | 0.770 | 0.053 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.173 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.412 | 0.000 |
| predicted_AVG | 0.267 | 0.004 |
| predicted_BB | 0.208 | 0.003 |
| predicted_H | 0.910 | 0.036 |
| predicted_HBP | 0.100 | 0.000 |
| predicted_HR | 0.163 | 0.006 |
| predicted_OBP | 0.309 | -0.013 |
| predicted_R | 0.538 | 0.037 |
| predicted_RBI | 0.646 | 0.044 |
| predicted_SLG | 0.461 | 0.007 |
| predicted_SO | 0.757 | -0.013 |
AB rounded to 3 (raw=3.41), rates preserved: AVG=0.267 HR/AB=0.048
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.173 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.412 |
| predicted_AVG | 0.333 | 0.066 |
| predicted_BB | 0.000 | -0.208 |
| predicted_H | 1.000 | 0.090 |
| predicted_HR | 0.000 | -0.163 |
| predicted_OBP | 0.333 | 0.024 |
| predicted_R | 1.000 | 0.462 |
| predicted_RBI | 1.000 | 0.354 |
| predicted_SLG | 0.333 | -0.128 |
| predicted_SO | 1.000 | 0.243 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 6.000 | 1.000 | 0.000 | 2.000 | 7.000 | 4.000 | 1.000 | 6.000 | 0.3158 | 0.3636 | 0.6842 | 0.3158 | 0.1053 | 0.3684 | 0.0526 | 0.3158 |
| last_10 | 0.20 | 10 | - | 34.000 | 9.000 | 2.000 | 0.000 | 2.000 | 9.000 | 6.000 | 2.000 | 9.000 | 0.2647 | 0.3077 | 0.5000 | 0.2647 | 0.0588 | 0.2647 | 0.0588 | 0.2647 |
| season | 0.60 | 60 | - | 201.000 | 53.000 | 10.000 | 0.000 | 7.000 | 25.000 | 28.000 | 12.000 | 43.000 | 0.2637 | 0.3182 | 0.4179 | 0.2637 | 0.0348 | 0.1244 | 0.0597 | 0.2139 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1810 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.5000 |
| predicted_AVG | 0.2715 |
| predicted_BB | 0.2110 |
| predicted_H | 0.9500 |
| predicted_HBP | 0.1000 |
| predicted_HR | 0.1800 |
| predicted_OBP | 0.3238 |
| predicted_R | 0.5500 |
| predicted_RBI | 0.6750 |
| predicted_SLG | 0.4782 |
| predicted_SO | 0.8450 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.1810 | 0.1728 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.3500 | 3.5000 | 3.4122 | model_form_blend |
| predicted_AVG | 0.2570 | 0.2715 | 0.2630 | model_form_blend |
| predicted_BB | 0.2000 | 0.2110 | 0.2046 | model_form_blend |
| predicted_H | 0.8200 | 0.9500 | 0.8739 | model_form_blend |
| predicted_HBP | - | 0.1000 | 0.1000 | form_only |
| predicted_HR | 0.1400 | 0.1800 | 0.1566 | model_form_blend |
| predicted_OBP | 0.3200 | 0.3238 | 0.3216 | model_form_blend |
| predicted_R | 0.4670 | 0.5500 | 0.5014 | model_form_blend |
| predicted_RBI | 0.5500 | 0.6750 | 0.6019 | model_form_blend |
| predicted_SLG | 0.4370 | 0.4782 | 0.4541 | model_form_blend |
| predicted_SO | 0.7170 | 0.8450 | 0.7701 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 180 |
| Season rows before report date | 180 |
| Report year | 2026 |
| Profile rows used | 60 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.264 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_CHW@NYY |
| game_type | full |
| mlbID | 676609 |
| playerID | 676609 |
| playerName | José Caballero |
| pos | SS |
| started | True |
| startingPosition | LF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.5 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.324 |
| sl_xwoba | 0.289 |
| sl_xba | 0.242 |
| sl_xslg | 0.348 |
| sl_sweet_spot_percent | 31.9 |
| sl_barrel_batted_rate | 3.1 |
| sl_hard_hit_percent | 25.8 |
| sl_exit_velocity_avg | 83.6 |
| sl_launch_angle_avg | 10.8 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 49.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.056 | 1.000 | 0.000 | Hitting_2B | 0.029 | 0.000 | 0.971 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.600 | 4.000 | 3.000 | Hitting_AB | 2.686 | 3.000 | 1.314 | 1.000 |
| predicted_AVG | 0.264 | 0.500 | 0.333 | Hitting_AVG | 0.234 | 0.333 | 0.266 | 0.167 |
| predicted_BB | 0.389 | 0.000 | 0.000 | Hitting_BB | 0.371 | 2.000 | -0.371 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.690 | 2.000 | 1.000 | Hitting_H | 0.629 | 1.000 | 1.371 | 1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.057 | 1.000 | -0.057 | -1.000 |
| predicted_OBP | 0.334 | 0.500 | 0.333 | Hitting_OBP | 0.327 | 0.600 | 0.173 | -0.100 |
| predicted_R | 0.222 | 1.000 | 0.000 | Hitting_R | 0.114 | 2.000 | 0.886 | -1.000 |
| predicted_RBI | 0.440 | 1.000 | 1.000 | Hitting_RBI | 0.371 | 2.000 | 0.629 | -1.000 |
| predicted_SLG | 0.431 | 0.750 | 0.333 | Hitting_SLG | 0.309 | 1.333 | 0.441 | -0.583 |
| predicted_SO | 1.167 | 1.000 | 1.000 | Hitting_SO | 1.200 | 1.000 | -0.200 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 8 |
| Deboosted Metrics | 3 |
| Better Metrics | 9 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_AB: 2.6000 -> 4.0000 (boost 1.4000, better) |
| Biggest Deboost | predicted_BB: 0.3890 -> 0.0000 (deboost -0.3890, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_AB: 2.6000 -> 2.7604 (boost 0.1604, better) | predicted_AVG: 0.2640 -> 0.2588 (deboost -0.0052, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.4388 -> 0.4679 (boost 0.0291, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_RBI: 0.4987 -> 1.0000 (boost 0.5013, better) | predicted_BB: 0.4118 -> 0.0000 (deboost -0.4118, worse) | AB rounded to 3 (raw=2.76), rates preserved: AVG=0.270 HR/AB=0.057 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3106 -> 0.0000 (deboost -0.3106, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2698 -> 0.3330 (boost 0.0632, better) | predicted_SLG: 0.4679 -> 0.3330 (deboost -0.1349, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 4 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.4679 (boost 0.1349, better) | predicted_AVG: 0.3330 -> 0.2698 (deboost -0.0632, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682987",
"player_name": "Spencer Jones",
"position": "CF",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.056,
"predicted_3B": 0.0,
"predicted_AB": 2.6,
"predicted_AVG": 0.264,
"predicted_BB": 0.389,
"predicted_H": 0.69,
"predicted_HR": 0.14,
"predicted_OBP": 0.334,
"predicted_R": 0.222,
"predicted_RBI": 0.44,
"predicted_SLG": 0.431,
"predicted_SO": 1.167
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0694,
"predicted_3B": 0.0014,
"predicted_AB": 2.7604,
"predicted_AVG": 0.2588,
"predicted_BB": 0.4052,
"predicted_H": 0.7151,
"predicted_HBP": 0.01,
"predicted_HR": 0.1521,
"predicted_OBP": 0.3375,
"predicted_R": 0.2895,
"predicted_RBI": 0.4648,
"predicted_SLG": 0.4388,
"predicted_SO": 1.1339
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.056,
"after": 0.0694,
"delta": 0.0134,
"percent_delta": 0.2393,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0014,
"delta": 0.0014,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6,
"after": 2.7604,
"delta": 0.1604,
"percent_delta": 0.0617,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2588,
"delta": -0.0052,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.389,
"after": 0.4052,
"delta": 0.0162,
"percent_delta": 0.0416,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 0.7151,
"delta": 0.0251,
"percent_delta": 0.0364,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1521,
"delta": 0.0121,
"percent_delta": 0.0864,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3375,
"delta": 0.0035,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.222,
"after": 0.2895,
"delta": 0.0675,
"percent_delta": 0.3041,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.4648,
"delta": 0.0248,
"percent_delta": 0.0564,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.4388,
"delta": 0.0078,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 1.1339,
"delta": -0.0331,
"percent_delta": -0.0284,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.6,
"after": 2.7604,
"delta": 0.1604,
"percent_delta": 0.0617,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2588,
"delta": -0.0052,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 18
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0694,
"predicted_3B": 0.0014,
"predicted_AB": 2.7604,
"predicted_AVG": 0.2698,
"predicted_BB": 0.4118,
"predicted_H": 0.7448,
"predicted_HBP": 0.01,
"predicted_HR": 0.1582,
"predicted_OBP": 0.3646,
"predicted_R": 0.3106,
"predicted_RBI": 0.4987,
"predicted_SLG": 0.4679,
"predicted_SO": 1.1153
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0694,
"after": 0.0694,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0014,
"after": 0.0014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7604,
"after": 2.7604,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2588,
"after": 0.2698,
"delta": 0.011,
"percent_delta": 0.0425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4052,
"after": 0.4118,
"delta": 0.0066,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7151,
"after": 0.7448,
"delta": 0.0297,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1521,
"after": 0.1582,
"delta": 0.0061,
"percent_delta": 0.0401,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3375,
"after": 0.3646,
"delta": 0.0271,
"percent_delta": 0.0803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2895,
"after": 0.3106,
"delta": 0.0211,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4648,
"after": 0.4987,
"delta": 0.0339,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4388,
"after": 0.4679,
"delta": 0.0291,
"percent_delta": 0.0663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1339,
"after": 1.1153,
"delta": -0.0186,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4388,
"after": 0.4679,
"delta": 0.0291,
"percent_delta": 0.0663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.76), rates preserved: AVG=0.270 HR/AB=0.057",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0694,
"after": 0.0,
"delta": -0.0694,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0014,
"after": 0.0,
"delta": -0.0014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7604,
"after": 3.0,
"delta": 0.2396,
"percent_delta": 0.0868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4118,
"after": 0.0,
"delta": -0.4118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7448,
"after": 1.0,
"delta": 0.2552,
"percent_delta": 0.3426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1582,
"after": 0.0,
"delta": -0.1582,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4987,
"after": 1.0,
"delta": 0.5013,
"percent_delta": 1.0052,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1153,
"after": 1.0,
"delta": -0.1153,
"percent_delta": -0.1034,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4987,
"after": 1.0,
"delta": 0.5013,
"percent_delta": 1.0052,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4118,
"after": 0.0,
"delta": -0.4118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3106,
"after": 0.0,
"delta": -0.3106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3106,
"after": 0.0,
"delta": -0.3106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2698,
"after": 0.333,
"delta": 0.0632,
"percent_delta": 0.2342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3646,
"after": 0.333,
"delta": -0.0316,
"percent_delta": -0.0867,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4679,
"after": 0.333,
"delta": -0.1349,
"percent_delta": -0.2883,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2698,
"after": 0.333,
"delta": 0.0632,
"percent_delta": 0.2342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4679,
"after": 0.333,
"delta": -0.1349,
"percent_delta": -0.2883,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2698,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3646,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4679,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2698,
"delta": -0.0632,
"percent_delta": -0.1898,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3646,
"delta": 0.0316,
"percent_delta": 0.0949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4679,
"delta": 0.1349,
"percent_delta": 0.4051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4679,
"delta": 0.1349,
"percent_delta": 0.4051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2698,
"delta": -0.0632,
"percent_delta": -0.1898,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.056,
"after": 1.0,
"delta": 0.944,
"percent_delta": 16.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6,
"after": 4.0,
"delta": 1.4,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2698,
"delta": 0.0058,
"percent_delta": 0.022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.389,
"after": 0.0,
"delta": -0.389,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 2.0,
"delta": 1.31,
"percent_delta": 1.8986,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3646,
"delta": 0.0306,
"percent_delta": 0.0916,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.222,
"after": 1.0,
"delta": 0.778,
"percent_delta": 3.5045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 1.0,
"delta": 0.56,
"percent_delta": 1.2727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.4679,
"delta": 0.0369,
"percent_delta": 0.0856,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 1.0,
"delta": -0.167,
"percent_delta": -0.1431,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 8,
"deboosted_metrics": 3,
"better_metrics": 9,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.6,
"after": 4.0,
"delta": 1.4,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.389,
"after": 0.0,
"delta": -0.389,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.056 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.600 | - |
| predicted_AVG | 0.264 | - |
| predicted_BB | 0.389 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.222 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.431 | - |
| predicted_SO | 1.167 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | 0.013 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.760 | 0.160 |
| predicted_AVG | 0.259 | -0.005 |
| predicted_BB | 0.405 | 0.016 |
| predicted_H | 0.715 | 0.025 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.152 | 0.012 |
| predicted_OBP | 0.338 | 0.004 |
| predicted_R | 0.289 | 0.067 |
| predicted_RBI | 0.465 | 0.025 |
| predicted_SLG | 0.439 | 0.008 |
| predicted_SO | 1.134 | -0.033 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.760 | 0.000 |
| predicted_AVG | 0.270 | 0.011 |
| predicted_BB | 0.412 | 0.007 |
| predicted_H | 0.745 | 0.030 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.158 | 0.006 |
| predicted_OBP | 0.365 | 0.027 |
| predicted_R | 0.311 | 0.021 |
| predicted_RBI | 0.499 | 0.034 |
| predicted_SLG | 0.468 | 0.029 |
| predicted_SO | 1.115 | -0.019 |
AB rounded to 3 (raw=2.76), rates preserved: AVG=0.270 HR/AB=0.057
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.069 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.240 |
| predicted_AVG | 0.333 | 0.063 |
| predicted_BB | 0.000 | -0.412 |
| predicted_H | 1.000 | 0.255 |
| predicted_HR | 0.000 | -0.158 |
| predicted_OBP | 0.333 | -0.032 |
| predicted_R | 0.000 | -0.311 |
| predicted_RBI | 1.000 | 0.501 |
| predicted_SLG | 0.333 | -0.135 |
| predicted_SO | 1.000 | -0.115 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 3.000 | 0.000 | 0.000 | 2.000 | 4.000 | 4.000 | 4.000 | 5.000 | 0.2143 | 0.3889 | 0.6429 | 0.2143 | 0.1429 | 0.2857 | 0.2857 | 0.3571 |
| last_10 | 0.20 | 10 | - | 26.000 | 8.000 | 1.000 | 0.000 | 2.000 | 5.000 | 4.000 | 4.000 | 10.000 | 0.3077 | 0.4000 | 0.5769 | 0.3077 | 0.0769 | 0.1923 | 0.1538 | 0.3846 |
| season | 0.60 | 18 | - | 46.000 | 11.000 | 1.000 | 0.000 | 2.000 | 7.000 | 4.000 | 7.000 | 21.000 | 0.2391 | 0.3396 | 0.3913 | 0.2391 | 0.0435 | 0.1522 | 0.1522 | 0.4565 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0950 |
| predicted_3B | 0.0040 |
| predicted_AB | 3.0660 |
| predicted_AVG | 0.2488 |
| predicted_BB | 0.4360 |
| predicted_H | 0.7630 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.1750 |
| predicted_OBP | 0.3441 |
| predicted_R | 0.4180 |
| predicted_RBI | 0.5120 |
| predicted_SLG | 0.4538 |
| predicted_SO | 1.0710 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0560 | 0.0950 | 0.0694 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0014 | model_form_blend |
| predicted_AB | 2.6000 | 3.0660 | 2.7604 | model_form_blend |
| predicted_AVG | 0.2640 | 0.2488 | 0.2588 | model_form_blend |
| predicted_BB | 0.3890 | 0.4360 | 0.4052 | model_form_blend |
| predicted_H | 0.6900 | 0.7630 | 0.7151 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.1400 | 0.1750 | 0.1521 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3441 | 0.3375 | model_form_blend |
| predicted_R | 0.2220 | 0.4180 | 0.2895 | model_form_blend |
| predicted_RBI | 0.4400 | 0.5120 | 0.4648 | model_form_blend |
| predicted_SLG | 0.4310 | 0.4538 | 0.4388 | model_form_blend |
| predicted_SO | 1.1670 | 1.0710 | 1.1339 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 35 |
| Season rows before report date | 35 |
| Report year | 2026 |
| Profile rows used | 18 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.239 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 2 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260616_CHW@NYY |
| game_type | full |
| mlbID | 682987 |
| playerID | 682987 |
| playerName | Spencer Jones |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-16 |
| sl_k_percent | 39.6 |
| sl_bb_percent | 13.2 |
| sl_woba | 0.329 |
| sl_xwoba | 0.287 |
| sl_xba | 0.189 |
| sl_xslg | 0.337 |
| sl_sweet_spot_percent | 28.0 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 75.0 |
| sl_exit_velocity_avg | 97.5 |
| sl_launch_angle_avg | 15.1 |
| sl_whiff_percent | 37.1 |
| sl_swing_percent | 52.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.067 | 0.000 | 0.000 | Hitting_2B | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.950 | 4.000 | 3.000 | Hitting_AB | 3.187 | 1.000 | 0.813 | 3.000 |
| predicted_AVG | 0.240 | 0.000 | 0.333 | Hitting_AVG | 0.202 | 0.000 | -0.202 | 0.000 |
| predicted_BB | 0.233 | 0.000 | 0.000 | Hitting_BB | 0.275 | 0.000 | -0.275 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_H | 0.600 | 0.000 | 1.000 | Hitting_H | 0.643 | 0.000 | -0.643 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_OBP | 0.281 | 0.000 | 0.333 | Hitting_OBP | 0.265 | 0.000 | -0.265 | 0.000 |
| predicted_R | 0.267 | 0.000 | 0.000 | Hitting_R | 0.327 | 0.000 | -0.327 | 0.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.404 | 0.000 | -0.404 | 0.000 |
| predicted_SLG | 0.339 | 0.000 | 0.333 | Hitting_SLG | 0.336 | 0.000 | -0.336 | 0.000 |
| predicted_SO | 0.983 | 3.000 | 1.000 | Hitting_SO | 1.058 | 0.000 | 1.942 | 3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.9830 -> 3.0000 (boost 2.0170, worse) |
| Biggest Deboost | predicted_H: 0.6000 -> 0.0000 (deboost -0.6000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2400 -> 0.2212 (deboost -0.0188, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3264 -> 0.3323 (boost 0.0059, better) | predicted_AVG: 0.2212 -> 0.2079 (deboost -0.0133, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.6151 -> 1.0000 (boost 0.3849, better) | predicted_RBI: 0.3652 -> 0.0000 (deboost -0.3652, worse) | AB rounded to 3 (raw=2.96), rates preserved: AVG=0.208 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2614 -> 0.0000 (deboost -0.2614, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 2 | 0 | 2 | 0 | predicted_AVG: 0.2079 -> 0.3330 (boost 0.1251, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.3330 -> 0.2079 (deboost -0.1251, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641857",
"player_name": "Ryan McMahon",
"position": "3B",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.067,
"predicted_3B": 0.0,
"predicted_AB": 2.95,
"predicted_AVG": 0.24,
"predicted_BB": 0.233,
"predicted_H": 0.6,
"predicted_HR": 0.1,
"predicted_OBP": 0.281,
"predicted_R": 0.267,
"predicted_RBI": 0.34,
"predicted_SLG": 0.339,
"predicted_SO": 0.983
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0621,
"predicted_3B": 0.0008,
"predicted_AB": 2.9582,
"predicted_AVG": 0.2212,
"predicted_BB": 0.256,
"predicted_H": 0.5906,
"predicted_HBP": 0.004,
"predicted_HR": 0.0975,
"predicted_OBP": 0.2754,
"predicted_R": 0.2436,
"predicted_RBI": 0.3404,
"predicted_SLG": 0.3264,
"predicted_SO": 0.9461
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.067,
"after": 0.0621,
"delta": -0.0049,
"percent_delta": -0.0731,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.95,
"after": 2.9582,
"delta": 0.0082,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2212,
"delta": -0.0188,
"percent_delta": -0.0783,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.233,
"after": 0.256,
"delta": 0.023,
"percent_delta": 0.0987,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6,
"after": 0.5906,
"delta": -0.0094,
"percent_delta": -0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0975,
"delta": -0.0025,
"percent_delta": -0.025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2754,
"delta": -0.0056,
"percent_delta": -0.0199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.267,
"after": 0.2436,
"delta": -0.0234,
"percent_delta": -0.0876,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.3404,
"delta": 0.0004,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3264,
"delta": -0.0126,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.983,
"after": 0.9461,
"delta": -0.0369,
"percent_delta": -0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2212,
"delta": -0.0188,
"percent_delta": -0.0783,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 60
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0621,
"predicted_3B": 0.0008,
"predicted_AB": 2.9582,
"predicted_AVG": 0.2079,
"predicted_BB": 0.2602,
"predicted_H": 0.6151,
"predicted_HBP": 0.004,
"predicted_HR": 0.1014,
"predicted_OBP": 0.272,
"predicted_R": 0.2614,
"predicted_RBI": 0.3652,
"predicted_SLG": 0.3323,
"predicted_SO": 0.9306
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0621,
"after": 0.0621,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9582,
"after": 2.9582,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2212,
"after": 0.2079,
"delta": -0.0133,
"percent_delta": -0.0601,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.256,
"after": 0.2602,
"delta": 0.0042,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5906,
"after": 0.6151,
"delta": 0.0245,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0975,
"after": 0.1014,
"delta": 0.0039,
"percent_delta": 0.04,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2754,
"after": 0.272,
"delta": -0.0034,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2436,
"after": 0.2614,
"delta": 0.0178,
"percent_delta": 0.0731,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3404,
"after": 0.3652,
"delta": 0.0248,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3264,
"after": 0.3323,
"delta": 0.0059,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9461,
"after": 0.9306,
"delta": -0.0155,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3264,
"after": 0.3323,
"delta": 0.0059,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2212,
"after": 0.2079,
"delta": -0.0133,
"percent_delta": -0.0601,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.96), rates preserved: AVG=0.208 HR/AB=0.034",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0621,
"after": 0.0,
"delta": -0.0621,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9582,
"after": 3.0,
"delta": 0.0418,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2602,
"after": 0.0,
"delta": -0.2602,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6151,
"after": 1.0,
"delta": 0.3849,
"percent_delta": 0.6258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1014,
"after": 0.0,
"delta": -0.1014,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3652,
"after": 0.0,
"delta": -0.3652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9306,
"after": 1.0,
"delta": 0.0694,
"percent_delta": 0.0746,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6151,
"after": 1.0,
"delta": 0.3849,
"percent_delta": 0.6258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3652,
"after": 0.0,
"delta": -0.3652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2614,
"after": 0.0,
"delta": -0.2614,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2614,
"after": 0.0,
"delta": -0.2614,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2079,
"after": 0.333,
"delta": 0.1251,
"percent_delta": 0.6017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.272,
"after": 0.333,
"delta": 0.061,
"percent_delta": 0.2243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3323,
"after": 0.333,
"delta": 0.0007,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2079,
"after": 0.333,
"delta": 0.1251,
"percent_delta": 0.6017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2079,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.272,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3323,
"predicted_SO": 3.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2079,
"delta": -0.1251,
"percent_delta": -0.3756,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.272,
"delta": -0.061,
"percent_delta": -0.1833,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3323,
"delta": -0.0007,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2079,
"delta": -0.1251,
"percent_delta": -0.3756,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.067,
"after": 0.0,
"delta": -0.067,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.95,
"after": 4.0,
"delta": 1.05,
"percent_delta": 0.3559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2079,
"delta": -0.0321,
"percent_delta": -0.1337,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.233,
"after": 0.0,
"delta": -0.233,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.272,
"delta": -0.009,
"percent_delta": -0.032,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.267,
"after": 0.0,
"delta": -0.267,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3323,
"delta": -0.0067,
"percent_delta": -0.0198,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.983,
"after": 3.0,
"delta": 2.017,
"percent_delta": 2.0519,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.983,
"after": 3.0,
"delta": 2.017,
"percent_delta": 2.0519,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.067 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.950 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.233 | - |
| predicted_H | 0.600 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.281 | - |
| predicted_R | 0.267 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.339 | - |
| predicted_SO | 0.983 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.062 | -0.005 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.958 | 0.008 |
| predicted_AVG | 0.221 | -0.019 |
| predicted_BB | 0.256 | 0.023 |
| predicted_H | 0.591 | -0.009 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.098 | -0.003 |
| predicted_OBP | 0.275 | -0.006 |
| predicted_R | 0.244 | -0.023 |
| predicted_RBI | 0.340 | 0.000 |
| predicted_SLG | 0.326 | -0.013 |
| predicted_SO | 0.946 | -0.037 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.062 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.958 | 0.000 |
| predicted_AVG | 0.208 | -0.013 |
| predicted_BB | 0.260 | 0.004 |
| predicted_H | 0.615 | 0.024 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.101 | 0.004 |
| predicted_OBP | 0.272 | -0.003 |
| predicted_R | 0.261 | 0.018 |
| predicted_RBI | 0.365 | 0.025 |
| predicted_SLG | 0.332 | 0.006 |
| predicted_SO | 0.931 | -0.016 |
AB rounded to 3 (raw=2.96), rates preserved: AVG=0.208 HR/AB=0.034
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.062 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.042 |
| predicted_AVG | 0.333 | 0.125 |
| predicted_BB | 0.000 | -0.260 |
| predicted_H | 1.000 | 0.385 |
| predicted_HR | 0.000 | -0.101 |
| predicted_OBP | 0.333 | 0.061 |
| predicted_R | 0.000 | -0.261 |
| predicted_RBI | 0.000 | -0.365 |
| predicted_SLG | 0.333 | 0.001 |
| predicted_SO | 1.000 | 0.069 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 2.000 | 4.000 | 0.0769 | 0.2000 | 0.0769 | 0.0769 | 0.0000 | 0.0769 | 0.1538 | 0.3077 |
| last_10 | 0.20 | 10 | - | 27.000 | 6.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 3.000 | 7.000 | 0.2222 | 0.3000 | 0.3333 | 0.2222 | 0.0370 | 0.1111 | 0.1111 | 0.2593 |
| season | 0.60 | 60 | - | 177.000 | 37.000 | 4.000 | 0.000 | 7.000 | 22.000 | 16.000 | 14.000 | 59.000 | 0.2090 | 0.2670 | 0.3503 | 0.2090 | 0.0396 | 0.1243 | 0.0791 | 0.3333 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0550 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.9700 |
| predicted_AVG | 0.1941 |
| predicted_BB | 0.2890 |
| predicted_H | 0.5770 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.0940 |
| predicted_OBP | 0.2674 |
| predicted_R | 0.2100 |
| predicted_RBI | 0.3410 |
| predicted_SLG | 0.3082 |
| predicted_SO | 0.8930 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0670 | 0.0550 | 0.0621 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9500 | 2.9700 | 2.9582 | model_form_blend |
| predicted_AVG | 0.2400 | 0.1941 | 0.2212 | model_form_blend |
| predicted_BB | 0.2330 | 0.2890 | 0.2560 | model_form_blend |
| predicted_H | 0.6000 | 0.5770 | 0.5906 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.1000 | 0.0940 | 0.0975 | model_form_blend |
| predicted_OBP | 0.2810 | 0.2674 | 0.2754 | model_form_blend |
| predicted_R | 0.2670 | 0.2100 | 0.2436 | model_form_blend |
| predicted_RBI | 0.3400 | 0.3410 | 0.3404 | model_form_blend |
| predicted_SLG | 0.3390 | 0.3082 | 0.3264 | model_form_blend |
| predicted_SO | 0.9830 | 0.8930 | 0.9461 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 171 |
| Season rows before report date | 171 |
| Report year | 2026 |
| Profile rows used | 60 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.209 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_CHW@NYY |
| game_type | short |
| mlbID | 641857 |
| playerID | 641857 |
| playerName | Ryan McMahon |
| pos | 3B |
| started | False |
| startingPosition | 3B |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-17 |
| sl_k_percent | 30.6 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.277 |
| sl_xwoba | 0.297 |
| sl_xba | 0.228 |
| sl_xslg | 0.389 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 49.2 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 12.0 |
| sl_whiff_percent | 32.2 |
| sl_swing_percent | 46.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.200 | 2.000 | 0.000 | Hitting_2B | 0.194 | 1.000 | 1.806 | 1.000 |
| predicted_3B | 0.040 | 0.000 | 0.000 | Hitting_3B | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_AB | 3.080 | 3.000 | 3.000 | Hitting_AB | 3.181 | 4.000 | -0.181 | -1.000 |
| predicted_AVG | 0.254 | 0.667 | 0.333 | Hitting_AVG | 0.223 | 0.500 | 0.444 | 0.167 |
| predicted_BB | 0.200 | 1.000 | 0.000 | Hitting_BB | 0.236 | 1.000 | 0.764 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.610 | 2.000 | 1.000 | Hitting_H | 0.708 | 2.000 | 1.292 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.285 | 0.750 | 0.333 | Hitting_OBP | 0.272 | 0.600 | 0.478 | 0.150 |
| predicted_R | 0.280 | 1.000 | 0.000 | Hitting_R | 0.278 | 2.000 | 0.722 | -1.000 |
| predicted_RBI | 0.270 | 1.000 | 0.000 | Hitting_RBI | 0.389 | 0.000 | 0.611 | 1.000 |
| predicted_SLG | 0.348 | 1.333 | 0.333 | Hitting_SLG | 0.319 | 0.750 | 1.015 | 0.583 |
| predicted_SO | 0.720 | 0.000 | 1.000 | Hitting_SO | 0.778 | 0.000 | -0.778 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 7 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_2B: 0.2000 -> 2.0000 (boost 1.8000, better) |
| Biggest Deboost | predicted_SO: 0.7200 -> 0.0000 (deboost -0.7200, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0800 -> 3.1545 (boost 0.0745, better) | predicted_AVG: 0.2540 -> 0.2431 (deboost -0.0109, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3436 -> 0.3536 (boost 0.0100, better) | predicted_AVG: 0.2431 -> 0.2170 (deboost -0.0261, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.6846 -> 1.0000 (boost 0.3154, better) | predicted_RBI: 0.2860 -> 0.0000 (deboost -0.2860, worse) | AB rounded to 3 (raw=3.15), rates preserved: AVG=0.217 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3431 -> 0.0000 (deboost -0.3431, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2170 -> 0.3330 (boost 0.1160, better) | predicted_SLG: 0.3536 -> 0.3330 (deboost -0.0206, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 5 | 1 | 6 | 0 | predicted_2B: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3536 (boost 0.0206, better) | predicted_AVG: 0.3330 -> 0.2170 (deboost -0.1160, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641555",
"player_name": "J.C. Escarra",
"position": "C",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.2,
"predicted_3B": 0.04,
"predicted_AB": 3.08,
"predicted_AVG": 0.254,
"predicted_BB": 0.2,
"predicted_H": 0.61,
"predicted_HR": 0.06,
"predicted_OBP": 0.285,
"predicted_R": 0.28,
"predicted_RBI": 0.27,
"predicted_SLG": 0.348,
"predicted_SO": 0.72
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2119,
"predicted_3B": 0.0333,
"predicted_AB": 3.1545,
"predicted_AVG": 0.2431,
"predicted_BB": 0.2089,
"predicted_H": 0.6573,
"predicted_HBP": 0.008,
"predicted_HR": 0.0488,
"predicted_OBP": 0.281,
"predicted_R": 0.3198,
"predicted_RBI": 0.2666,
"predicted_SLG": 0.3436,
"predicted_SO": 0.7256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.2119,
"delta": 0.0119,
"percent_delta": 0.0595,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0333,
"delta": -0.0067,
"percent_delta": -0.1675,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.08,
"after": 3.1545,
"delta": 0.0745,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2431,
"delta": -0.0109,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.2089,
"delta": 0.0089,
"percent_delta": 0.0445,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 0.6573,
"delta": 0.0473,
"percent_delta": 0.0775,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0488,
"delta": -0.0112,
"percent_delta": -0.1867,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.285,
"after": 0.281,
"delta": -0.004,
"percent_delta": -0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.28,
"after": 0.3198,
"delta": 0.0398,
"percent_delta": 0.1421,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2666,
"delta": -0.0034,
"percent_delta": -0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.348,
"after": 0.3436,
"delta": -0.0044,
"percent_delta": -0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.72,
"after": 0.7256,
"delta": 0.0056,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.08,
"after": 3.1545,
"delta": 0.0745,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2431,
"delta": -0.0109,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 25
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2119,
"predicted_3B": 0.0333,
"predicted_AB": 3.1545,
"predicted_AVG": 0.217,
"predicted_BB": 0.2123,
"predicted_H": 0.6846,
"predicted_HBP": 0.008,
"predicted_HR": 0.0508,
"predicted_OBP": 0.2664,
"predicted_R": 0.3431,
"predicted_RBI": 0.286,
"predicted_SLG": 0.3536,
"predicted_SO": 0.7137
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2119,
"after": 0.2119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0333,
"after": 0.0333,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1545,
"after": 3.1545,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2431,
"after": 0.217,
"delta": -0.0261,
"percent_delta": -0.1074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2089,
"after": 0.2123,
"delta": 0.0034,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6573,
"after": 0.6846,
"delta": 0.0273,
"percent_delta": 0.0415,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.008,
"after": 0.008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0488,
"after": 0.0508,
"delta": 0.002,
"percent_delta": 0.041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2664,
"delta": -0.0146,
"percent_delta": -0.052,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3198,
"after": 0.3431,
"delta": 0.0233,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2666,
"after": 0.286,
"delta": 0.0194,
"percent_delta": 0.0728,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3436,
"after": 0.3536,
"delta": 0.01,
"percent_delta": 0.0291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7256,
"after": 0.7137,
"delta": -0.0119,
"percent_delta": -0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3436,
"after": 0.3536,
"delta": 0.01,
"percent_delta": 0.0291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2431,
"after": 0.217,
"delta": -0.0261,
"percent_delta": -0.1074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.15), rates preserved: AVG=0.217 HR/AB=0.016",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2119,
"after": 0.0,
"delta": -0.2119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0333,
"after": 0.0,
"delta": -0.0333,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1545,
"after": 3.0,
"delta": -0.1545,
"percent_delta": -0.049,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2123,
"after": 0.0,
"delta": -0.2123,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6846,
"after": 1.0,
"delta": 0.3154,
"percent_delta": 0.4607,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.008,
"after": 0.0,
"delta": -0.008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0508,
"after": 0.0,
"delta": -0.0508,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.286,
"after": 0.0,
"delta": -0.286,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7137,
"after": 1.0,
"delta": 0.2863,
"percent_delta": 0.4011,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6846,
"after": 1.0,
"delta": 0.3154,
"percent_delta": 0.4607,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.286,
"after": 0.0,
"delta": -0.286,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3431,
"after": 0.0,
"delta": -0.3431,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3431,
"after": 0.0,
"delta": -0.3431,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.333,
"delta": 0.116,
"percent_delta": 0.5346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2664,
"after": 0.333,
"delta": 0.0666,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3536,
"after": 0.333,
"delta": -0.0206,
"percent_delta": -0.0583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.217,
"after": 0.333,
"delta": 0.116,
"percent_delta": 0.5346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3536,
"after": 0.333,
"delta": -0.0206,
"percent_delta": -0.0583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.217,
"predicted_BB": 1.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2664,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3536,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.217,
"delta": -0.116,
"percent_delta": -0.3483,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2664,
"delta": -0.0666,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3536,
"delta": 0.0206,
"percent_delta": 0.0618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3536,
"delta": 0.0206,
"percent_delta": 0.0618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.217,
"delta": -0.116,
"percent_delta": -0.3483,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 2.0,
"delta": 1.8,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.08,
"after": 3.0,
"delta": -0.08,
"percent_delta": -0.026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.217,
"delta": -0.037,
"percent_delta": -0.1457,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 2.0,
"delta": 1.39,
"percent_delta": 2.2787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.285,
"after": 0.2664,
"delta": -0.0186,
"percent_delta": -0.0653,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.28,
"after": 1.0,
"delta": 0.72,
"percent_delta": 2.5714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.348,
"after": 0.3536,
"delta": 0.0056,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.72,
"after": 0.0,
"delta": -0.72,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.2,
"after": 2.0,
"delta": 1.8,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.72,
"after": 0.0,
"delta": -0.72,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.200 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 3.080 | - |
| predicted_AVG | 0.254 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.610 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.285 | - |
| predicted_R | 0.280 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.348 | - |
| predicted_SO | 0.720 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | 0.012 |
| predicted_3B | 0.033 | -0.007 |
| predicted_AB | 3.155 | 0.075 |
| predicted_AVG | 0.243 | -0.011 |
| predicted_BB | 0.209 | 0.009 |
| predicted_H | 0.657 | 0.047 |
| predicted_HBP | 0.008 | - |
| predicted_HR | 0.049 | -0.011 |
| predicted_OBP | 0.281 | -0.004 |
| predicted_R | 0.320 | 0.040 |
| predicted_RBI | 0.267 | -0.003 |
| predicted_SLG | 0.344 | -0.004 |
| predicted_SO | 0.726 | 0.006 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 3.155 | 0.000 |
| predicted_AVG | 0.217 | -0.026 |
| predicted_BB | 0.212 | 0.003 |
| predicted_H | 0.685 | 0.027 |
| predicted_HBP | 0.008 | 0.000 |
| predicted_HR | 0.051 | 0.002 |
| predicted_OBP | 0.266 | -0.015 |
| predicted_R | 0.343 | 0.023 |
| predicted_RBI | 0.286 | 0.019 |
| predicted_SLG | 0.354 | 0.010 |
| predicted_SO | 0.714 | -0.012 |
AB rounded to 3 (raw=3.15), rates preserved: AVG=0.217 HR/AB=0.016
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.212 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 3.000 | -0.155 |
| predicted_AVG | 0.333 | 0.116 |
| predicted_BB | 0.000 | -0.212 |
| predicted_H | 1.000 | 0.315 |
| predicted_HR | 0.000 | -0.051 |
| predicted_OBP | 0.333 | 0.067 |
| predicted_R | 0.000 | -0.343 |
| predicted_RBI | 0.000 | -0.286 |
| predicted_SLG | 0.333 | -0.021 |
| predicted_SO | 1.000 | 0.286 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 2.000 | 2.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 4.000 | 2.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 3.000 | 0.2667 | 0.3125 | 0.4000 | 0.2667 | 0.0000 | 0.0000 | 0.0667 | 0.2000 |
| last_10 | 0.20 | 10 | - | 31.000 | 7.000 | 2.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 7.000 | 0.2258 | 0.2647 | 0.2903 | 0.2258 | 0.0000 | 0.0323 | 0.0645 | 0.2258 |
| season | 0.60 | 25 | - | 77.000 | 15.000 | 5.000 | 1.000 | 0.000 | 7.000 | 7.000 | 5.000 | 18.000 | 0.1948 | 0.2410 | 0.2857 | 0.1948 | 0.0000 | 0.0909 | 0.0649 | 0.2338 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2320 |
| predicted_3B | 0.0220 |
| predicted_AB | 3.2800 |
| predicted_AVG | 0.2247 |
| predicted_BB | 0.2240 |
| predicted_H | 0.7370 |
| predicted_HBP | 0.0080 |
| predicted_HR | 0.0300 |
| predicted_OBP | 0.2742 |
| predicted_R | 0.3870 |
| predicted_RBI | 0.2610 |
| predicted_SLG | 0.3361 |
| predicted_SO | 0.7350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2000 | 0.2320 | 0.2119 | model_form_blend |
| predicted_3B | 0.0400 | 0.0220 | 0.0333 | model_form_blend |
| predicted_AB | 3.0800 | 3.2800 | 3.1545 | model_form_blend |
| predicted_AVG | 0.2540 | 0.2247 | 0.2431 | model_form_blend |
| predicted_BB | 0.2000 | 0.2240 | 0.2089 | model_form_blend |
| predicted_H | 0.6100 | 0.7370 | 0.6573 | model_form_blend |
| predicted_HBP | - | 0.0080 | 0.0080 | form_only |
| predicted_HR | 0.0600 | 0.0300 | 0.0488 | model_form_blend |
| predicted_OBP | 0.2850 | 0.2742 | 0.2810 | model_form_blend |
| predicted_R | 0.2800 | 0.3870 | 0.3198 | model_form_blend |
| predicted_RBI | 0.2700 | 0.2610 | 0.2666 | model_form_blend |
| predicted_SLG | 0.3480 | 0.3361 | 0.3436 | model_form_blend |
| predicted_SO | 0.7200 | 0.7350 | 0.7256 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 72 |
| Season rows before report date | 72 |
| Report year | 2026 |
| Profile rows used | 25 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 2 |
| 2B | 2 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.195 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260616_CHW@NYY |
| game_type | full |
| mlbID | 641555 |
| playerID | 641555 |
| playerName | J.C. Escarra |
| pos | C |
| started | True |
| startingPosition | C |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-16 |
| sl_k_percent | 21.4 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.24 |
| sl_xwoba | 0.261 |
| sl_xba | 0.208 |
| sl_xslg | 0.305 |
| sl_sweet_spot_percent | 28.3 |
| sl_barrel_batted_rate | 3.4 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 88.7 |
| sl_launch_angle_avg | 8.4 |
| sl_whiff_percent | 29.7 |
| sl_swing_percent | 45.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.615 | 1.000 | 0.385 | 1.000 |
| predicted_ER | 4.000 | 4.000 | 4.000 | Pitching_ER | 2.769 | 6.000 | 1.231 | -2.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 5.077 | 5.000 | 0.923 | 1.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.538 | 4.100 | -0.338 | 1.100 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 6.231 | 2.000 | -2.231 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "677960",
"player_name": "Ryan Weathers",
"position": "Starter",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.6667,
"predicted_SO": 4.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_R": 4.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 4.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 4.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 29.100 | 21.000 | 29.000 | 8.000 | 27.000 | 9.000 | 6.4432 | 1.2614 | 0.7159 | 0.9886 | 0.2727 | 0.9204 | 0.3068 |
| last_10 | 0.35 | 10 | 58.100 | 31.000 | 49.000 | 16.000 | 63.000 | 15.000 | 4.7829 | 1.1143 | 0.5314 | 0.8400 | 0.2743 | 1.0800 | 0.2571 |
| season | 0.20 | 13 | 74.100 | 36.000 | 66.000 | 21.000 | 81.000 | 15.000 | 4.3587 | 1.1704 | 0.4843 | 0.8879 | 0.2825 | 1.0897 | 0.2018 |
| Metric | Value |
|---|---|
| predicted_BB | 1.7560 |
| predicted_ER | 3.3760 |
| predicted_ERA | 5.1849 |
| predicted_H | 5.4630 |
| predicted_HR | 1.3730 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.8010 |
| predicted_WHIP | 1.2321 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.7560 | 1.8700 | model_form_blend |
| predicted_ER | 4.0000 | 3.3760 | 3.6676 | model_form_blend |
| predicted_ERA | - | 5.1849 | 5.1849 | form_only |
| predicted_H | 6.0000 | 5.4630 | 5.7140 | model_form_blend |
| predicted_HR | 1.0000 | 1.3730 | 1.1987 | model_form_blend |
| predicted_IP | 5.2000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 4.0000 | 5.8010 | 4.9593 | model_form_blend |
| predicted_WHIP | - | 1.2321 | 1.2321 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 13 |
| Season rows before report date | 13 |
| Report year | 2026 |
| Profile rows used | 13 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 6 |
| R | 4 |
| ER | 4 |
| BB | 2 |
| SO | 4 |
| HR | 1 |
| BF | 25 |
| Pitches | 97 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 20 |
| Pitching_ER | 6 |
| Pitching_ERA | 4.36 |
| Pitching_Flyouts | 5 |
| Pitching_Groundouts | 6 |
| Pitching_H | 5 |
| Pitching_HBP | 1 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.1 |
| Pitching_Pitches | 82 |
| Pitching_R | 6 |
| Pitching_SO | 2 |
| Pitching_Strikes | 52 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_NYY@TOR |
| game_type | full |
| mlbID | 677960 |
| playerID | 677960 |
| playerName | Ryan Weathers |
| pos | P |
| started | True |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-12 |
| sl_k_percent | 26.6 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.312 |
| sl_xwoba | 0.323 |
| sl_sweet_spot_percent | 30.2 |
| sl_barrel_batted_rate | 12.0 |
| sl_hard_hit_percent | 41.6 |
| sl_whiff_percent | 26.5 |
| sl_swing_percent | 44.1 |
| sl_avg_best_speed | 77.3551953 |
| sl_avg_hyper_speed | 94.910590352 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.161 | 0.000 | -0.161 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.484 | 0.000 | -0.484 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.839 | 0.000 | -0.839 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.732 | 1.000 | 0.268 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.806 | 2.000 | 0.194 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "666808",
"player_name": "Camilo Doval",
"position": "Middle Reliever",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 0.000 | 4.000 | 1.000 | 6.000 | 0.000 | 0.0000 | 1.1538 | 0.0000 | 0.9231 | 0.2308 | 1.3846 | 0.0000 |
| last_10 | 0.35 | 10 | 8.100 | 4.000 | 9.000 | 1.000 | 8.000 | 1.000 | 4.3200 | 1.2000 | 0.4800 | 1.0800 | 0.1200 | 0.9600 | 0.1200 |
| season | 0.20 | 31 | 26.200 | 15.000 | 26.000 | 5.000 | 25.000 | 4.000 | 5.0625 | 1.1625 | 0.5625 | 0.9750 | 0.1875 | 0.9375 | 0.1500 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2540 |
| predicted_ER | 0.3640 |
| predicted_ERA | 3.4878 |
| predicted_H | 0.9230 |
| predicted_HR | 0.1010 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9820 |
| predicted_WHIP | 1.2521 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2540 | 0.1130 | model_form_blend |
| predicted_ER | 0.0000 | 0.3640 | 0.1619 | model_form_blend |
| predicted_ERA | - | 3.4878 | 3.4878 | form_only |
| predicted_H | 0.0000 | 0.9230 | 0.4106 | model_form_blend |
| predicted_HR | 0.0000 | 0.1010 | 0.0449 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9820 | 0.9920 | model_form_blend |
| predicted_WHIP | - | 1.2521 | 1.2521 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.06 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260614_NYY@TOR |
| game_type | full |
| mlbID | 666808 |
| playerID | 666808 |
| playerName | Camilo Doval |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-14 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 4.5 |
| sl_woba | 0.296 |
| sl_xwoba | 0.263 |
| sl_sweet_spot_percent | 21.0 |
| sl_barrel_batted_rate | 3.7 |
| sl_hard_hit_percent | 49.4 |
| sl_whiff_percent | 26.9 |
| sl_swing_percent | 50.2 |
| sl_avg_best_speed | 80.71591275 |
| sl_avg_hyper_speed | 94.990686375 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.000 | 2.000 | 0.000 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.959 | 1.000 | 0.141 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.241 | 0.000 | -1.241 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "670280",
"player_name": "David Bednar",
"position": "Middle Reliever",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 0.000 | 2.000 | 1.000 | 7.000 | 0.000 | 0.0000 | 0.5294 | 0.0000 | 0.3529 | 0.1765 | 1.2353 | 0.0000 |
| last_10 | 0.35 | 10 | 10.200 | 4.000 | 8.000 | 6.000 | 14.000 | 1.000 | 3.3750 | 1.3125 | 0.3750 | 0.7500 | 0.5625 | 1.3125 | 0.0938 |
| season | 0.20 | 29 | 29.200 | 12.000 | 29.000 | 12.000 | 36.000 | 2.000 | 3.6404 | 1.3820 | 0.4045 | 0.9775 | 0.4045 | 1.2135 | 0.0674 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3600 |
| predicted_ER | 0.3450 |
| predicted_ERA | 3.1025 |
| predicted_H | 0.7810 |
| predicted_HR | 0.0920 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1110 |
| predicted_WHIP | 1.1407 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3600 | 0.1642 | model_form_blend |
| predicted_ER | 0.0000 | 0.3450 | 0.1573 | model_form_blend |
| predicted_ERA | - | 3.1025 | 3.1025 | form_only |
| predicted_H | 1.0000 | 0.7810 | 0.9001 | model_form_blend |
| predicted_HR | 0.0000 | 0.0920 | 0.0420 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1110 | 0.5066 | model_form_blend |
| predicted_WHIP | - | 1.1407 | 1.1407 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 29 |
| Season rows before report date | 29 |
| Report year | 2026 |
| Profile rows used | 29 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.64 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260614_NYY@TOR |
| game_type | full |
| mlbID | 670280 |
| playerID | 670280 |
| playerName | David Bednar |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-14 |
| sl_k_percent | 27.5 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.304 |
| sl_xwoba | 0.266 |
| sl_sweet_spot_percent | 23.2 |
| sl_barrel_batted_rate | 3.7 |
| sl_hard_hit_percent | 39.0 |
| sl_whiff_percent | 29.8 |
| sl_swing_percent | 52.1 |
| sl_avg_best_speed | 75.793172 |
| sl_avg_hyper_speed | 93.483921375 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.559 | 3.000 | -0.559 | -3.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.206 | 0.000 | -0.206 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.588 | 0.000 | -0.588 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.688 | 1.000 | 0.312 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.176 | 1.000 | 0.824 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "518585",
"player_name": "Fernando Cruz",
"position": "Middle Reliever",
"team": "NYY",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 1.000 | 2.000 | 5.000 | 7.000 | 0.000 | 1.6875 | 1.3125 | 0.1875 | 0.3750 | 0.9375 | 1.3125 | 0.0000 |
| last_10 | 0.35 | 10 | 10.200 | 2.000 | 6.000 | 6.000 | 10.000 | 0.000 | 1.6875 | 1.1250 | 0.1875 | 0.5625 | 0.5625 | 0.9375 | 0.0000 |
| season | 0.20 | 34 | 31.100 | 7.000 | 20.000 | 19.000 | 40.000 | 2.000 | 2.0106 | 1.2447 | 0.2234 | 0.6383 | 0.6064 | 1.2766 | 0.0638 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5720 |
| predicted_ER | 0.3310 |
| predicted_ERA | 2.9800 |
| predicted_H | 0.7070 |
| predicted_HR | 0.0720 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0690 |
| predicted_WHIP | 1.2796 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5720 | 0.2641 | model_form_blend |
| predicted_ER | 0.0000 | 0.3310 | 0.1528 | model_form_blend |
| predicted_ERA | - | 2.9800 | 2.9800 | form_only |
| predicted_H | 0.0000 | 0.7070 | 0.3265 | model_form_blend |
| predicted_HR | 0.0000 | 0.0720 | 0.0332 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.0690 | 1.5701 | model_form_blend |
| predicted_WHIP | - | 1.2796 | 1.2796 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 34 |
| Season rows before report date | 34 |
| Report year | 2026 |
| Profile rows used | 34 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 3 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 3 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.01 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 24 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260613_NYY@TOR |
| game_type | full |
| mlbID | 518585 |
| playerID | 518585 |
| playerName | Fernando Cruz |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYY |
| teamID | 19 |
| game_date | 2026-06-13 |
| sl_k_percent | 30.5 |
| sl_bb_percent | 14.5 |
| sl_woba | 0.275 |
| sl_xwoba | 0.275 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 5.7 |
| sl_hard_hit_percent | 22.9 |
| sl_whiff_percent | 41.6 |
| sl_swing_percent | 42.7 |
| sl_avg_best_speed | 74.315849118 |
| sl_avg_hyper_speed | 92.342447647 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | CLE 1 - 2 MIL | MIL | 0.566 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | CLE 1 - 2 MIL | MIL | - | advisory_box_score_draw | True |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 6.5000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5665 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 3.183 | 3.199 | - | Base ML historical model prediction |
| 2 | variance_applied | 3 | 3 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 1 | 2 | 0.5665 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 1 | 2 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 1 | 2 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 1 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.663702572614108,
"base_low_score_probability": 0.4149377593360996,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.24876481327800842,
"confidence": 0.8997616000000002,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.4520000000000002,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.5995232000000004
},
"prediction": "low_scoring",
"expected_total_runs": 3,
"pre_simulation_expected_total_runs": 6.5,
"low_score_model_expected_total_runs": 6.5,
"final_simulation_total_runs": 3,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 212,
"near_bucket_sample_size": 212,
"medium_bucket_sample_size": 236,
"wide_bucket_sample_size": 242,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5849,
"bayesian_hit_rate": 0.5783,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.9217,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5673,
"calibrated_pick_probability": 0.5665,
"predicted_side": "home"
}{
"applied": true,
"home": {
"team": "MIL",
"games": 71,
"wins": 45,
"losses": 26,
"win_pct": 0.6338028169014085,
"runs_scored": 381,
"runs_allowed": 263,
"run_differential": 118,
"run_differential_per_game": 1.6619718309859155,
"available": true
},
"away": {
"team": "CLE",
"games": 74,
"wins": 39,
"losses": 35,
"win_pct": 0.527027027027027,
"runs_scored": 294,
"runs_allowed": 303,
"run_differential": -9,
"run_differential_per_game": -0.12162162162162163,
"available": true
},
"run_differential_edge_per_game": 1.7836,
"win_pct_edge": 0.1068,
"quality_edge": 1.9438,
"margin_adjustment": 0.8164,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 0.624,
"home_runs": 1.416,
"home_win_probability": 0.5673
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "MIL",
"guardrail_predicted_team": "MIL",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "MIL",
"output_opponent_team": "CLE",
"final_score_winner": "MIL",
"pre_simulation_winner": "MIL",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "CLE 1 - 2 MIL",
"winner": "MIL"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "CLE 1 - 2 MIL",
"winner": "MIL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "MIL",
"games": 71,
"wins": 45,
"losses": 26,
"win_pct": 0.6338028169014085,
"runs_scored": 381,
"runs_allowed": 263,
"run_differential": 118,
"run_differential_per_game": 1.6619718309859155,
"available": true
},
"away": {
"team": "CLE",
"games": 74,
"wins": 39,
"losses": 35,
"win_pct": 0.527027027027027,
"runs_scored": 294,
"runs_allowed": 303,
"run_differential": -9,
"run_differential_per_game": -0.12162162162162163,
"available": true
}
}
}{
"applied": false,
"raw_margin": 0.7917,
"final_margin": 0.7917,
"margin_cap": 4.25,
"season_quality_edge": 1.9438,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.566487,
"final_confidence": 0.566487,
"confidence_cap": 0.66,
"score_gap": 0.7917,
"calibration_sample_size": 212,
"calibration_empirical_hit_rate": 0.5849,
"calibration_bayesian_hit_rate": 0.5783,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.9438,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"season run-differential edge supports the pick",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "CLE 1 - 2 MIL",
"winner": "MIL"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "CLE 1 - 2 MIL",
"winner": "MIL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 1,
"home_runs": 2,
"confidence": 0.566487,
"home_win_probability": 0.566487,
"away_win_probability": 0.43351300000000004,
"predicted_score_text": "CLE 1 - 2 MIL",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "CLE",
"original_runs": 1,
"run_delta": -0.3493,
"adjusted_runs": 1,
"lineup": {
"players_used": 8,
"total_weight": 26.0,
"quality": -0.1507938306613102,
"contact": -0.39455732900349666,
"power": -0.37662669486339806,
"discipline": 0.058547456708599316,
"xwoba": 0.30169230769230765,
"recent_xwoba": 0.30169230769230765,
"barrel": 6.315384615384615,
"ab_hard_contact": -0.10901008774415266,
"ab_bat_speed": 69.50022826723935,
"ab_strikeout_rate": 0.25221983030915684,
"available_players": 7,
"top_players": [
{
"player_id": "681807",
"player_name": "David Fry",
"position": "LF",
"weight": 3.0,
"quality": -0.3742913087227884,
"contact": -1.2774435521978018,
"power": -1.006164383872714,
"discipline": 0.23138617886178886,
"xwoba": 0.269,
"recent_xwoba": 0.269,
"barrel": 6.3,
"ab_hard_contact": -0.8299543441209453,
"ab_bat_speed": 68.97549537037038,
"ab_strikeout_rate": 0.305,
"available": 1.0
},
{
"player_id": "595978",
"player_name": "Austin Hedges",
"position": "C",
"weight": 3.0,
"quality": -0.21843444476262164,
"contact": -0.47315164406288135,
"power": -1.009384589656875,
"discipline": 0.2518345915602013,
"xwoba": 0.286,
"recent_xwoba": 0.286,
"barrel": 2.4,
"ab_hard_contact": -0.28750131694703185,
"ab_bat_speed": 66.08498842592593,
"ab_strikeout_rate": 0.21319444444444446,
"available": 1.0
},
{
"player_id": "677587",
"player_name": "Brayan Rocchio",
"position": "SS",
"weight": 4.0,
"quality": -0.2715163913294929,
"contact": -0.11821664206003596,
"power": -0.7053370740600202,
"discipline": 0.35844682576205816,
"xwoba": 0.311,
"recent_xwoba": 0.311,
"barrel": 3.1,
"ab_hard_contact": -0.14217005262898175,
"ab_bat_speed": 69.15457023060797,
"ab_strikeout_rate": 0.1045822102425876,
"available": 1.0
},
{
"player_id": "672356",
"player_name": "Gabriel Arias",
"position": "3B",
"weight": 3.0,
"quality": 0.05815380266004385,
"contact": 0.1904087272050702,
"power": 1.2804648956032985,
"discipline": -1.6375,
"xwoba": 0.305,
"recent_xwoba": 0.305,
"barrel": 15.0,
"ab_hard_contact": 1.755202673970728,
"ab_bat_speed": 74.32762345679012,
"ab_strikeout_rate": 0.42328042328042326,
"available": 1.0
},
{
"player_id": "656413",
"player_name": "Stuart Fairchild",
"position": "CF",
"weight": 3.0,
"quality": -0.0,
"contact": -0.47928571428571426,
"power": -1.0182380952380952,
"discipline": 0.4000000000000001,
"xwoba": 0.32,
"recent_xwoba": 0.32,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26065568475452,
"ab_strikeout_rate": 0.22179487179487178,
"available": 0.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "675660",
"player_name": "Shane Drohan",
"quality": 0.1919232780148806,
"contact": 0.4132017880830157,
"command": 0.44114285714285695,
"movement": 0.6205216610722728,
"xwoba": 0.273,
"whiff": 29.0,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "MIL",
"original_runs": 2,
"run_delta": -0.0967,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": 0.19890546688334496,
"contact": 0.11888681060587557,
"power": 0.1313334677818546,
"discipline": 0.18003319956515143,
"xwoba": 0.31793939393939397,
"recent_xwoba": 0.31793939393939397,
"barrel": 8.03030303030303,
"ab_hard_contact": -0.19873901377127953,
"ab_bat_speed": 70.29275845851815,
"ab_strikeout_rate": 0.22929212822359105,
"available_players": 8,
"top_players": [
{
"player_id": "641343",
"player_name": "Jake Bauers",
"position": "RF",
"weight": 4.0,
"quality": 0.76076766377566,
"contact": 1.0207105668858918,
"power": 1.2692297043935308,
"discipline": 0.45455501003062,
"xwoba": 0.362,
"recent_xwoba": 0.362,
"barrel": 13.5,
"ab_hard_contact": 0.7350702783468104,
"ab_bat_speed": 75.74101632395383,
"ab_strikeout_rate": 0.22954545454545452,
"available": 1.0
},
{
"player_id": "668930",
"player_name": "Brice Turang",
"position": "2B",
"weight": 4.0,
"quality": 0.691391779118644,
"contact": 0.7647098314662188,
"power": 0.6881574210234596,
"discipline": 0.9167148825654924,
"xwoba": 0.363,
"recent_xwoba": 0.363,
"barrel": 9.4,
"ab_hard_contact": 0.8122912776120457,
"ab_bat_speed": 67.52860339506172,
"ab_strikeout_rate": 0.23067129629629632,
"available": 1.0
},
{
"player_id": "694192",
"player_name": "Jackson Chourio",
"position": "LF",
"weight": 5.0,
"quality": 0.35006896695864925,
"contact": 0.8945416110018637,
"power": 1.5238189425144344,
"discipline": -0.23743712940888795,
"xwoba": 0.358,
"recent_xwoba": 0.358,
"barrel": 15.3,
"ab_hard_contact": 0.7274264693363091,
"ab_bat_speed": 73.21261779448622,
"ab_strikeout_rate": 0.3078947368421052,
"available": 1.0
},
{
"player_id": "687401",
"player_name": "Joey Ortiz",
"position": "3B",
"weight": 3.0,
"quality": -0.23863757116434506,
"contact": -0.37713801493798593,
"power": -0.9786839578615053,
"discipline": 0.8115741487866007,
"xwoba": 0.297,
"recent_xwoba": 0.297,
"barrel": 3.3,
"ab_hard_contact": -0.9683458238967746,
"ab_bat_speed": 69.79511695906433,
"ab_strikeout_rate": 0.18552631578947368,
"available": 1.0
},
{
"player_id": "806198",
"player_name": "Cooper Pratt",
"position": "SS",
"weight": 4.0,
"quality": -0.0,
"contact": -1.3518285714285707,
"power": -1.5142666666666664,
"discipline": -1.2955,
"xwoba": 0.188,
"recent_xwoba": 0.188,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26065568475452,
"ab_strikeout_rate": 0.22179487179487178,
"available": 0.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "800048",
"player_name": "Parker Messick",
"quality": 0.3184570130039421,
"contact": 0.4455488393993651,
"command": 0.33200000000000013,
"movement": -0.03823186919812674,
"xwoba": 0.288,
"whiff": 27.1,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 1,
"home_runs": 2,
"predicted_score_text": "CLE 1 - 2 MIL",
"confidence": 0.566487,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": true,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "CLE 1 - 2 MIL",
"winner": "MIL"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "CLE 1 - 2 MIL",
"winner": "MIL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away CLE | True | 0.9910 | 0.9899 | 0.8889 | 8 | 1 |
| Home MIL | True | 1.0126 | 1.0126 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SS | Brayan Rocchio | 57 | 0.9872 | -0.1701 | neutral | 0.3110 | 0.2500 | 0.3560 | 3.10 | 32.50 | 86.70 | 12.10 | 23.50 | 13.60 | 8.70 | -0.4857 |
| 1B | Rhys Hoskins | 471 | 0.9868 | -0.1764 | neutral | 0.2950 | 0.1750 | 0.3120 | 11.10 | 41.70 | 88.60 | 24.10 | 30.30 | 29.80 | 16.60 | -0.4286 |
| LF | David Fry | 314 | 0.9682 | -0.4238 | negative_batter_regression | 0.2690 | 0.1910 | 0.2710 | 6.30 | 31.70 | 86.10 | 16.10 | 31 | 30.40 | 14.80 | -1.2857 |
| 2B | Travis Bazzana | 132 | 0.9919 | -0.1074 | neutral | 0.3090 | 0.2350 | 0.3520 | 3.30 | 35.50 | 88.60 | 13.10 | 25 | 19.20 | 12.10 | -0.6571 |
| DH | Kyle Manzardo | 236 | 1.0122 | 0.1627 | neutral | 0.3130 | 0.2260 | 0.3890 | 11.40 | 42.30 | 89.30 | 17.30 | 30.40 | 32.90 | 10.40 | -0.1714 |
| 3B | Gabriel Arias | 253 | 1.0159 | 0.2114 | neutral | 0.3050 | 0.2350 | 0.4230 | 15 | 55 | 95 | 5.50 | 42.40 | 38.90 | 5.60 | -0.2000 |
| CF | Stuart Fairchild | 292 | 0.9777 | -0.2974 | negative_batter_regression | 0.3200 | 0.1090 | 0.1870 | 0 | 50 | 96 | 14 | 66.70 | 47.60 | 28.60 | -1.2286 |
| C | Austin Hedges | 180 | 0.9794 | -0.2746 | neutral | 0.2860 | 0.2460 | 0.3200 | 2.40 | 30.50 | 86 | 6.40 | 22.80 | 16.40 | 9.10 | -0.8000 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LF | Jackson Chourio | 50 | 1.0357 | 0.4765 | negative_batter_regression | 0.3580 | 0.2670 | 0.5200 | 15.30 | 48.30 | 92.30 | 12.70 | 23 | 23.70 | 7.50 | -1.2571 |
| 1B | Andrew Vaughn | 134 | 1.0108 | 0.1434 | negative_batter_regression | 0.3480 | 0.2890 | 0.4070 | 3.40 | 42.50 | 89.30 | 9.60 | 18.60 | 10.70 | 9.80 | -2 |
| DH | Christian Yelich | 172 | 0.9914 | -0.1152 | negative_batter_regression | 0.2980 | 0.2310 | 0.3760 | 7.20 | 38.70 | 88.80 | 3.30 | 31.10 | 29.10 | 9.30 | -1.1714 |
| 2B | Brice Turang | 15 | 1.0688 | 0.9172 | neutral | 0.3630 | 0.2560 | 0.4590 | 9.40 | 45.30 | 90.80 | 7.70 | 21.10 | 24.70 | 15.80 | -0.2571 |
| C | Gary Sánchez | 210 | 1.0323 | 0.4306 | neutral | 0.3730 | 0.2350 | 0.4730 | 10.60 | 35.30 | 87.90 | 15.30 | 26.20 | 19.10 | 16.90 | 0.0857 |
| RF | Jake Bauers | 77 | 1.0650 | 0.8660 | neutral | 0.3620 | 0.2580 | 0.4750 | 13.50 | 54.80 | 92.60 | 9.30 | 24.80 | 23.20 | 12.80 | -0.5143 |
| CF | Blake Perkins | 307 | 0.9810 | -0.2535 | positive_batter_regression | 0.2680 | 0.1940 | 0.2960 | 5.40 | 35.70 | 86.50 | 13.40 | 23.40 | 23.30 | 10.50 | 1.4000 |
| SS | Cooper Pratt | 322 | 0.9409 | -0.7874 | negative_batter_regression | 0.1880 | 0.2020 | 0.2250 | 0 | 40 | 87.80 | -0.10 | 31.30 | 28.60 | 0 | -1.9143 |
| 3B | Joey Ortiz | 266 | 0.9873 | -0.1696 | positive_batter_regression | 0.2970 | 0.2310 | 0.3000 | 3.30 | 33.30 | 87.30 | 7.30 | 17.50 | 15.90 | 11.80 | 0.9714 |
{
"home": {
"applied": true,
"offense_factor": 1.0126,
"raw_average_factor": 1.0126,
"team_espn_average_rank": 172.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "LF",
"player_id": "694192",
"player_name": "Jackson Chourio",
"offense_factor": 1.0357,
"quality_score": 0.4765,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "694192",
"espn_id": 4917869,
"player_name": "Jackson Chourio",
"team": "MIL",
"role": "batter",
"espn_rank": 50,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 50,
"gp_value": 37.0,
"gp_rank": 324,
"ab_value": 159.0,
"ab_rank": 226,
"r_value": 28.0,
"r_rank": 139,
"h_value": 50.0,
"h_rank": 147,
"avg_value": 0.3144654,
"avg_rank": null,
"2b_value": 11.0,
"2b_rank": 110,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 28.0,
"rbi_rank": 131,
"tb_value": 91.0,
"tb_rank": 852,
"bb_value": 13.0,
"bb_rank": 237,
"so_value": 41.0,
"so_rank": 187,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3641618,
"obp_rank": "-",
"slg_value": 0.572327,
"slg_rank": "-",
"ops_value": 0.9364888,
"ops_rank": null,
"war_value": 2.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 87.0,
"k_percent": 23.7,
"bb_percent": 7.5,
"woba": 0.402,
"xwoba": 0.358,
"xba": 0.267,
"xslg": 0.52,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 15.3,
"hard_hit_percent": 48.3,
"exit_velocity_avg": 92.3,
"launch_angle_avg": 12.7,
"whiff_percent": 23.0,
"swing_percent": 46.5
},
"components": {
"expected_quality": 1.436,
"regression_edge": -1.2571,
"xwoba_edge": 1.5429,
"xba_edge": 0.8143,
"xslg_edge": 2.1143,
"barrel_edge": 1.8889,
"hard_hit_edge": 1.4,
"exit_velocity_edge": 1.4,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "683734",
"player_name": "Andrew Vaughn",
"offense_factor": 1.0108,
"quality_score": 0.1434,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "683734",
"espn_id": 42394,
"player_name": "Andrew Vaughn",
"team": "MIL",
"role": "batter",
"espn_rank": 134,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 134,
"gp_value": 34.0,
"gp_rank": 333,
"ab_value": 99.0,
"ab_rank": 321,
"r_value": 14.0,
"r_rank": 287,
"h_value": 35.0,
"h_rank": 232,
"avg_value": 0.3535353,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 19.0,
"rbi_rank": 216,
"tb_value": 53.0,
"tb_rank": 1404,
"bb_value": 11.0,
"bb_rank": 271,
"so_value": 12.0,
"so_rank": 426,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.4285714,
"obp_rank": "-",
"slg_value": 0.5353535,
"slg_rank": "-",
"ops_value": 0.9639249,
"ops_rank": null,
"war_value": 0.97,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 59.0,
"k_percent": 10.7,
"bb_percent": 9.8,
"woba": 0.421,
"xwoba": 0.348,
"xba": 0.289,
"xslg": 0.407,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 42.5,
"exit_velocity_avg": 89.3,
"launch_angle_avg": 9.6,
"whiff_percent": 18.6,
"swing_percent": 41.2
},
"components": {
"expected_quality": 0.6962,
"regression_edge": -2.0,
"xwoba_edge": 1.2571,
"xba_edge": 1.4429,
"xslg_edge": 0.5,
"barrel_edge": -0.7556,
"hard_hit_edge": 0.5714,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "592885",
"player_name": "Christian Yelich",
"offense_factor": 0.9914,
"quality_score": -0.1152,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "592885",
"espn_id": 31283,
"player_name": "Christian Yelich",
"team": "MIL",
"role": "batter",
"espn_rank": 172,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 172,
"gp_value": 41.0,
"gp_rank": 296,
"ab_value": 163.0,
"ab_rank": 220,
"r_value": 34.0,
"r_rank": 83,
"h_value": 45.0,
"h_rank": 177,
"avg_value": 0.2760736,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 24.0,
"rbi_rank": 173,
"tb_value": 70.0,
"tb_rank": 1061,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 53.0,
"so_rank": 120,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3461538,
"obp_rank": "-",
"slg_value": 0.4294478,
"slg_rank": "-",
"ops_value": 0.7756016,
"ops_rank": null,
"war_value": 0.69,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 94.0,
"k_percent": 29.1,
"bb_percent": 9.3,
"woba": 0.339,
"xwoba": 0.298,
"xba": 0.231,
"xslg": 0.376,
"sweet_spot_percent": 29.7,
"barrel_batted_rate": 7.2,
"hard_hit_percent": 38.7,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 3.3,
"whiff_percent": 31.1,
"swing_percent": 45.3
},
"components": {
"expected_quality": -0.1069,
"regression_edge": -1.1714,
"xwoba_edge": -0.1714,
"xba_edge": -0.2143,
"xslg_edge": 0.0571,
"barrel_edge": 0.0889,
"hard_hit_edge": 0.0286,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": -0.6,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "668930",
"player_name": "Brice Turang",
"offense_factor": 1.0688,
"quality_score": 0.9172,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668930",
"espn_id": 41179,
"player_name": "Brice Turang",
"team": "MIL",
"role": "batter",
"espn_rank": 15,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 15,
"gp_value": 67.0,
"gp_rank": 117,
"ab_value": 252.0,
"ab_rank": 89,
"r_value": 54.0,
"r_rank": 2,
"h_value": 67.0,
"h_rank": 66,
"avg_value": 0.265873,
"avg_rank": 56.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 44.0,
"rbi_rank": 23,
"tb_value": 119.0,
"tb_rank": 160,
"bb_value": 48.0,
"bb_rank": 8,
"so_value": 75.0,
"so_rank": 31,
"sb_value": 12.0,
"sb_rank": 21,
"obp_value": 0.3807947,
"obp_rank": "16",
"slg_value": 0.4722222,
"slg_rank": "42",
"ops_value": 0.8530169,
"ops_rank": 58.0,
"war_value": 2.94,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 216.0,
"k_percent": 24.7,
"bb_percent": 15.8,
"woba": 0.372,
"xwoba": 0.363,
"xba": 0.256,
"xslg": 0.459,
"sweet_spot_percent": 37.0,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 45.3,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 7.7,
"whiff_percent": 21.1,
"swing_percent": 40.8
},
"components": {
"expected_quality": 1.1281,
"regression_edge": -0.2571,
"xwoba_edge": 1.6857,
"xba_edge": 0.5,
"xslg_edge": 1.2429,
"barrel_edge": 0.5778,
"hard_hit_edge": 0.9714,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": 0.6167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "596142",
"player_name": "Gary Sánchez",
"offense_factor": 1.0323,
"quality_score": 0.4306,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "596142",
"espn_id": 31095,
"player_name": "Gary Sanchez",
"team": "MIL",
"role": "batter",
"espn_rank": 210,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 210,
"gp_value": 42.0,
"gp_rank": 290,
"ab_value": 111.0,
"ab_rank": 299,
"r_value": 21.0,
"r_rank": 203,
"h_value": 25.0,
"h_rank": 297,
"avg_value": 0.2252252,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 19.0,
"rbi_rank": 216,
"tb_value": 52.0,
"tb_rank": 1105,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 26.0,
"so_rank": 301,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.367647,
"obp_rank": "-",
"slg_value": 0.4684684,
"slg_rank": "-",
"ops_value": 0.8361154,
"ops_rank": null,
"war_value": 0.47,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 111.0,
"k_percent": 19.1,
"bb_percent": 16.9,
"woba": 0.37,
"xwoba": 0.373,
"xba": 0.235,
"xslg": 0.473,
"sweet_spot_percent": 27.1,
"barrel_batted_rate": 10.6,
"hard_hit_percent": 35.3,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 15.3,
"whiff_percent": 26.2,
"swing_percent": 36.1
},
"components": {
"expected_quality": 0.9785,
"regression_edge": 0.0857,
"xwoba_edge": 1.9714,
"xba_edge": -0.1,
"xslg_edge": 1.4429,
"barrel_edge": 0.8444,
"hard_hit_edge": -0.4571,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": -1.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "641343",
"player_name": "Jake Bauers",
"offense_factor": 1.065,
"quality_score": 0.866,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641343",
"espn_id": 35013,
"player_name": "Jake Bauers",
"team": "MIL",
"role": "batter",
"espn_rank": 77,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 77,
"gp_value": 62.0,
"gp_rank": 163,
"ab_value": 215.0,
"ab_rank": 133,
"r_value": 41.0,
"r_rank": 46,
"h_value": 58.0,
"h_rank": 107,
"avg_value": 0.2697674,
"avg_rank": 54.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 13.0,
"hr_rank": 39,
"rbi_value": 46.0,
"rbi_rank": 20,
"tb_value": 109.0,
"tb_rank": 692,
"bb_value": 32.0,
"bb_rank": 49,
"so_value": 58.0,
"so_rank": 91,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.372,
"obp_rank": "28",
"slg_value": 0.5069767,
"slg_rank": "24",
"ops_value": 0.8789767,
"ops_rank": 52.0,
"war_value": 1.58,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 174.0,
"k_percent": 23.2,
"bb_percent": 12.8,
"woba": 0.38,
"xwoba": 0.362,
"xba": 0.258,
"xslg": 0.475,
"sweet_spot_percent": 30.6,
"barrel_batted_rate": 13.5,
"hard_hit_percent": 54.8,
"exit_velocity_avg": 92.6,
"launch_angle_avg": 9.3,
"whiff_percent": 24.8,
"swing_percent": 41.0
},
"components": {
"expected_quality": 1.3569,
"regression_edge": -0.5143,
"xwoba_edge": 1.6571,
"xba_edge": 0.5571,
"xslg_edge": 1.4714,
"barrel_edge": 1.4889,
"hard_hit_edge": 2.3286,
"exit_velocity_edge": 1.52,
"sweet_spot_edge": -0.45,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "663368",
"player_name": "Blake Perkins",
"offense_factor": 0.981,
"quality_score": -0.2535,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "663368",
"espn_id": 36974,
"player_name": "Blake Perkins",
"team": "MIL",
"role": "batter",
"espn_rank": 307,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 307,
"gp_value": 43.0,
"gp_rank": 280,
"ab_value": 75.0,
"ab_rank": 371,
"r_value": 11.0,
"r_rank": 327,
"h_value": 10.0,
"h_rank": 412,
"avg_value": 0.1333333,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 11.0,
"rbi_rank": 306,
"tb_value": 17.0,
"tb_rank": 2202,
"bb_value": 9.0,
"bb_rank": 295,
"so_value": 20.0,
"so_rank": 352,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.2352941,
"obp_rank": "-",
"slg_value": 0.2266666,
"slg_rank": "-",
"ops_value": 0.4619607,
"ops_rank": null,
"war_value": 0.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 68.0,
"k_percent": 23.3,
"bb_percent": 10.5,
"woba": 0.219,
"xwoba": 0.268,
"xba": 0.194,
"xslg": 0.296,
"sweet_spot_percent": 21.4,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 35.7,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 13.4,
"whiff_percent": 23.4,
"swing_percent": 43.4
},
"components": {
"expected_quality": -0.883,
"regression_edge": 1.4,
"xwoba_edge": -1.0286,
"xba_edge": -1.2714,
"xslg_edge": -1.0857,
"barrel_edge": -0.3111,
"hard_hit_edge": -0.4,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": -1.9833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "806198",
"player_name": "Cooper Pratt",
"offense_factor": 0.9409,
"quality_score": -0.7874,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "806198",
"espn_id": 5149101,
"player_name": "Cooper Pratt",
"team": "MIL",
"role": "batter",
"espn_rank": 322,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 322,
"gp_value": 2.0,
"gp_rank": 548,
"ab_value": 7.0,
"ab_rank": 533,
"r_value": 1.0,
"r_rank": 503,
"h_value": 2.0,
"h_rank": 509,
"avg_value": 0.2857142,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 486,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 1.0,
"rbi_rank": 498,
"tb_value": 2.0,
"tb_rank": 2706,
"bb_value": 0.0,
"bb_rank": 521,
"so_value": 2.0,
"so_rank": 534,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2857142,
"obp_rank": "-",
"slg_value": 0.2857142,
"slg_rank": "-",
"ops_value": 0.5714284,
"ops_rank": null,
"war_value": 0.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 28.6,
"bb_percent": 0.0,
"woba": 0.255,
"xwoba": 0.188,
"xba": 0.202,
"xslg": 0.225,
"sweet_spot_percent": 20.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 40.0,
"exit_velocity_avg": 87.8,
"launch_angle_avg": -0.1,
"whiff_percent": 31.3,
"swing_percent": 53.3
},
"components": {
"expected_quality": -1.723,
"regression_edge": -1.9143,
"xwoba_edge": -2.5,
"xba_edge": -1.0429,
"xslg_edge": -2.1,
"barrel_edge": -1.5111,
"hard_hit_edge": 0.2143,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -2.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "687401",
"player_name": "Joey Ortiz",
"offense_factor": 0.9873,
"quality_score": -0.1696,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "687401",
"espn_id": 42958,
"player_name": "Joey Ortiz",
"team": "MIL",
"role": "batter",
"espn_rank": 266,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 266,
"gp_value": 61.0,
"gp_rank": 168,
"ab_value": 145.0,
"ab_rank": 247,
"r_value": 18.0,
"r_rank": 232,
"h_value": 30.0,
"h_rank": 265,
"avg_value": 0.2068965,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 14.0,
"rbi_rank": 266,
"tb_value": 38.0,
"tb_rank": 2007,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 27.0,
"so_rank": 293,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.2994011,
"obp_rank": "-",
"slg_value": 0.2620689,
"slg_rank": "-",
"ops_value": 0.56147,
"ops_rank": null,
"war_value": 0.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 127.0,
"k_percent": 15.9,
"bb_percent": 11.8,
"woba": 0.263,
"xwoba": 0.297,
"xba": 0.231,
"xslg": 0.3,
"sweet_spot_percent": 22.0,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 87.3,
"launch_angle_avg": 7.3,
"whiff_percent": 17.5,
"swing_percent": 43.2
},
"components": {
"expected_quality": -0.4998,
"regression_edge": 0.9714,
"xwoba_edge": -0.2,
"xba_edge": -0.2143,
"xslg_edge": -1.0286,
"barrel_edge": -0.7778,
"hard_hit_edge": -0.7429,
"exit_velocity_edge": -0.6,
"sweet_spot_edge": -1.8833,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 0.991,
"raw_average_factor": 0.9899,
"team_espn_average_rank": 241.88,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "SS",
"player_id": "677587",
"player_name": "Brayan Rocchio",
"offense_factor": 0.9872,
"quality_score": -0.1701,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677587",
"espn_id": 41217,
"player_name": "Brayan Rocchio",
"team": "CLE",
"role": "batter",
"espn_rank": 57,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 57,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 230.0,
"ab_rank": 121,
"r_value": 29.0,
"r_rank": 128,
"h_value": 61.0,
"h_rank": 93,
"avg_value": 0.2652173,
"avg_rank": 58.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 32.0,
"rbi_rank": 96,
"tb_value": 89.0,
"tb_rank": 833,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 36.0,
"so_rank": 226,
"sb_value": 12.0,
"sb_rank": 21,
"obp_value": 0.3460076,
"obp_rank": "61",
"slg_value": 0.3869565,
"slg_rank": "115",
"ops_value": 0.7329641,
"ops_rank": 176.0,
"war_value": 1.89,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 197.0,
"k_percent": 13.6,
"bb_percent": 8.7,
"woba": 0.328,
"xwoba": 0.311,
"xba": 0.25,
"xslg": 0.356,
"sweet_spot_percent": 31.7,
"barrel_batted_rate": 3.1,
"hard_hit_percent": 32.5,
"exit_velocity_avg": 86.7,
"launch_angle_avg": 12.1,
"whiff_percent": 23.5,
"swing_percent": 48.5
},
"components": {
"expected_quality": -0.1419,
"regression_edge": -0.4857,
"xwoba_edge": 0.2,
"xba_edge": 0.3286,
"xslg_edge": -0.2286,
"barrel_edge": -0.8222,
"hard_hit_edge": -0.8571,
"exit_velocity_edge": -0.84,
"sweet_spot_edge": -0.2667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "656555",
"player_name": "Rhys Hoskins",
"offense_factor": 0.9868,
"quality_score": -0.1764,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656555",
"espn_id": 35291,
"player_name": "Rhys Hoskins",
"team": "CLE",
"role": "batter",
"espn_rank": 471,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 471,
"gp_value": 58.0,
"gp_rank": 185,
"ab_value": 165.0,
"ab_rank": 213,
"r_value": 24.0,
"r_rank": 172,
"h_value": 30.0,
"h_rank": 265,
"avg_value": 0.1818181,
"avg_rank": null,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 24.0,
"rbi_rank": 173,
"tb_value": 60.0,
"tb_rank": 1201,
"bb_value": 34.0,
"bb_rank": 40,
"so_value": 61.0,
"so_rank": 78,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3219512,
"obp_rank": "-",
"slg_value": 0.3636363,
"slg_rank": "-",
"ops_value": 0.6855875,
"ops_rank": null,
"war_value": -0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 149.0,
"k_percent": 29.8,
"bb_percent": 16.6,
"woba": 0.31,
"xwoba": 0.295,
"xba": 0.175,
"xslg": 0.312,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 11.1,
"hard_hit_percent": 41.7,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 24.1,
"whiff_percent": 30.3,
"swing_percent": 40.8
},
"components": {
"expected_quality": -0.2331,
"regression_edge": -0.4286,
"xwoba_edge": -0.2571,
"xba_edge": -1.8143,
"xslg_edge": -0.8571,
"barrel_edge": 0.9556,
"hard_hit_edge": 0.4571,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": 0.1667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "681807",
"player_name": "David Fry",
"offense_factor": 0.9682,
"quality_score": -0.4238,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "681807",
"espn_id": 41672,
"player_name": "David Fry",
"team": "CLE",
"role": "batter",
"espn_rank": 314,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 314,
"gp_value": 45.0,
"gp_rank": 266,
"ab_value": 98.0,
"ab_rank": 325,
"r_value": 13.0,
"r_rank": 302,
"h_value": 22.0,
"h_rank": 320,
"avg_value": 0.2244897,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 8.0,
"rbi_rank": 346,
"tb_value": 35.0,
"tb_rank": 1744,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 35.0,
"so_rank": 235,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3391304,
"obp_rank": "-",
"slg_value": 0.3571428,
"slg_rank": "-",
"ops_value": 0.6962732,
"ops_rank": null,
"war_value": 0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 84.0,
"k_percent": 30.4,
"bb_percent": 14.8,
"woba": 0.314,
"xwoba": 0.269,
"xba": 0.191,
"xslg": 0.271,
"sweet_spot_percent": 31.7,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 31.7,
"exit_velocity_avg": 86.1,
"launch_angle_avg": 16.1,
"whiff_percent": 31.0,
"swing_percent": 42.2
},
"components": {
"expected_quality": -0.8858,
"regression_edge": -1.2857,
"xwoba_edge": -1.0,
"xba_edge": -1.3571,
"xslg_edge": -1.4429,
"barrel_edge": -0.1111,
"hard_hit_edge": -0.9714,
"exit_velocity_edge": -1.08,
"sweet_spot_edge": -0.2667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "683953",
"player_name": "Travis Bazzana",
"offense_factor": 0.9919,
"quality_score": -0.1074,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683953",
"espn_id": 5007707,
"player_name": "Travis Bazzana",
"team": "CLE",
"role": "batter",
"espn_rank": 132,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 132,
"gp_value": 43.0,
"gp_rank": 280,
"ab_value": 157.0,
"ab_rank": 231,
"r_value": 17.0,
"r_rank": 240,
"h_value": 39.0,
"h_rank": 210,
"avg_value": 0.2484076,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 17.0,
"rbi_rank": 244,
"tb_value": 63.0,
"tb_rank": 1088,
"bb_value": 22.0,
"bb_rank": 123,
"so_value": 35.0,
"so_rank": 235,
"sb_value": 11.0,
"sb_rank": 28,
"obp_value": 0.3461538,
"obp_rank": "-",
"slg_value": 0.4012738,
"slg_rank": "-",
"ops_value": 0.7474276,
"ops_rank": null,
"war_value": 0.99,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 19.2,
"bb_percent": 12.1,
"woba": 0.332,
"xwoba": 0.309,
"xba": 0.235,
"xslg": 0.352,
"sweet_spot_percent": 29.3,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 35.5,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 13.1,
"whiff_percent": 25.0,
"swing_percent": 44.2
},
"components": {
"expected_quality": -0.1451,
"regression_edge": -0.6571,
"xwoba_edge": 0.1429,
"xba_edge": -0.1,
"xslg_edge": -0.2857,
"barrel_edge": -0.7778,
"hard_hit_edge": -0.4286,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": -0.6667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "700932",
"player_name": "Kyle Manzardo",
"offense_factor": 1.0122,
"quality_score": 0.1627,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "700932",
"espn_id": 4917927,
"player_name": "Kyle Manzardo",
"team": "CLE",
"role": "batter",
"espn_rank": 236,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 236,
"gp_value": 64.0,
"gp_rank": 146,
"ab_value": 195.0,
"ab_rank": 166,
"r_value": 24.0,
"r_rank": 172,
"h_value": 46.0,
"h_rank": 171,
"avg_value": 0.2358974,
"avg_rank": 115.0,
"2b_value": 7.0,
"2b_rank": 206,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 22.0,
"rbi_rank": 190,
"tb_value": 76.0,
"tb_rank": 878,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 73.0,
"so_rank": 38,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3243243,
"obp_rank": "95",
"slg_value": 0.3897435,
"slg_rank": "113",
"ops_value": 0.7140678,
"ops_rank": 208.0,
"war_value": 0.36,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 165.0,
"k_percent": 32.9,
"bb_percent": 10.4,
"woba": 0.319,
"xwoba": 0.313,
"xba": 0.226,
"xslg": 0.389,
"sweet_spot_percent": 34.1,
"barrel_batted_rate": 11.4,
"hard_hit_percent": 42.3,
"exit_velocity_avg": 89.3,
"launch_angle_avg": 17.3,
"whiff_percent": 30.4,
"swing_percent": 46.4
},
"components": {
"expected_quality": 0.2802,
"regression_edge": -0.1714,
"xwoba_edge": 0.2571,
"xba_edge": -0.3571,
"xslg_edge": 0.2429,
"barrel_edge": 1.0222,
"hard_hit_edge": 0.5429,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": 0.1333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "672356",
"player_name": "Gabriel Arias",
"offense_factor": 1.0159,
"quality_score": 0.2114,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672356",
"espn_id": 40344,
"player_name": "Gabriel Arias",
"team": "CLE",
"role": "batter",
"espn_rank": 253,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 253,
"gp_value": 11.0,
"gp_rank": 480,
"ab_value": 34.0,
"ab_rank": 453,
"r_value": 2.0,
"r_rank": 476,
"h_value": 8.0,
"h_rank": 437,
"avg_value": 0.2352941,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 5.0,
"rbi_rank": 401,
"tb_value": 15.0,
"tb_rank": 2158,
"bb_value": 2.0,
"bb_rank": 442,
"so_value": 14.0,
"so_rank": 407,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.2777777,
"obp_rank": "-",
"slg_value": 0.4411764,
"slg_rank": "-",
"ops_value": 0.7189541,
"ops_rank": null,
"war_value": 0.27,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 31.0,
"k_percent": 38.9,
"bb_percent": 5.6,
"woba": 0.312,
"xwoba": 0.305,
"xba": 0.235,
"xslg": 0.423,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 15.0,
"hard_hit_percent": 55.0,
"exit_velocity_avg": 95.0,
"launch_angle_avg": 5.5,
"whiff_percent": 42.4,
"swing_percent": 45.5
},
"components": {
"expected_quality": 0.5788,
"regression_edge": -0.2,
"xwoba_edge": 0.0286,
"xba_edge": -0.1,
"xslg_edge": 0.7286,
"barrel_edge": 1.8222,
"hard_hit_edge": 2.3571,
"exit_velocity_edge": 2.48,
"sweet_spot_edge": -0.55,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "656413",
"player_name": "Stuart Fairchild",
"offense_factor": 0.9777,
"quality_score": -0.2974,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "656413",
"espn_id": 40346,
"player_name": "Stuart Fairchild",
"team": "CLE",
"role": "batter",
"espn_rank": 292,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 292,
"gp_value": 9.0,
"gp_rank": 492,
"ab_value": 14.0,
"ab_rank": 512,
"r_value": 3.0,
"r_rank": 447,
"h_value": 3.0,
"h_rank": 501,
"avg_value": 0.2142857,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 486,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 1.0,
"rbi_rank": 498,
"tb_value": 3.0,
"tb_rank": 2698,
"bb_value": 6.0,
"bb_rank": 359,
"so_value": 10.0,
"so_rank": 445,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.4761904,
"obp_rank": "-",
"slg_value": 0.2142857,
"slg_rank": "-",
"ops_value": 0.6904761,
"ops_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 47.6,
"bb_percent": 28.6,
"woba": 0.363,
"xwoba": 0.32,
"xba": 0.109,
"xslg": 0.187,
"sweet_spot_percent": 0.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 96.0,
"launch_angle_avg": 14.0,
"whiff_percent": 66.7,
"swing_percent": 42.4
},
"components": {
"expected_quality": -0.5686,
"regression_edge": -1.2286,
"xwoba_edge": 0.4571,
"xba_edge": -2.5,
"xslg_edge": -2.5,
"barrel_edge": -1.5111,
"hard_hit_edge": 1.6429,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": -2.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "595978",
"player_name": "Austin Hedges",
"offense_factor": 0.9794,
"quality_score": -0.2746,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "595978",
"espn_id": 32168,
"player_name": "Austin Hedges",
"team": "CLE",
"role": "batter",
"espn_rank": 180,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 180,
"gp_value": 34.0,
"gp_rank": 333,
"ab_value": 96.0,
"ab_rank": 331,
"r_value": 12.0,
"r_rank": 310,
"h_value": 26.0,
"h_rank": 288,
"avg_value": 0.2708333,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 235,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 9.0,
"rbi_rank": 334,
"tb_value": 35.0,
"tb_rank": 2006,
"bb_value": 10.0,
"bb_rank": 282,
"so_value": 18.0,
"so_rank": 370,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3364485,
"obp_rank": "-",
"slg_value": 0.3645833,
"slg_rank": "-",
"ops_value": 0.7010318,
"ops_rank": null,
"war_value": 0.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 80.0,
"k_percent": 16.4,
"bb_percent": 9.1,
"woba": 0.314,
"xwoba": 0.286,
"xba": 0.246,
"xslg": 0.32,
"sweet_spot_percent": 28.0,
"barrel_batted_rate": 2.4,
"hard_hit_percent": 30.5,
"exit_velocity_avg": 86.0,
"launch_angle_avg": 6.4,
"whiff_percent": 22.8,
"swing_percent": 45.1
},
"components": {
"expected_quality": -0.5794,
"regression_edge": -0.8,
"xwoba_edge": -0.5143,
"xba_edge": 0.2143,
"xslg_edge": -0.7429,
"barrel_edge": -0.9778,
"hard_hit_edge": -1.1429,
"exit_velocity_edge": -1.12,
"sweet_spot_edge": -0.8833,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away CLE | True | 13 | 0.3882 | 0.9960 | 0.9670 | 1.0256 | 0.9721 | 0.9312 | neutral | 0.2880 | 0.2800 | 25.60 | 7.80 | 27.10 | 6.10 | 34 | |
| Home MIL | True | 230 | 0.2127 | 0.4520 | 0.9819 | 1.0147 | 0.9729 | 0.9958 | neutral | 0.2730 | 0.2850 | 24.90 | 6.20 | 29 | 9 | 37.70 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away CLE | True | None | 92 | 88.82 | 2084 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0508 | |
| Home MIL | True | None | 35 | 90.60 | 2516 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0486 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 0.9918 |
| home_runs_vs_away_pitcher | 0.9671 |
| home_pitcher_quality_edge | -0.1755 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "675660",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 113.0,
"k_percent": 24.9,
"bb_percent": 6.2,
"woba": 0.285,
"xwoba": 0.273,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.19,
"avg_hyper_speed": 93.7911,
"whiff_percent": 29.0,
"swing_percent": 50.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5542,
"command_and_miss": 0.4693,
"regression_edge": 0.3429,
"xwoba_edge": 1.2,
"barrel_edge": -0.3778,
"hard_hit_edge": 0.0857,
"whiff_edge": 0.4714,
"bb_edge": 0.75,
"pitch_design_score": 0.0486
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "675660",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 35,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 35,
"pitch_usage": 0.0,
"release_speed": 90.59743564984379,
"release_spin_rate": 2516.0834298625896,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 35,
"pitch_usage": 0.0,
"release_speed": 90.59743564984379,
"release_spin_rate": 2516.0834298625896,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.5974,
"release_spin_rate": 2516.0834,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0486,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.3474,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.2127,
"sample_weight": 0.452,
"run_prevention_factor": 0.9819,
"strikeout_factor": 1.0147,
"walk_factor": 0.9729,
"homer_factor": 0.9958,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "675660",
"espn_id": 4315203,
"player_name": "Shane Drohan",
"team": "MIL",
"role": "pitcher",
"espn_rank": 230,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 230,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 1.0,
"qs_rank": 134,
"era_value": 3.5859,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 2.0,
"hld_rank": 165,
"ip_value": 42.2,
"ip_rank": 151,
"h_value": 39.0,
"h_rank": 152,
"er_value": 17.0,
"er_rank": 186,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 44.0,
"k_rank": 138,
"k_per_9_value": 9.28125,
"k_per_9_rank": 24,
"whip_value": 1.1718,
"whip_rank": null,
"war_value": 0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "800048",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 249.0,
"k_percent": 25.6,
"bb_percent": 7.8,
"woba": 0.28,
"xwoba": 0.288,
"sweet_spot_percent": 34.9,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 34.0,
"avg_best_speed": 76.1561,
"avg_hyper_speed": 93.5265,
"whiff_percent": 27.1,
"swing_percent": 48.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5865,
"command_and_miss": 0.3393,
"regression_edge": -0.2286,
"xwoba_edge": 0.7714,
"barrel_edge": 0.2667,
"hard_hit_edge": 0.6143,
"whiff_edge": 0.2,
"bb_edge": 0.35,
"pitch_design_score": -0.0508
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "800048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 92,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 92,
"pitch_usage": 0.0,
"release_speed": 88.82188152318957,
"release_spin_rate": 2083.526076207552,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 92,
"pitch_usage": 0.0,
"release_speed": 88.82188152318957,
"release_spin_rate": 2083.526076207552,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8219,
"release_spin_rate": 2083.5261,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0508,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3628,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.3882,
"sample_weight": 0.996,
"run_prevention_factor": 0.967,
"strikeout_factor": 1.0256,
"walk_factor": 0.9721,
"homer_factor": 0.9312,
"woba_minus_xwoba": -0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "800048",
"espn_id": 4619898,
"player_name": "Parker Messick",
"team": "CLE",
"role": "pitcher",
"espn_rank": 13,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 13,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 2.6776,
"era_rank": 10.0,
"w_value": 6.0,
"w_rank": 23,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 80.2,
"ip_rank": 37,
"h_value": 63.0,
"h_rank": 88,
"er_value": 24.0,
"er_rank": 118,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 25.0,
"bb_rank": 54,
"k_value": 82.0,
"k_rank": 25,
"k_per_9_value": 9.14876,
"k_per_9_rank": 18,
"whip_value": 1.0909,
"whip_rank": 18.0,
"war_value": 2.5,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 0.9918,
"home_runs_vs_away_pitcher": 0.9671,
"home_pitcher_quality_edge": -0.1755
},
"score_before": {
"away_runs": 1.0,
"home_runs": 1.0
},
"score_after": {
"away_runs": 0.9918,
"home_runs": 0.9671,
"home_win_probability": 0.4947
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away CLE | 15-50 | 0.231 | 0.90 | 2.80 | -126 | cold | strong | |
| Home MIL | 21-40 | 0.344 | 1.60 | 2.70 | -64 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away CLE | 39-35 | 0.527 | -9 | -0.122 | True |
| Home MIL | 45-26 | 0.634 | 118 | 1.662 | True |
| Signal | - | - | 1.784 | 1.944 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target CLE | - | - | 1 | - | - | - | - |
| Game target MIL | - | - | 2 | - | - | - | - |
| Player finalized CLE | 29 | 9 | 1 | 0 | 0 | 2 | 10 |
| Player finalized MIL | 33 | 9 | 6 | 0 | 7 | 2 | 8 |
| Player model fractional CLE | 28.67 | 6.20 | 3.14 | 0.80 | 2.98 | 3.67 | 9.01 |
| Player model fractional MIL | 31.42 | 7.99 | 5.49 | 1.40 | 5.16 | 3.42 | 7.46 |
| Simulation box CLE | 31 | 4 | 1 | 0 | 1 | 3 | 11 |
| Simulation box MIL | 27 | 3 | 2 | 1 | 2 | 2 | 9 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away CLE | Starter | Parker Messick | 6 | 2 | 8 | 2 | 1 | 3.57 | 1.26 | True |
| Away CLE | Middle Reliever | Cade Smith | 1.20 | 0 | 0 | 0 | 1 | 2.95 | 1.09 | True |
| Away CLE | Middle Reliever | Hunter Gaddis | 0.10 | 0 | 1 | 1 | 0 | 3.97 | 1.25 | True |
| Home MIL | Starter | Shane Drohan | 5 | 1 | 5 | 4 | 3 | 4.23 | 1.17 | True |
| Home MIL | Middle Reliever | Aaron Ashby | 1.10 | 0 | 0 | 0 | 0 | 4.40 | 1.31 | True |
| Home MIL | Middle Reliever | Abner Uribe | 1 | 0 | 2 | 0 | 0 | 3.59 | 1.30 | True |
| Home MIL | Middle Reliever | Trevor Megill | 1 | 0 | 2 | 0 | 0 | 3.64 | 1.24 | True |
| Home MIL | Middle Reliever | Grant Anderson | 0.20 | 0 | 2 | 0 | 0 | 3.36 | 1.04 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | MIL | batter | SS | Cooper Pratt | worse | 8 | 1 | 7 | 0 | 8 | predicted_SO | 2.0000 | boost | worse |
| home | MIL | batter | 2B | Brice Turang | worse | 11 | 4 | 7 | 3 | 8 | predicted_SO | 1.9090 | boost | worse |
| away | CLE | batter | DH | Kyle Manzardo | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 1.8410 | boost | worse |
| home | MIL | batter | RF | Jake Bauers | better | 10 | 7 | 3 | 8 | 2 | predicted_AB | -1.6400 | deboost | worse |
| away | CLE | batter | LF | David Fry | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | 1.5000 | boost | better |
| away | CLE | batter | CF | Stuart Fairchild | worse | 9 | 1 | 8 | 2 | 7 | predicted_AB | 1.5000 | boost | better |
| home | MIL | batter | C | Gary Sánchez | worse | 11 | 5 | 6 | 4 | 7 | predicted_SO | 1.3500 | boost | worse |
| home | MIL | batter | LF | Jackson Chourio | worse | 10 | 2 | 8 | 3 | 7 | predicted_H | -1.2400 | deboost | worse |
| away | CLE | batter | RF | Kahlil Watson | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | -1.2110 | deboost | worse |
| away | CLE | batter | 2B | Travis Bazzana | worse | 11 | 1 | 10 | 0 | 11 | predicted_SO | 1.1860 | boost | worse |
| away | CLE | batter | SS | Brayan Rocchio | worse | 11 | 3 | 8 | 4 | 7 | predicted_2B | 0.8710 | boost | better |
| away | CLE | batter | 3B | Gabriel Arias | worse | 11 | 2 | 9 | 3 | 8 | predicted_AB | 0.8500 | boost | better |
| home | MIL | batter | 1B | Andrew Vaughn | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_2B | 0.6880 | boost | better |
| home | MIL | batter | CF | Blake Perkins | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -0.6670 | deboost | better |
| away | CLE | batter | 1B | Rhys Hoskins | worse | 11 | 3 | 8 | 4 | 7 | predicted_H | -0.6600 | deboost | worse |
| away | CLE | batter | C | Austin Hedges | worse | 10 | 4 | 6 | 3 | 7 | predicted_RBI | 0.6500 | boost | better |
| home | MIL | batter | 3B | Joey Ortiz | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | -0.5900 | deboost | worse |
| home | MIL | batter | DH | Christian Yelich | worse | 9 | 2 | 7 | 3 | 6 | predicted_RBI | -0.5500 | deboost | worse |
| home | MIL | pitcher | Middle Reliever | Grant Anderson | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | MIL | pitcher | Middle Reliever | Aaron Ashby | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | CLE | pitcher | Middle Reliever | Cade Smith | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Parker Messick |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.3882 |
| ESPN Rank | 13 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0508 |
| Avg Velo | 88.8219 |
| Avg Spin | 2083.5261 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 2 |
| Pre H | 2 |
| Pre BB | 1 |
| Pre SO | 8 |
| Season ERA | 2.6777 |
| Season WHIP | 1.0909 |
| Role Avg IP | 5.7620 |
| Recent Avg IP | 5.4000 |
| Last Start IP | 5.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"opponent": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"edges": {
"quality_edge": -0.4011,
"offense_edge": -0.0805,
"opponent_offense_edge": 0.1608,
"defense_strength": 0.0718,
"opponent_defense_weakness": -0.2135,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9797,
"run_prevention": 1.0386,
"strikeout": 0.9751
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "800048",
"profile": {
"available": true,
"pitcher_id": "800048",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 249.0,
"k_percent": 25.6,
"bb_percent": 7.8,
"woba": 0.28,
"xwoba": 0.288,
"sweet_spot_percent": 34.9,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 34.0,
"avg_best_speed": 76.1561,
"avg_hyper_speed": 93.5265,
"whiff_percent": 27.1,
"swing_percent": 48.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5865,
"command_and_miss": 0.3393,
"regression_edge": -0.2286,
"xwoba_edge": 0.7714,
"barrel_edge": 0.2667,
"hard_hit_edge": 0.6143,
"whiff_edge": 0.2,
"bb_edge": 0.35,
"pitch_design_score": -0.0508
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "800048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 92,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 92,
"pitch_usage": 0.0,
"release_speed": 88.82188152318957,
"release_spin_rate": 2083.526076207552,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 92,
"pitch_usage": 0.0,
"release_speed": 88.82188152318957,
"release_spin_rate": 2083.526076207552,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8219,
"release_spin_rate": 2083.5261,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0508,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3628,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.3882,
"sample_weight": 0.996,
"run_prevention_factor": 0.967,
"strikeout_factor": 1.0256,
"walk_factor": 0.9721,
"homer_factor": 0.9312,
"woba_minus_xwoba": -0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "800048",
"espn_id": 4619898,
"player_name": "Parker Messick",
"team": "CLE",
"role": "pitcher",
"espn_rank": 13,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 13,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 2.6776,
"era_rank": 10.0,
"w_value": 6.0,
"w_rank": 23,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 80.2,
"ip_rank": 37,
"h_value": 63.0,
"h_rank": 88,
"er_value": 24.0,
"er_rank": 118,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 25.0,
"bb_rank": 54,
"k_value": 82.0,
"k_rank": 25,
"k_per_9_value": 9.14876,
"k_per_9_rank": 18,
"whip_value": 1.0909,
"whip_rank": 18.0,
"war_value": 2.5,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 0.9671,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 0.9671,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9722,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 0.9315,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0255,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 55.0,
"ER": 21,
"H": 50,
"BB": 18,
"SO": 57,
"HR": 7,
"ERA": 3.4363636363636365,
"WHIP": 1.2363636363636363,
"K9": 9.327272727272728,
"HR9": 1.1454545454545455,
"games_pitched": 10,
"quality_starts": 1,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-10T00:00:00"
}{
"available": true,
"pitcher_id": "800048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 92,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 92,
"pitch_usage": 0.0,
"release_speed": 88.82188152318957,
"release_spin_rate": 2083.526076207552,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 92,
"pitch_usage": 0.0,
"release_speed": 88.82188152318957,
"release_spin_rate": 2083.526076207552,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8219,
"release_spin_rate": 2083.5261,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0508,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3628,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "800048",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 27.0,
"ER": 10.0,
"R": 12.0,
"H": 24.0,
"BB": 11.0,
"SO": 24.0,
"HR": 3.0,
"BF": 115.0,
"Pitches": 450.0
},
"per_game": {
"IP": 5.1,
"ER": 2.0,
"R": 2.4,
"H": 4.8,
"BB": 2.2,
"SO": 4.8,
"HR": 0.6,
"BF": 23.0,
"Pitches": 90.0
},
"rates": {
"ERA": 3.3333,
"WHIP": 1.2963,
"ER_per_IP": 0.37037,
"H_per_IP": 0.88889,
"BB_per_IP": 0.40741,
"SO_per_IP": 0.88889,
"HR_per_IP": 0.11111
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.0,
"ER": 21.0,
"R": 23.0,
"H": 50.0,
"BB": 18.0,
"SO": 57.0,
"HR": 7.0,
"BF": 227.0,
"Pitches": 907.0
},
"per_game": {
"IP": 5.1,
"ER": 2.1,
"R": 2.3,
"H": 5.0,
"BB": 1.8,
"SO": 5.7,
"HR": 0.7,
"BF": 22.7,
"Pitches": 90.7
},
"rates": {
"ERA": 3.4364,
"WHIP": 1.2364,
"ER_per_IP": 0.38182,
"H_per_IP": 0.90909,
"BB_per_IP": 0.32727,
"SO_per_IP": 1.03636,
"HR_per_IP": 0.12727
}
},
"season": {
"games": 14,
"totals": {
"IP": 80.2,
"ER": 24.0,
"R": 26.0,
"H": 63.0,
"BB": 25.0,
"SO": 82.0,
"HR": 8.0,
"BF": 320.0,
"Pitches": 1270.0
},
"per_game": {
"IP": 5.2,
"ER": 1.7143,
"R": 1.8571,
"H": 4.5,
"BB": 1.7857,
"SO": 5.8571,
"HR": 0.5714,
"BF": 22.8571,
"Pitches": 90.7143
},
"rates": {
"ERA": 2.6777,
"WHIP": 1.0909,
"ER_per_IP": 0.29752,
"H_per_IP": 0.78099,
"BB_per_IP": 0.30992,
"SO_per_IP": 1.01653,
"HR_per_IP": 0.09917
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.206,
"predicted_H": 5.005,
"predicted_BB": 2.005,
"predicted_SO": 5.328,
"predicted_HR": 0.682,
"predicted_ERA": 3.5725,
"predicted_WHIP": 1.2614
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 6.0,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 2.206,
"final": 2.111,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 5.005,
"final": 3.6191,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.005,
"final": 1.5415,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 8.0,
"form": 5.328,
"final": 6.5603,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.682,
"final": 0.8287,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5725,
"final": 3.5725,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2614,
"final": 1.2614,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Cade Smith |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4413 |
| ESPN Rank | 107 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1442 |
| Avg Velo | 92.3032 |
| Avg Spin | 1832.1074 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 2.4796 |
| Season WHIP | 1.0408 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"opponent": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"edges": {
"quality_edge": -0.4011,
"offense_edge": -0.0805,
"opponent_offense_edge": 0.1608,
"defense_strength": 0.0718,
"opponent_defense_weakness": -0.2135,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9797,
"run_prevention": 1.0386,
"strikeout": 0.9751
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "671922",
"profile": {
"available": true,
"pitcher_id": "671922",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 102.0,
"k_percent": 38.0,
"bb_percent": 4.7,
"woba": 0.255,
"xwoba": 0.239,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 44.4,
"avg_best_speed": 82.4931,
"avg_hyper_speed": 95.0214,
"whiff_percent": 35.4,
"swing_percent": 50.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8568,
"command_and_miss": 1.7064,
"regression_edge": 0.4571,
"xwoba_edge": 2.1714,
"barrel_edge": -0.2222,
"hard_hit_edge": -0.8714,
"whiff_edge": 1.3857,
"bb_edge": 1.125,
"pitch_design_score": 0.1442
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "671922",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 23,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 92.3032049686205,
"release_spin_rate": 1832.107424086915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 92.3032049686205,
"release_spin_rate": 1832.107424086915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.3032,
"release_spin_rate": 1832.1074,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1442,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.0297,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.4413,
"sample_weight": 0.45,
"run_prevention_factor": 0.9625,
"strikeout_factor": 1.0648,
"walk_factor": 0.9595,
"homer_factor": 0.9944,
"woba_minus_xwoba": 0.016,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671922",
"espn_id": 4987924,
"player_name": "Cade Smith",
"team": "CLE",
"role": "pitcher",
"espn_rank": 107,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 107,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.4795,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 23.0,
"sv_rank": 1,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 32.2,
"ip_rank": 213,
"h_value": 28.0,
"h_rank": 233,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 6.0,
"bb_rank": 436,
"k_value": 49.0,
"k_rank": 119,
"k_per_9_value": 13.5,
"k_per_9_rank": 15,
"whip_value": 1.0408,
"whip_rank": null,
"war_value": 0.91,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9831,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9831,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9818,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9975,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0292,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 11.0,
"ER": 2,
"H": 9,
"BB": 1,
"SO": 18,
"HR": 0,
"ERA": 1.6363636363636365,
"WHIP": 0.9090909090909091,
"K9": 14.727272727272727,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "671922",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 23,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 92.3032049686205,
"release_spin_rate": 1832.107424086915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 92.3032049686205,
"release_spin_rate": 1832.107424086915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.3032,
"release_spin_rate": 1832.1074,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1442,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.0297,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.487,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5647,
"prior_weight": 0.4353
},
"role": "pitcher",
"player_id": "671922",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.0,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 1.0,
"SO": 10.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 90.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.2,
"SO": 2.0,
"HR": 0.0,
"BF": 4.4,
"Pitches": 18.0
},
"rates": {
"ERA": 1.5,
"WHIP": 0.8333,
"ER_per_IP": 0.16667,
"H_per_IP": 0.66667,
"BB_per_IP": 0.16667,
"SO_per_IP": 1.66667,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.0,
"ER": 2.0,
"R": 3.0,
"H": 9.0,
"BB": 1.0,
"SO": 18.0,
"HR": 0.0,
"BF": 42.0,
"Pitches": 169.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.9,
"BB": 0.1,
"SO": 1.8,
"HR": 0.0,
"BF": 4.2,
"Pitches": 16.9
},
"rates": {
"ERA": 1.6364,
"WHIP": 0.9091,
"ER_per_IP": 0.18182,
"H_per_IP": 0.81818,
"BB_per_IP": 0.09091,
"SO_per_IP": 1.63636,
"HR_per_IP": 0.0
}
},
"season": {
"games": 31,
"totals": {
"IP": 32.2,
"ER": 9.0,
"R": 11.0,
"H": 28.0,
"BB": 6.0,
"SO": 49.0,
"HR": 1.0,
"BF": 129.0,
"Pitches": 557.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2903,
"R": 0.3548,
"H": 0.9032,
"BB": 0.1935,
"SO": 1.5806,
"HR": 0.0323,
"BF": 4.1613,
"Pitches": 17.9677
},
"rates": {
"ERA": 2.4796,
"WHIP": 1.0408,
"ER_per_IP": 0.27551,
"H_per_IP": 0.85714,
"BB_per_IP": 0.18367,
"SO_per_IP": 1.5,
"HR_per_IP": 0.03061
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.355,
"predicted_H": 0.924,
"predicted_BB": 0.259,
"predicted_SO": 1.437,
"predicted_HR": 0.073,
"predicted_ERA": 2.9471,
"predicted_WHIP": 1.0911
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5339,
"form_weight": 0.4661,
"form_reliability": 0.5647,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.487,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5647,
"prior_weight": 0.4353
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.355,
"final": 0.1655,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.924,
"final": 0.4307,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.259,
"final": 0.6546,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.437,
"final": 0.6698,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.073,
"final": 0.034,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.9471,
"final": 2.9471,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0911,
"final": 1.0911,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Hunter Gaddis |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0487 |
| ESPN Rank | 296 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 3.6610 |
| Season WHIP | 1.2712 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"opponent": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"edges": {
"quality_edge": -0.4011,
"offense_edge": -0.0805,
"opponent_offense_edge": 0.1608,
"defense_strength": 0.0718,
"opponent_defense_weakness": -0.2135,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9797,
"run_prevention": 1.0386,
"strikeout": 0.9751
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "683769",
"profile": {
"available": true,
"pitcher_id": "683769",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 61.0,
"k_percent": 15.7,
"bb_percent": 7.9,
"woba": 0.324,
"xwoba": 0.331,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 7.5,
"hard_hit_percent": 29.9,
"avg_best_speed": 76.6863,
"avg_hyper_speed": 92.575,
"whiff_percent": 27.4,
"swing_percent": 48.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.0241,
"command_and_miss": -0.2871,
"regression_edge": -0.2,
"xwoba_edge": -0.4571,
"barrel_edge": -0.0444,
"hard_hit_edge": 1.2,
"whiff_edge": 0.2429,
"bb_edge": 0.325,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "683769",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.0487,
"sample_weight": 0.45,
"run_prevention_factor": 1.0041,
"strikeout_factor": 0.9869,
"walk_factor": 0.9883,
"homer_factor": 0.9862,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683769",
"espn_id": 4187661,
"player_name": "Hunter Gaddis",
"team": "CLE",
"role": "pitcher",
"espn_rank": 296,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 296,
"gp_value": 23.0,
"gp_rank": 147,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.1186,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 11.0,
"hld_rank": 12,
"ip_value": 19.2,
"ip_rank": 386,
"h_value": 22.0,
"h_rank": 299,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 14.0,
"k_rank": 423,
"k_per_9_value": 6.40678,
"k_per_9_rank": 29,
"whip_value": 1.4745,
"whip_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0018,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0018,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9947,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9938,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9941,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 2,
"H": 8,
"BB": 2,
"SO": 6,
"HR": 1,
"ERA": 1.9285714285714288,
"WHIP": 1.0714285714285716,
"K9": 5.7857142857142865,
"HR9": 0.9642857142857144,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "683769",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.905,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4385,
"prior_weight": 0.5615
},
"role": "pitcher",
"player_id": "683769",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 18.0,
"Pitches": 81.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.2,
"SO": 0.0,
"HR": 0.2,
"BF": 3.6,
"Pitches": 16.2
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.1538,
"ER_per_IP": 0.46154,
"H_per_IP": 0.92308,
"BB_per_IP": 0.23077,
"SO_per_IP": 0.0,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 2.0,
"R": 2.0,
"H": 8.0,
"BB": 2.0,
"SO": 6.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 160.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.2,
"SO": 0.6,
"HR": 0.1,
"BF": 3.9,
"Pitches": 16.0
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.0714,
"ER_per_IP": 0.21429,
"H_per_IP": 0.85714,
"BB_per_IP": 0.21429,
"SO_per_IP": 0.64286,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 22,
"totals": {
"IP": 19.2,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 5.0,
"SO": 14.0,
"HR": 3.0,
"BF": 85.0,
"Pitches": 329.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3636,
"R": 0.3636,
"H": 0.9091,
"BB": 0.2273,
"SO": 0.6364,
"HR": 0.1364,
"BF": 3.8636,
"Pitches": 14.9545
},
"rates": {
"ERA": 3.661,
"WHIP": 1.2712,
"ER_per_IP": 0.40678,
"H_per_IP": 1.01695,
"BB_per_IP": 0.25424,
"SO_per_IP": 0.71186,
"HR_per_IP": 0.15254
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.276,
"predicted_H": 0.594,
"predicted_BB": 0.191,
"predicted_SO": 0.43,
"predicted_HR": 0.098,
"predicted_ERA": 3.9681,
"predicted_WHIP": 1.2544
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5872,
"form_weight": 0.4128,
"form_reliability": 0.4385,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.905,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4385,
"prior_weight": 0.5615
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.276,
"final": 0.1139,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.594,
"final": 0.8324,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.191,
"final": 0.0788,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.43,
"final": 0.7647,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.098,
"final": 0.0405,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9681,
"final": 3.9681,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2544,
"final": 1.2544,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.129 | 1.000 | 0.000 | Hitting_2B | 0.142 | 0.000 | 0.858 | 1.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 3.570 | 4.000 | 4.000 | Hitting_AB | 3.347 | 3.000 | 0.653 | 1.000 |
| predicted_AVG | 0.229 | 0.250 | 0.250 | Hitting_AVG | 0.291 | 0.000 | -0.041 | 0.250 |
| predicted_BB | 0.300 | 0.000 | 0.000 | Hitting_BB | 0.329 | 1.000 | -0.329 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.055 | 0.000 | -0.055 | 0.000 |
| predicted_H | 0.820 | 1.000 | 1.000 | Hitting_H | 0.973 | 0.000 | 0.027 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.068 | 0.000 | -0.068 | 0.000 |
| predicted_OBP | 0.289 | 0.250 | 0.250 | Hitting_OBP | 0.368 | 0.250 | -0.118 | 0.000 |
| predicted_R | 0.414 | 0.000 | 0.000 | Hitting_R | 0.452 | 1.000 | -0.452 | -1.000 |
| predicted_RBI | 0.470 | 0.000 | 0.000 | Hitting_RBI | 0.498 | 0.000 | -0.498 | 0.000 |
| predicted_SLG | 0.357 | 0.500 | 0.250 | Hitting_SLG | 0.408 | 0.000 | 0.092 | 0.500 |
| predicted_SO | 0.514 | 0.000 | 1.000 | Hitting_SO | 0.447 | 2.000 | -0.447 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_2B: 0.1290 -> 1.0000 (boost 0.8710, better) |
| Biggest Deboost | predicted_SO: 0.5140 -> 0.0000 (deboost -0.5140, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 1 | 4 | 0 | 5 | predicted_SO: 0.5140 -> 0.6026 (boost 0.0886, worse) | predicted_AB: 3.5700 -> 3.4672 (deboost -0.1028, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2848 -> 0.2697 (deboost -0.0151, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_AB: 3.4672 -> 4.0000 (boost 0.5328, better) | predicted_RBI: 0.4167 -> 0.0000 (deboost -0.4167, worse) | AB rounded to 4 (raw=3.57), rates preserved: AVG=0.203 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3501 -> 0.0000 (deboost -0.3501, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2090 -> 0.2500 (boost 0.0410, better) | predicted_SLG: 0.3349 -> 0.2500 (deboost -0.0849, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3349 (boost 0.0849, better) | predicted_AVG: 0.2500 -> 0.2090 (deboost -0.0410, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677587",
"player_name": "Brayan Rocchio",
"position": "SS",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.129,
"predicted_3B": 0.029,
"predicted_AB": 3.57,
"predicted_AVG": 0.229,
"predicted_BB": 0.3,
"predicted_H": 0.82,
"predicted_HR": 0.09,
"predicted_OBP": 0.289,
"predicted_R": 0.414,
"predicted_RBI": 0.47,
"predicted_SLG": 0.357,
"predicted_SO": 0.514
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1114,
"predicted_3B": 0.047,
"predicted_AB": 3.4672,
"predicted_AVG": 0.22,
"predicted_BB": 0.2924,
"predicted_H": 0.7654,
"predicted_HBP": 0.076,
"predicted_HR": 0.0812,
"predicted_OBP": 0.2848,
"predicted_R": 0.385,
"predicted_RBI": 0.4582,
"predicted_SLG": 0.3496,
"predicted_SO": 0.6026
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.129,
"after": 0.1114,
"delta": -0.0176,
"percent_delta": -0.1364,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.047,
"delta": 0.018,
"percent_delta": 0.6207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.57,
"after": 3.4672,
"delta": -0.1028,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.22,
"delta": -0.009,
"percent_delta": -0.0393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.2924,
"delta": -0.0076,
"percent_delta": -0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 0.7654,
"delta": -0.0546,
"percent_delta": -0.0666,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0812,
"delta": -0.0088,
"percent_delta": -0.0978,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.289,
"after": 0.2848,
"delta": -0.0042,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.414,
"after": 0.385,
"delta": -0.029,
"percent_delta": -0.07,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.4582,
"delta": -0.0118,
"percent_delta": -0.0251,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3496,
"delta": -0.0074,
"percent_delta": -0.0207,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.514,
"after": 0.6026,
"delta": 0.0886,
"percent_delta": 0.1724,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.514,
"after": 0.6026,
"delta": 0.0886,
"percent_delta": 0.1724,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.57,
"after": 3.4672,
"delta": -0.1028,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1114,
"predicted_3B": 0.047,
"predicted_AB": 3.4672,
"predicted_AVG": 0.209,
"predicted_BB": 0.2879,
"predicted_H": 0.7247,
"predicted_HBP": 0.076,
"predicted_HR": 0.0771,
"predicted_OBP": 0.2697,
"predicted_R": 0.3501,
"predicted_RBI": 0.4167,
"predicted_SLG": 0.3349,
"predicted_SO": 0.6118
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1114,
"after": 0.1114,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.047,
"after": 0.047,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4672,
"after": 3.4672,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.209,
"delta": -0.011,
"percent_delta": -0.05,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2924,
"after": 0.2879,
"delta": -0.0045,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7654,
"after": 0.7247,
"delta": -0.0407,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.076,
"after": 0.076,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0812,
"after": 0.0771,
"delta": -0.0041,
"percent_delta": -0.0505,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2848,
"after": 0.2697,
"delta": -0.0151,
"percent_delta": -0.053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.385,
"after": 0.3501,
"delta": -0.0349,
"percent_delta": -0.0906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4582,
"after": 0.4167,
"delta": -0.0415,
"percent_delta": -0.0906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3496,
"after": 0.3349,
"delta": -0.0147,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6026,
"after": 0.6118,
"delta": 0.0092,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2848,
"after": 0.2697,
"delta": -0.0151,
"percent_delta": -0.053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.57), rates preserved: AVG=0.203 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1114,
"after": 0.0,
"delta": -0.1114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.047,
"after": 0.0,
"delta": -0.047,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4672,
"after": 4.0,
"delta": 0.5328,
"percent_delta": 0.1537,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2879,
"after": 0.0,
"delta": -0.2879,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7247,
"after": 1.0,
"delta": 0.2753,
"percent_delta": 0.3799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.076,
"after": 0.0,
"delta": -0.076,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0771,
"after": 0.0,
"delta": -0.0771,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4167,
"after": 0.0,
"delta": -0.4167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6118,
"after": 1.0,
"delta": 0.3882,
"percent_delta": 0.6345,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.4672,
"after": 4.0,
"delta": 0.5328,
"percent_delta": 0.1537,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4167,
"after": 0.0,
"delta": -0.4167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3501,
"after": 0.0,
"delta": -0.3501,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3501,
"after": 0.0,
"delta": -0.3501,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.209,
"after": 0.25,
"delta": 0.041,
"percent_delta": 0.1962,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2697,
"after": 0.25,
"delta": -0.0197,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3349,
"after": 0.25,
"delta": -0.0849,
"percent_delta": -0.2535,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.209,
"after": 0.25,
"delta": 0.041,
"percent_delta": 0.1962,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3349,
"after": 0.25,
"delta": -0.0849,
"percent_delta": -0.2535,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.209,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2697,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3349,
"predicted_SO": 0.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.209,
"delta": -0.041,
"percent_delta": -0.164,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2697,
"delta": 0.0197,
"percent_delta": 0.0786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3349,
"delta": 0.0849,
"percent_delta": 0.3397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3349,
"delta": 0.0849,
"percent_delta": 0.3397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.209,
"delta": -0.041,
"percent_delta": -0.164,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.129,
"after": 1.0,
"delta": 0.871,
"percent_delta": 6.7519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.57,
"after": 4.0,
"delta": 0.43,
"percent_delta": 0.1204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.209,
"delta": -0.02,
"percent_delta": -0.0873,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 1.0,
"delta": 0.18,
"percent_delta": 0.2195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.289,
"after": 0.2697,
"delta": -0.0193,
"percent_delta": -0.0668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.414,
"after": 0.0,
"delta": -0.414,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3349,
"delta": -0.0221,
"percent_delta": -0.0619,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.514,
"after": 0.0,
"delta": -0.514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.129,
"after": 1.0,
"delta": 0.871,
"percent_delta": 6.7519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.514,
"after": 0.0,
"delta": -0.514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.570 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.300 | - |
| predicted_H | 0.820 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.289 | - |
| predicted_R | 0.414 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.357 | - |
| predicted_SO | 0.514 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | -0.018 |
| predicted_3B | 0.047 | 0.018 |
| predicted_AB | 3.467 | -0.103 |
| predicted_AVG | 0.220 | -0.009 |
| predicted_BB | 0.292 | -0.008 |
| predicted_H | 0.765 | -0.055 |
| predicted_HBP | 0.076 | - |
| predicted_HR | 0.081 | -0.009 |
| predicted_OBP | 0.285 | -0.004 |
| predicted_R | 0.385 | -0.029 |
| predicted_RBI | 0.458 | -0.012 |
| predicted_SLG | 0.350 | -0.007 |
| predicted_SO | 0.603 | 0.089 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | 0.000 |
| predicted_3B | 0.047 | 0.000 |
| predicted_AB | 3.467 | 0.000 |
| predicted_AVG | 0.209 | -0.011 |
| predicted_BB | 0.288 | -0.005 |
| predicted_H | 0.725 | -0.041 |
| predicted_HBP | 0.076 | 0.000 |
| predicted_HR | 0.077 | -0.004 |
| predicted_OBP | 0.270 | -0.015 |
| predicted_R | 0.350 | -0.035 |
| predicted_RBI | 0.417 | -0.041 |
| predicted_SLG | 0.335 | -0.015 |
| predicted_SO | 0.612 | 0.009 |
AB rounded to 4 (raw=3.57), rates preserved: AVG=0.203 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.111 |
| predicted_3B | 0.000 | -0.047 |
| predicted_AB | 4.000 | 0.533 |
| predicted_AVG | 0.250 | 0.041 |
| predicted_BB | 0.000 | -0.288 |
| predicted_H | 1.000 | 0.275 |
| predicted_HR | 0.000 | -0.077 |
| predicted_OBP | 0.250 | -0.020 |
| predicted_R | 0.000 | -0.350 |
| predicted_RBI | 0.000 | -0.417 |
| predicted_SLG | 0.250 | -0.085 |
| predicted_SO | 1.000 | 0.388 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 1.000 | 0.000 | 1.000 | 0.000 | 2.000 | 1.000 | 1.000 | 6.000 | 0.0625 | 0.1111 | 0.1875 | 0.0625 | 0.0000 | 0.1250 | 0.0625 | 0.3750 |
| last_10 | 0.20 | 10 | - | 33.000 | 5.000 | 0.000 | 1.000 | 1.000 | 4.000 | 2.000 | 3.000 | 8.000 | 0.1515 | 0.2368 | 0.3030 | 0.1515 | 0.0303 | 0.1212 | 0.0909 | 0.2424 |
| season | 0.60 | 70 | - | 229.000 | 61.000 | 9.000 | 2.000 | 5.000 | 32.000 | 29.000 | 21.000 | 36.000 | 0.2664 | 0.3423 | 0.3886 | 0.2664 | 0.0218 | 0.1397 | 0.0917 | 0.1572 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0870 |
| predicted_3B | 0.0720 |
| predicted_AB | 3.3250 |
| predicted_AVG | 0.2076 |
| predicted_BB | 0.2820 |
| predicted_H | 0.6900 |
| predicted_HBP | 0.0760 |
| predicted_HR | 0.0690 |
| predicted_OBP | 0.2789 |
| predicted_R | 0.3450 |
| predicted_RBI | 0.4420 |
| predicted_SLG | 0.3394 |
| predicted_SO | 0.7250 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1290 | 0.0870 | 0.1114 | model_form_blend |
| predicted_3B | 0.0290 | 0.0720 | 0.0470 | model_form_blend |
| predicted_AB | 3.5700 | 3.3250 | 3.4672 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2076 | 0.2200 | model_form_blend |
| predicted_BB | 0.3000 | 0.2820 | 0.2924 | model_form_blend |
| predicted_H | 0.8200 | 0.6900 | 0.7654 | model_form_blend |
| predicted_HBP | - | 0.0760 | 0.0760 | form_only |
| predicted_HR | 0.0900 | 0.0690 | 0.0812 | model_form_blend |
| predicted_OBP | 0.2890 | 0.2789 | 0.2848 | model_form_blend |
| predicted_R | 0.4140 | 0.3450 | 0.3850 | model_form_blend |
| predicted_RBI | 0.4700 | 0.4420 | 0.4582 | model_form_blend |
| predicted_SLG | 0.3570 | 0.3394 | 0.3496 | model_form_blend |
| predicted_SO | 0.5140 | 0.7250 | 0.6026 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 219 |
| Season rows before report date | 219 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.266 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 677587 |
| playerID | 677587 |
| playerName | Brayan Rocchio |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.6 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.328 |
| sl_xwoba | 0.311 |
| sl_xba | 0.25 |
| sl_xslg | 0.356 |
| sl_sweet_spot_percent | 31.7 |
| sl_barrel_batted_rate | 3.1 |
| sl_hard_hit_percent | 32.5 |
| sl_exit_velocity_avg | 86.7 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 48.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.222 | 0.000 | 0.000 | Hitting_2B | 0.240 | 0.000 | -0.240 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.056 | 3.000 | 3.000 | Hitting_AB | 3.072 | 4.000 | -0.072 | -1.000 |
| predicted_AVG | 0.219 | 0.000 | 0.333 | Hitting_AVG | 0.199 | 0.000 | -0.199 | 0.000 |
| predicted_BB | 0.574 | 1.000 | 0.000 | Hitting_BB | 0.671 | 0.000 | 0.329 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.660 | 0.000 | 1.000 | Hitting_H | 0.611 | 0.000 | -0.611 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.138 | 0.000 | -0.138 | 0.000 |
| predicted_OBP | 0.280 | 0.250 | 0.333 | Hitting_OBP | 0.340 | 0.000 | -0.090 | 0.250 |
| predicted_R | 0.444 | 0.000 | 0.000 | Hitting_R | 0.521 | 0.000 | -0.521 | 0.000 |
| predicted_RBI | 0.360 | 0.000 | 0.000 | Hitting_RBI | 0.515 | 0.000 | -0.515 | 0.000 |
| predicted_SLG | 0.345 | 0.000 | 0.333 | Hitting_SLG | 0.411 | 0.000 | -0.411 | 0.000 |
| predicted_SO | 1.130 | 1.000 | 1.000 | Hitting_SO | 1.084 | 3.000 | -0.084 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.5740 -> 1.0000 (boost 0.4260, better) |
| Biggest Deboost | predicted_H: 0.6600 -> 0.0000 (deboost -0.6600, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 1 | 4 | 1 | 4 | predicted_AB: 3.0560 -> 3.1986 (boost 0.1426, better) | predicted_BB: 0.5740 -> 0.5167 (deboost -0.0573, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2739 -> 0.2971 (boost 0.0232, better) | predicted_AVG: 0.1987 -> 0.1852 (deboost -0.0135, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.5925 -> 1.0000 (boost 0.4075, better) | predicted_BB: 0.5088 -> 0.0000 (deboost -0.5088, worse) | AB rounded to 3 (raw=3.20), rates preserved: AVG=0.185 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3794 -> 0.0000 (deboost -0.3794, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1852 -> 0.3330 (boost 0.1478, better) | predicted_SLG: 0.3511 -> 0.3330 (deboost -0.0181, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3511 (boost 0.0181, better) | predicted_AVG: 0.3330 -> 0.1852 (deboost -0.1478, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656555",
"player_name": "Rhys Hoskins",
"position": "1B",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.222,
"predicted_3B": 0.0,
"predicted_AB": 3.056,
"predicted_AVG": 0.219,
"predicted_BB": 0.574,
"predicted_H": 0.66,
"predicted_HR": 0.11,
"predicted_OBP": 0.28,
"predicted_R": 0.444,
"predicted_RBI": 0.36,
"predicted_SLG": 0.345,
"predicted_SO": 1.13
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2311,
"predicted_3B": 0.0008,
"predicted_AB": 3.1986,
"predicted_AVG": 0.1987,
"predicted_BB": 0.5167,
"predicted_H": 0.6258,
"predicted_HBP": 0.042,
"predicted_HR": 0.1046,
"predicted_OBP": 0.2739,
"predicted_R": 0.4172,
"predicted_RBI": 0.3584,
"predicted_SLG": 0.3378,
"predicted_SO": 1.1704
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.222,
"after": 0.2311,
"delta": 0.0091,
"percent_delta": 0.041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.056,
"after": 3.1986,
"delta": 0.1426,
"percent_delta": 0.0467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.1987,
"delta": -0.0203,
"percent_delta": -0.0927,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.574,
"after": 0.5167,
"delta": -0.0573,
"percent_delta": -0.0998,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.6258,
"delta": -0.0342,
"percent_delta": -0.0518,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1046,
"delta": -0.0054,
"percent_delta": -0.0491,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.28,
"after": 0.2739,
"delta": -0.0061,
"percent_delta": -0.0218,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.444,
"after": 0.4172,
"delta": -0.0268,
"percent_delta": -0.0604,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.3584,
"delta": -0.0016,
"percent_delta": -0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.345,
"after": 0.3378,
"delta": -0.0072,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.13,
"after": 1.1704,
"delta": 0.0404,
"percent_delta": 0.0358,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.056,
"after": 3.1986,
"delta": 0.1426,
"percent_delta": 0.0467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.574,
"after": 0.5167,
"delta": -0.0573,
"percent_delta": -0.0998,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 54
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2311,
"predicted_3B": 0.0008,
"predicted_AB": 3.1986,
"predicted_AVG": 0.1852,
"predicted_BB": 0.5088,
"predicted_H": 0.5925,
"predicted_HBP": 0.042,
"predicted_HR": 0.0993,
"predicted_OBP": 0.2971,
"predicted_R": 0.3794,
"predicted_RBI": 0.3259,
"predicted_SLG": 0.3511,
"predicted_SO": 1.1883
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2311,
"after": 0.2311,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1986,
"after": 3.1986,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1987,
"after": 0.1852,
"delta": -0.0135,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5167,
"after": 0.5088,
"delta": -0.0079,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6258,
"after": 0.5925,
"delta": -0.0333,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.042,
"after": 0.042,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1046,
"after": 0.0993,
"delta": -0.0053,
"percent_delta": -0.0507,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2739,
"after": 0.2971,
"delta": 0.0232,
"percent_delta": 0.0847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4172,
"after": 0.3794,
"delta": -0.0378,
"percent_delta": -0.0906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3584,
"after": 0.3259,
"delta": -0.0325,
"percent_delta": -0.0907,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3378,
"after": 0.3511,
"delta": 0.0133,
"percent_delta": 0.0394,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1704,
"after": 1.1883,
"delta": 0.0179,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2739,
"after": 0.2971,
"delta": 0.0232,
"percent_delta": 0.0847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.1987,
"after": 0.1852,
"delta": -0.0135,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.20), rates preserved: AVG=0.185 HR/AB=0.031",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2311,
"after": 0.0,
"delta": -0.2311,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1986,
"after": 3.0,
"delta": -0.1986,
"percent_delta": -0.0621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5088,
"after": 0.0,
"delta": -0.5088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5925,
"after": 1.0,
"delta": 0.4075,
"percent_delta": 0.6878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0993,
"after": 0.0,
"delta": -0.0993,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3259,
"after": 0.0,
"delta": -0.3259,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1883,
"after": 1.0,
"delta": -0.1883,
"percent_delta": -0.1585,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5925,
"after": 1.0,
"delta": 0.4075,
"percent_delta": 0.6878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.5088,
"after": 0.0,
"delta": -0.5088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3794,
"after": 0.0,
"delta": -0.3794,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3794,
"after": 0.0,
"delta": -0.3794,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1852,
"after": 0.333,
"delta": 0.1478,
"percent_delta": 0.7981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2971,
"after": 0.333,
"delta": 0.0359,
"percent_delta": 0.1208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3511,
"after": 0.333,
"delta": -0.0181,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1852,
"after": 0.333,
"delta": 0.1478,
"percent_delta": 0.7981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3511,
"after": 0.333,
"delta": -0.0181,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1852,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2971,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3511,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1852,
"delta": -0.1478,
"percent_delta": -0.4437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2971,
"delta": -0.0359,
"percent_delta": -0.1079,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3511,
"delta": 0.0181,
"percent_delta": 0.0543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3511,
"delta": 0.0181,
"percent_delta": 0.0543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1852,
"delta": -0.1478,
"percent_delta": -0.4437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.056,
"after": 3.0,
"delta": -0.056,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.1852,
"delta": -0.0338,
"percent_delta": -0.1543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.574,
"after": 1.0,
"delta": 0.426,
"percent_delta": 0.7422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.28,
"after": 0.2971,
"delta": 0.0171,
"percent_delta": 0.0611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.444,
"after": 0.0,
"delta": -0.444,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.345,
"after": 0.3511,
"delta": 0.0061,
"percent_delta": 0.0177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.13,
"after": 1.0,
"delta": -0.13,
"percent_delta": -0.115,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.574,
"after": 1.0,
"delta": 0.426,
"percent_delta": 0.7422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.222 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.056 | - |
| predicted_AVG | 0.219 | - |
| predicted_BB | 0.574 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.280 | - |
| predicted_R | 0.444 | - |
| predicted_RBI | 0.360 | - |
| predicted_SLG | 0.345 | - |
| predicted_SO | 1.130 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.231 | 0.009 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.199 | 0.143 |
| predicted_AVG | 0.199 | -0.020 |
| predicted_BB | 0.517 | -0.057 |
| predicted_H | 0.626 | -0.034 |
| predicted_HBP | 0.042 | - |
| predicted_HR | 0.105 | -0.005 |
| predicted_OBP | 0.274 | -0.006 |
| predicted_R | 0.417 | -0.027 |
| predicted_RBI | 0.358 | -0.002 |
| predicted_SLG | 0.338 | -0.007 |
| predicted_SO | 1.170 | 0.040 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.231 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.199 | 0.000 |
| predicted_AVG | 0.185 | -0.013 |
| predicted_BB | 0.509 | -0.008 |
| predicted_H | 0.593 | -0.033 |
| predicted_HBP | 0.042 | 0.000 |
| predicted_HR | 0.099 | -0.005 |
| predicted_OBP | 0.297 | 0.023 |
| predicted_R | 0.379 | -0.038 |
| predicted_RBI | 0.326 | -0.032 |
| predicted_SLG | 0.351 | 0.013 |
| predicted_SO | 1.188 | 0.018 |
AB rounded to 3 (raw=3.20), rates preserved: AVG=0.185 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.231 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.199 |
| predicted_AVG | 0.333 | 0.148 |
| predicted_BB | 0.000 | -0.509 |
| predicted_H | 1.000 | 0.407 |
| predicted_HR | 0.000 | -0.099 |
| predicted_OBP | 0.333 | 0.036 |
| predicted_R | 0.000 | -0.379 |
| predicted_RBI | 0.000 | -0.326 |
| predicted_SLG | 0.333 | -0.018 |
| predicted_SO | 1.000 | -0.188 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 2.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 8.000 | 0.1000 | 0.1000 | 0.2000 | 0.1000 | 0.0000 | 0.0000 | 0.0000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 35.000 | 5.000 | 2.000 | 0.000 | 1.000 | 3.000 | 2.000 | 4.000 | 14.000 | 0.1429 | 0.2500 | 0.2857 | 0.1429 | 0.0286 | 0.0857 | 0.1143 | 0.4000 |
| season | 0.60 | 54 | - | 165.000 | 30.000 | 12.000 | 0.000 | 6.000 | 23.000 | 24.000 | 31.000 | 61.000 | 0.1818 | 0.3134 | 0.3636 | 0.1818 | 0.0364 | 0.1394 | 0.1879 | 0.3697 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2440 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.4020 |
| predicted_AVG | 0.1697 |
| predicted_BB | 0.4350 |
| predicted_H | 0.5770 |
| predicted_HBP | 0.0420 |
| predicted_HR | 0.0970 |
| predicted_OBP | 0.2652 |
| predicted_R | 0.3790 |
| predicted_RBI | 0.3560 |
| predicted_SLG | 0.3276 |
| predicted_SO | 1.2280 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2220 | 0.2440 | 0.2311 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.0560 | 3.4020 | 3.1986 | model_form_blend |
| predicted_AVG | 0.2190 | 0.1697 | 0.1987 | model_form_blend |
| predicted_BB | 0.5740 | 0.4350 | 0.5167 | model_form_blend |
| predicted_H | 0.6600 | 0.5770 | 0.6258 | model_form_blend |
| predicted_HBP | - | 0.0420 | 0.0420 | form_only |
| predicted_HR | 0.1100 | 0.0970 | 0.1046 | model_form_blend |
| predicted_OBP | 0.2800 | 0.2652 | 0.2739 | model_form_blend |
| predicted_R | 0.4440 | 0.3790 | 0.4172 | model_form_blend |
| predicted_RBI | 0.3600 | 0.3560 | 0.3584 | model_form_blend |
| predicted_SLG | 0.3450 | 0.3276 | 0.3378 | model_form_blend |
| predicted_SO | 1.1300 | 1.2280 | 1.1704 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 167 |
| Season rows before report date | 167 |
| Report year | 2026 |
| Profile rows used | 54 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.182 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 656555 |
| playerID | 656555 |
| playerName | Rhys Hoskins |
| pos | 1B |
| started | True |
| startingPosition | DH |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.8 |
| sl_bb_percent | 16.6 |
| sl_woba | 0.31 |
| sl_xwoba | 0.295 |
| sl_xba | 0.175 |
| sl_xslg | 0.312 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 11.1 |
| sl_hard_hit_percent | 41.7 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 24.1 |
| sl_whiff_percent | 30.3 |
| sl_swing_percent | 40.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.103 | 0.000 | 0.000 | Hitting_2B | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 4.000 | 3.000 | Hitting_AB | 2.758 | 4.000 | 1.242 | 0.000 |
| predicted_AVG | 0.250 | 0.000 | 0.333 | Hitting_AVG | 0.253 | 0.000 | -0.253 | 0.000 |
| predicted_BB | 0.361 | 0.000 | 0.000 | Hitting_BB | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.610 | 0.000 | 1.000 | Hitting_H | 0.697 | 0.000 | -0.697 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.101 | 0.000 | -0.101 | 0.000 |
| predicted_OBP | 0.298 | 0.000 | 0.333 | Hitting_OBP | 0.350 | 0.000 | -0.350 | 0.000 |
| predicted_R | 0.309 | 0.000 | 0.000 | Hitting_R | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_RBI | 0.260 | 0.000 | 0.000 | Hitting_RBI | 0.283 | 0.000 | -0.283 | 0.000 |
| predicted_SLG | 0.339 | 0.000 | 0.333 | Hitting_SLG | 0.403 | 0.000 | -0.403 | 0.000 |
| predicted_SO | 0.902 | 1.000 | 1.000 | Hitting_SO | 1.010 | 0.000 | -0.010 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 2.5000 -> 4.0000 (boost 1.5000, better) |
| Biggest Deboost | predicted_H: 0.6100 -> 0.0000 (deboost -0.6100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AB: 2.5000 -> 2.5989 (boost 0.0989, better) | predicted_AVG: 0.2500 -> 0.2301 (deboost -0.0199, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2958 -> 0.3075 (boost 0.0117, better) | predicted_AVG: 0.2301 -> 0.2135 (deboost -0.0166, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_H: 0.5548 -> 1.0000 (boost 0.4452, better) | predicted_BB: 0.3528 -> 0.0000 (deboost -0.3528, worse) | AB rounded to 3 (raw=2.60), rates preserved: AVG=0.213 HR/AB=0.026 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2620 -> 0.0000 (deboost -0.2620, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2135 -> 0.3330 (boost 0.1195, better) | predicted_SLG: 0.3401 -> 0.3330 (deboost -0.0071, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3401 (boost 0.0071, better) | predicted_AVG: 0.3330 -> 0.2135 (deboost -0.1195, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681807",
"player_name": "David Fry",
"position": "LF",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.103,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.25,
"predicted_BB": 0.361,
"predicted_H": 0.61,
"predicted_HR": 0.08,
"predicted_OBP": 0.298,
"predicted_R": 0.309,
"predicted_RBI": 0.26,
"predicted_SLG": 0.339,
"predicted_SO": 0.902
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.122,
"predicted_3B": 0.0008,
"predicted_AB": 2.5989,
"predicted_AVG": 0.2301,
"predicted_BB": 0.3583,
"predicted_H": 0.586,
"predicted_HBP": 0.005,
"predicted_HR": 0.0722,
"predicted_OBP": 0.2958,
"predicted_R": 0.2881,
"predicted_RBI": 0.2305,
"predicted_SLG": 0.3321,
"predicted_SO": 0.9132
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.103,
"after": 0.122,
"delta": 0.019,
"percent_delta": 0.1845,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.5989,
"delta": 0.0989,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2301,
"delta": -0.0199,
"percent_delta": -0.0796,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.361,
"after": 0.3583,
"delta": -0.0027,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 0.586,
"delta": -0.024,
"percent_delta": -0.0393,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0722,
"delta": -0.0078,
"percent_delta": -0.0975,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.2958,
"delta": -0.0022,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.309,
"after": 0.2881,
"delta": -0.0209,
"percent_delta": -0.0676,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.2305,
"delta": -0.0295,
"percent_delta": -0.1135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3321,
"delta": -0.0069,
"percent_delta": -0.0204,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.902,
"after": 0.9132,
"delta": 0.0112,
"percent_delta": 0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 2.5989,
"delta": 0.0989,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2301,
"delta": -0.0199,
"percent_delta": -0.0796,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.122,
"predicted_3B": 0.0008,
"predicted_AB": 2.5989,
"predicted_AVG": 0.2135,
"predicted_BB": 0.3528,
"predicted_H": 0.5548,
"predicted_HBP": 0.005,
"predicted_HR": 0.0685,
"predicted_OBP": 0.3075,
"predicted_R": 0.262,
"predicted_RBI": 0.2096,
"predicted_SLG": 0.3401,
"predicted_SO": 0.9272
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.122,
"after": 0.122,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5989,
"after": 2.5989,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2301,
"after": 0.2135,
"delta": -0.0166,
"percent_delta": -0.0721,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3583,
"after": 0.3528,
"delta": -0.0055,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.586,
"after": 0.5548,
"delta": -0.0312,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.005,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0722,
"after": 0.0685,
"delta": -0.0037,
"percent_delta": -0.0512,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2958,
"after": 0.3075,
"delta": 0.0117,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2881,
"after": 0.262,
"delta": -0.0261,
"percent_delta": -0.0906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2305,
"after": 0.2096,
"delta": -0.0209,
"percent_delta": -0.0907,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3321,
"after": 0.3401,
"delta": 0.008,
"percent_delta": 0.0241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9132,
"after": 0.9272,
"delta": 0.014,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2958,
"after": 0.3075,
"delta": 0.0117,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2301,
"after": 0.2135,
"delta": -0.0166,
"percent_delta": -0.0721,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.60), rates preserved: AVG=0.213 HR/AB=0.026",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.122,
"after": 0.0,
"delta": -0.122,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5989,
"after": 3.0,
"delta": 0.4011,
"percent_delta": 0.1543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3528,
"after": 0.0,
"delta": -0.3528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5548,
"after": 1.0,
"delta": 0.4452,
"percent_delta": 0.8025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0685,
"after": 0.0,
"delta": -0.0685,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2096,
"after": 0.0,
"delta": -0.2096,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9272,
"after": 1.0,
"delta": 0.0728,
"percent_delta": 0.0785,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5548,
"after": 1.0,
"delta": 0.4452,
"percent_delta": 0.8025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3528,
"after": 0.0,
"delta": -0.3528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.262,
"after": 0.0,
"delta": -0.262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.262,
"after": 0.0,
"delta": -0.262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2135,
"after": 0.333,
"delta": 0.1195,
"percent_delta": 0.5597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3075,
"after": 0.333,
"delta": 0.0255,
"percent_delta": 0.0829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3401,
"after": 0.333,
"delta": -0.0071,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2135,
"after": 0.333,
"delta": 0.1195,
"percent_delta": 0.5597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3401,
"after": 0.333,
"delta": -0.0071,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2135,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3075,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3401,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2135,
"delta": -0.1195,
"percent_delta": -0.3589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3075,
"delta": -0.0255,
"percent_delta": -0.0766,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3401,
"delta": 0.0071,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3401,
"delta": 0.0071,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2135,
"delta": -0.1195,
"percent_delta": -0.3589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.103,
"after": 0.0,
"delta": -0.103,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 4.0,
"delta": 1.5,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2135,
"delta": -0.0365,
"percent_delta": -0.146,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.361,
"after": 0.0,
"delta": -0.361,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 0.0,
"delta": -0.61,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.3075,
"delta": 0.0095,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.309,
"after": 0.0,
"delta": -0.309,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3401,
"delta": 0.0011,
"percent_delta": 0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.902,
"after": 1.0,
"delta": 0.098,
"percent_delta": 0.1086,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 4.0,
"delta": 1.5,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.61,
"after": 0.0,
"delta": -0.61,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.103 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.361 | - |
| predicted_H | 0.610 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.298 | - |
| predicted_R | 0.309 | - |
| predicted_RBI | 0.260 | - |
| predicted_SLG | 0.339 | - |
| predicted_SO | 0.902 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.122 | 0.019 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.599 | 0.099 |
| predicted_AVG | 0.230 | -0.020 |
| predicted_BB | 0.358 | -0.003 |
| predicted_H | 0.586 | -0.024 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.072 | -0.008 |
| predicted_OBP | 0.296 | -0.002 |
| predicted_R | 0.288 | -0.021 |
| predicted_RBI | 0.231 | -0.029 |
| predicted_SLG | 0.332 | -0.007 |
| predicted_SO | 0.913 | 0.011 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.122 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.599 | 0.000 |
| predicted_AVG | 0.213 | -0.017 |
| predicted_BB | 0.353 | -0.006 |
| predicted_H | 0.555 | -0.031 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.069 | -0.004 |
| predicted_OBP | 0.307 | 0.012 |
| predicted_R | 0.262 | -0.026 |
| predicted_RBI | 0.210 | -0.021 |
| predicted_SLG | 0.340 | 0.008 |
| predicted_SO | 0.927 | 0.014 |
AB rounded to 3 (raw=2.60), rates preserved: AVG=0.213 HR/AB=0.026
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.122 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.401 |
| predicted_AVG | 0.333 | 0.120 |
| predicted_BB | 0.000 | -0.353 |
| predicted_H | 1.000 | 0.445 |
| predicted_HR | 0.000 | -0.069 |
| predicted_OBP | 0.333 | 0.026 |
| predicted_R | 0.000 | -0.262 |
| predicted_RBI | 0.000 | -0.210 |
| predicted_SLG | 0.333 | -0.007 |
| predicted_SO | 1.000 | 0.073 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 1.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 4.000 | 0.0769 | 0.2000 | 0.1538 | 0.0769 | 0.0000 | 0.0000 | 0.1538 | 0.3077 |
| last_10 | 0.20 | 10 | - | 24.000 | 4.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 11.000 | 0.1667 | 0.2593 | 0.2500 | 0.1667 | 0.0000 | 0.0000 | 0.1250 | 0.4583 |
| season | 0.60 | 40 | - | 97.000 | 22.000 | 4.000 | 0.000 | 3.000 | 8.000 | 12.000 | 14.000 | 35.000 | 0.2268 | 0.3243 | 0.3608 | 0.2268 | 0.0309 | 0.0825 | 0.1443 | 0.3608 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.7550 |
| predicted_AVG | 0.1988 |
| predicted_BB | 0.3540 |
| predicted_H | 0.5480 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.0600 |
| predicted_OBP | 0.2922 |
| predicted_R | 0.2550 |
| predicted_RBI | 0.1840 |
| predicted_SLG | 0.3212 |
| predicted_SO | 0.9310 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1030 | 0.1520 | 0.1220 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5000 | 2.7550 | 2.5989 | model_form_blend |
| predicted_AVG | 0.2500 | 0.1988 | 0.2301 | model_form_blend |
| predicted_BB | 0.3610 | 0.3540 | 0.3583 | model_form_blend |
| predicted_H | 0.6100 | 0.5480 | 0.5860 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.0800 | 0.0600 | 0.0722 | model_form_blend |
| predicted_OBP | 0.2980 | 0.2922 | 0.2958 | model_form_blend |
| predicted_R | 0.3090 | 0.2550 | 0.2881 | model_form_blend |
| predicted_RBI | 0.2600 | 0.1840 | 0.2305 | model_form_blend |
| predicted_SLG | 0.3390 | 0.3212 | 0.3321 | model_form_blend |
| predicted_SO | 0.9020 | 0.9310 | 0.9132 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 99 |
| Season rows before report date | 99 |
| Report year | 2026 |
| Profile rows used | 40 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.227 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 681807 |
| playerID | 681807 |
| playerName | David Fry |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-17 |
| sl_k_percent | 30.4 |
| sl_bb_percent | 14.8 |
| sl_woba | 0.314 |
| sl_xwoba | 0.269 |
| sl_xba | 0.191 |
| sl_xslg | 0.271 |
| sl_sweet_spot_percent | 31.7 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 31.7 |
| sl_exit_velocity_avg | 86.1 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 31.0 |
| sl_swing_percent | 42.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.233 | 0.000 | 0.000 | Hitting_2B | 0.227 | 1.000 | -0.227 | -1.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_AB | 4.150 | 4.000 | 4.000 | Hitting_AB | 3.648 | 3.000 | 0.352 | 1.000 |
| predicted_AVG | 0.226 | 0.000 | 0.250 | Hitting_AVG | 0.283 | 0.333 | -0.283 | -0.333 |
| predicted_BB | 0.512 | 0.000 | 1.000 | Hitting_BB | 0.594 | 1.000 | -0.594 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_H | 0.940 | 0.000 | 1.000 | Hitting_H | 1.031 | 1.000 | -1.031 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | -0.102 | 0.000 |
| predicted_OBP | 0.328 | 0.000 | 0.400 | Hitting_OBP | 0.394 | 0.500 | -0.394 | -0.500 |
| predicted_R | 0.395 | 0.000 | 0.000 | Hitting_R | 0.461 | 1.000 | -0.461 | -1.000 |
| predicted_RBI | 0.380 | 0.000 | 0.000 | Hitting_RBI | 0.422 | 0.000 | -0.422 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_SLG | 0.372 | 0.000 | 0.250 | Hitting_SLG | 0.433 | 0.667 | -0.433 | -0.667 |
| predicted_SO | 0.814 | 2.000 | 1.000 | Hitting_SO | 0.766 | 0.000 | 1.234 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 0 |
| Worse Metrics | 11 |
| Biggest Boost | predicted_SO: 0.8140 -> 2.0000 (boost 1.1860, worse) |
| Biggest Deboost | predicted_H: 0.9400 -> 0.0000 (deboost -0.9400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_AB: 4.1500 -> 3.9232 (deboost -0.2268, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3307 -> 0.3070 (deboost -0.0237, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_BB: 0.5287 -> 1.0000 (boost 0.4713, better) | predicted_RBI: 0.3166 -> 0.0000 (deboost -0.3166, worse) | AB rounded to 4 (raw=4.15), rates preserved: AVG=0.202 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3800 -> 0.0000 (deboost -0.3800, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3070 -> 0.4000 (boost 0.0930, better) | predicted_SLG: 0.3501 -> 0.2500 (deboost -0.1001, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 0 | 3 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3501 (boost 0.1001, better) | predicted_OBP: 0.4000 -> 0.3070 (deboost -0.0930, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683953",
"player_name": "Travis Bazzana",
"position": "2B",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.233,
"predicted_3B": 0.023,
"predicted_AB": 4.15,
"predicted_AVG": 0.226,
"predicted_BB": 0.512,
"predicted_H": 0.94,
"predicted_HR": 0.1,
"predicted_OBP": 0.328,
"predicted_R": 0.395,
"predicted_RBI": 0.38,
"predicted_SLG": 0.372,
"predicted_SO": 0.814
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2191,
"predicted_3B": 0.0263,
"predicted_AB": 3.9232,
"predicted_AVG": 0.2253,
"predicted_BB": 0.5369,
"predicted_H": 0.8852,
"predicted_HBP": 0.028,
"predicted_HR": 0.0926,
"predicted_OBP": 0.3307,
"predicted_R": 0.4179,
"predicted_RBI": 0.3481,
"predicted_SLG": 0.3691,
"predicted_SO": 0.8062
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.233,
"after": 0.2191,
"delta": -0.0139,
"percent_delta": -0.0597,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0263,
"delta": 0.0033,
"percent_delta": 0.1435,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.15,
"after": 3.9232,
"delta": -0.2268,
"percent_delta": -0.0547,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2253,
"delta": -0.0007,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.512,
"after": 0.5369,
"delta": 0.0249,
"percent_delta": 0.0486,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 0.8852,
"delta": -0.0548,
"percent_delta": -0.0583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0926,
"delta": -0.0074,
"percent_delta": -0.074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3307,
"delta": 0.0027,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.395,
"after": 0.4179,
"delta": 0.0229,
"percent_delta": 0.058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.3481,
"delta": -0.0319,
"percent_delta": -0.0839,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3691,
"delta": -0.0029,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.814,
"after": 0.8062,
"delta": -0.0078,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.15,
"after": 3.9232,
"delta": -0.2268,
"percent_delta": -0.0547,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 43
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2191,
"predicted_3B": 0.0263,
"predicted_AB": 3.9232,
"predicted_AVG": 0.2136,
"predicted_BB": 0.5287,
"predicted_H": 0.8381,
"predicted_HBP": 0.028,
"predicted_HR": 0.0879,
"predicted_OBP": 0.307,
"predicted_R": 0.38,
"predicted_RBI": 0.3166,
"predicted_SLG": 0.3501,
"predicted_SO": 0.8185
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2191,
"after": 0.2191,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0263,
"after": 0.0263,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9232,
"after": 3.9232,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2253,
"after": 0.2136,
"delta": -0.0117,
"percent_delta": -0.0519,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5369,
"after": 0.5287,
"delta": -0.0082,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8852,
"after": 0.8381,
"delta": -0.0471,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.028,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0926,
"after": 0.0879,
"delta": -0.0047,
"percent_delta": -0.0508,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3307,
"after": 0.307,
"delta": -0.0237,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4179,
"after": 0.38,
"delta": -0.0379,
"percent_delta": -0.0907,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3481,
"after": 0.3166,
"delta": -0.0315,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3691,
"after": 0.3501,
"delta": -0.019,
"percent_delta": -0.0515,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8062,
"after": 0.8185,
"delta": 0.0123,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3307,
"after": 0.307,
"delta": -0.0237,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.15), rates preserved: AVG=0.202 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2191,
"after": 0.0,
"delta": -0.2191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0263,
"after": 0.0,
"delta": -0.0263,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9232,
"after": 4.0,
"delta": 0.0768,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5287,
"after": 1.0,
"delta": 0.4713,
"percent_delta": 0.8914,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8381,
"after": 1.0,
"delta": 0.1619,
"percent_delta": 0.1932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0879,
"after": 0.0,
"delta": -0.0879,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3166,
"after": 0.0,
"delta": -0.3166,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8185,
"after": 1.0,
"delta": 0.1815,
"percent_delta": 0.2217,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5287,
"after": 1.0,
"delta": 0.4713,
"percent_delta": 0.8914,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3166,
"after": 0.0,
"delta": -0.3166,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2136,
"after": 0.25,
"delta": 0.0364,
"percent_delta": 0.1704,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.4,
"delta": 0.093,
"percent_delta": 0.3029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3501,
"after": 0.25,
"delta": -0.1001,
"percent_delta": -0.2859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.4,
"delta": 0.093,
"percent_delta": 0.3029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3501,
"after": 0.25,
"delta": -0.1001,
"percent_delta": -0.2859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2136,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.307,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3501,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2136,
"delta": -0.0364,
"percent_delta": -0.1455,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.307,
"delta": -0.093,
"percent_delta": -0.2325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3501,
"delta": 0.1001,
"percent_delta": 0.4003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3501,
"delta": 0.1001,
"percent_delta": 0.4003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.307,
"delta": -0.093,
"percent_delta": -0.2325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.233,
"after": 0.0,
"delta": -0.233,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0,
"delta": -0.023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.15,
"after": 4.0,
"delta": -0.15,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2136,
"delta": -0.0124,
"percent_delta": -0.0549,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.512,
"after": 0.0,
"delta": -0.512,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 0.0,
"delta": -0.94,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.307,
"delta": -0.021,
"percent_delta": -0.064,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.395,
"after": 0.0,
"delta": -0.395,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3501,
"delta": -0.0219,
"percent_delta": -0.0589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.814,
"after": 2.0,
"delta": 1.186,
"percent_delta": 1.457,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 0,
"worse_metrics": 11,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.814,
"after": 2.0,
"delta": 1.186,
"percent_delta": 1.457,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.94,
"after": 0.0,
"delta": -0.94,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.233 | - |
| predicted_3B | 0.023 | - |
| predicted_AB | 4.150 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.512 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.328 | - |
| predicted_R | 0.395 | - |
| predicted_RBI | 0.380 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 0.814 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | -0.014 |
| predicted_3B | 0.026 | 0.003 |
| predicted_AB | 3.923 | -0.227 |
| predicted_AVG | 0.225 | -0.001 |
| predicted_BB | 0.537 | 0.025 |
| predicted_H | 0.885 | -0.055 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.093 | -0.007 |
| predicted_OBP | 0.331 | 0.003 |
| predicted_R | 0.418 | 0.023 |
| predicted_RBI | 0.348 | -0.032 |
| predicted_SLG | 0.369 | -0.003 |
| predicted_SO | 0.806 | -0.008 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | 0.000 |
| predicted_3B | 0.026 | 0.000 |
| predicted_AB | 3.923 | 0.000 |
| predicted_AVG | 0.214 | -0.012 |
| predicted_BB | 0.529 | -0.008 |
| predicted_H | 0.838 | -0.047 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.088 | -0.005 |
| predicted_OBP | 0.307 | -0.024 |
| predicted_R | 0.380 | -0.038 |
| predicted_RBI | 0.317 | -0.032 |
| predicted_SLG | 0.350 | -0.019 |
| predicted_SO | 0.819 | 0.012 |
AB rounded to 4 (raw=4.15), rates preserved: AVG=0.202 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.219 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 4.000 | 0.077 |
| predicted_AVG | 0.250 | 0.036 |
| predicted_BB | 1.000 | 0.471 |
| predicted_H | 1.000 | 0.162 |
| predicted_HR | 0.000 | -0.088 |
| predicted_OBP | 0.400 | 0.093 |
| predicted_R | 0.000 | -0.380 |
| predicted_RBI | 0.000 | -0.317 |
| predicted_SLG | 0.250 | -0.100 |
| predicted_SO | 1.000 | 0.181 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 4.000 | 3.000 | 0.1875 | 0.3500 | 0.2500 | 0.1875 | 0.0000 | 0.0000 | 0.2500 | 0.1875 |
| last_10 | 0.20 | 10 | - | 36.000 | 6.000 | 1.000 | 1.000 | 1.000 | 2.000 | 4.000 | 7.000 | 9.000 | 0.1667 | 0.3023 | 0.3333 | 0.1667 | 0.0278 | 0.0556 | 0.1944 | 0.2500 |
| season | 0.60 | 43 | - | 157.000 | 39.000 | 10.000 | 1.000 | 4.000 | 17.000 | 17.000 | 22.000 | 35.000 | 0.2484 | 0.3462 | 0.4013 | 0.2484 | 0.0255 | 0.1083 | 0.1401 | 0.2229 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1990 |
| predicted_3B | 0.0310 |
| predicted_AB | 3.5950 |
| predicted_AVG | 0.2242 |
| predicted_BB | 0.5730 |
| predicted_H | 0.8060 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.0820 |
| predicted_OBP | 0.3347 |
| predicted_R | 0.4510 |
| predicted_RBI | 0.3020 |
| predicted_SLG | 0.3648 |
| predicted_SO | 0.7950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2330 | 0.1990 | 0.2191 | model_form_blend |
| predicted_3B | 0.0230 | 0.0310 | 0.0263 | model_form_blend |
| predicted_AB | 4.1500 | 3.5950 | 3.9232 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2242 | 0.2253 | model_form_blend |
| predicted_BB | 0.5120 | 0.5730 | 0.5369 | model_form_blend |
| predicted_H | 0.9400 | 0.8060 | 0.8852 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1000 | 0.0820 | 0.0926 | model_form_blend |
| predicted_OBP | 0.3280 | 0.3347 | 0.3307 | model_form_blend |
| predicted_R | 0.3950 | 0.4510 | 0.4179 | model_form_blend |
| predicted_RBI | 0.3800 | 0.3020 | 0.3481 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3648 | 0.3691 | model_form_blend |
| predicted_SO | 0.8140 | 0.7950 | 0.8062 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 128 |
| Season rows before report date | 128 |
| Report year | 2026 |
| Profile rows used | 43 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.248 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 683953 |
| playerID | 683953 |
| playerName | Travis Bazzana |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 12.1 |
| sl_woba | 0.332 |
| sl_xwoba | 0.309 |
| sl_xba | 0.235 |
| sl_xslg | 0.352 |
| sl_sweet_spot_percent | 29.3 |
| sl_barrel_batted_rate | 3.3 |
| sl_hard_hit_percent | 35.5 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 25.0 |
| sl_swing_percent | 44.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.156 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.012 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.211 | 2.000 | 3.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.250 | 0.500 | 0.333 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.304 | 1.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.804 | 1.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.107 | 0.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.315 | 0.667 | 0.333 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.415 | 0.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.399 | 0.000 | 0.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.407 | 0.500 | 0.333 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.859 | 1.000 | 1.000 | Hitting_SO | - | - | - | - |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.3040 -> 1.0000 (boost 0.6960, better) |
| Biggest Deboost | predicted_AB: 3.2110 -> 2.0000 (deboost -1.2110, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.2110 -> 3.3140 (boost 0.1030, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4074 -> 0.3885 (deboost -0.0189, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.7857 -> 1.0000 (boost 0.2143, better) | predicted_RBI: 0.3785 -> 0.0000 (deboost -0.3785, worse) | AB rounded to 3 (raw=3.31), rates preserved: AVG=0.237 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3897 -> 0.0000 (deboost -0.3897, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2371 -> 0.3330 (boost 0.0959, better) | predicted_SLG: 0.3885 -> 0.3330 (deboost -0.0555, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 3.0000 -> 2.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3885 (boost 0.0555, better) | predicted_AVG: 0.3330 -> 0.2371 (deboost -0.0959, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "696135",
"player_name": "Kahlil Watson",
"position": "RF",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.156,
"predicted_3B": 0.012,
"predicted_AB": 3.211,
"predicted_AVG": 0.25,
"predicted_BB": 0.304,
"predicted_H": 0.804,
"predicted_HR": 0.107,
"predicted_OBP": 0.315,
"predicted_R": 0.415,
"predicted_RBI": 0.399,
"predicted_SLG": 0.407,
"predicted_SO": 0.859
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1612,
"predicted_3B": 0.0125,
"predicted_AB": 3.314,
"predicted_AVG": 0.2501,
"predicted_BB": 0.3029,
"predicted_H": 0.8298,
"predicted_HBP": 0.035,
"predicted_HR": 0.1109,
"predicted_OBP": 0.3147,
"predicted_R": 0.4285,
"predicted_RBI": 0.4162,
"predicted_SLG": 0.4074,
"predicted_SO": 0.8579
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.156,
"after": 0.1612,
"delta": 0.0052,
"percent_delta": 0.0333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.012,
"after": 0.0125,
"delta": 0.0005,
"percent_delta": 0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.211,
"after": 3.314,
"delta": 0.103,
"percent_delta": 0.0321,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2501,
"delta": 0.0001,
"percent_delta": 0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.304,
"after": 0.3029,
"delta": -0.0011,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.804,
"after": 0.8298,
"delta": 0.0258,
"percent_delta": 0.0321,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.107,
"after": 0.1109,
"delta": 0.0039,
"percent_delta": 0.0364,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3147,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.415,
"after": 0.4285,
"delta": 0.0135,
"percent_delta": 0.0325,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.399,
"after": 0.4162,
"delta": 0.0172,
"percent_delta": 0.0431,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.4074,
"delta": 0.0004,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.859,
"after": 0.8579,
"delta": -0.0011,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.211,
"after": 3.314,
"delta": 0.103,
"percent_delta": 0.0321,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 0,
"last_10": 0,
"season": 0
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1612,
"predicted_3B": 0.0125,
"predicted_AB": 3.314,
"predicted_AVG": 0.2371,
"predicted_BB": 0.2983,
"predicted_H": 0.7857,
"predicted_HBP": 0.035,
"predicted_HR": 0.1052,
"predicted_OBP": 0.3001,
"predicted_R": 0.3897,
"predicted_RBI": 0.3785,
"predicted_SLG": 0.3885,
"predicted_SO": 0.871
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1612,
"after": 0.1612,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0125,
"after": 0.0125,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.314,
"after": 3.314,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2501,
"after": 0.2371,
"delta": -0.013,
"percent_delta": -0.052,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3029,
"after": 0.2983,
"delta": -0.0046,
"percent_delta": -0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8298,
"after": 0.7857,
"delta": -0.0441,
"percent_delta": -0.0531,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.035,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1109,
"after": 0.1052,
"delta": -0.0057,
"percent_delta": -0.0514,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3147,
"after": 0.3001,
"delta": -0.0146,
"percent_delta": -0.0464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4285,
"after": 0.3897,
"delta": -0.0388,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4162,
"after": 0.3785,
"delta": -0.0377,
"percent_delta": -0.0906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4074,
"after": 0.3885,
"delta": -0.0189,
"percent_delta": -0.0464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8579,
"after": 0.871,
"delta": 0.0131,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4074,
"after": 0.3885,
"delta": -0.0189,
"percent_delta": -0.0464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.31), rates preserved: AVG=0.237 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1612,
"after": 0.0,
"delta": -0.1612,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0125,
"after": 0.0,
"delta": -0.0125,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.314,
"after": 3.0,
"delta": -0.314,
"percent_delta": -0.0947,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2983,
"after": 0.0,
"delta": -0.2983,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7857,
"after": 1.0,
"delta": 0.2143,
"percent_delta": 0.2728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1052,
"after": 0.0,
"delta": -0.1052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3785,
"after": 0.0,
"delta": -0.3785,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.871,
"after": 1.0,
"delta": 0.129,
"percent_delta": 0.1481,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7857,
"after": 1.0,
"delta": 0.2143,
"percent_delta": 0.2728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3785,
"after": 0.0,
"delta": -0.3785,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3897,
"after": 0.0,
"delta": -0.3897,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3897,
"after": 0.0,
"delta": -0.3897,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2371,
"after": 0.333,
"delta": 0.0959,
"percent_delta": 0.4045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3001,
"after": 0.333,
"delta": 0.0329,
"percent_delta": 0.1096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3885,
"after": 0.333,
"delta": -0.0555,
"percent_delta": -0.1429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2371,
"after": 0.333,
"delta": 0.0959,
"percent_delta": 0.4045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3885,
"after": 0.333,
"delta": -0.0555,
"percent_delta": -0.1429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_AVG": 0.2371,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3001,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3885,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2371,
"delta": -0.0959,
"percent_delta": -0.2881,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3001,
"delta": -0.0329,
"percent_delta": -0.0989,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3885,
"delta": 0.0555,
"percent_delta": 0.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3885,
"delta": 0.0555,
"percent_delta": 0.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2371,
"delta": -0.0959,
"percent_delta": -0.2881,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.156,
"after": 0.0,
"delta": -0.156,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.012,
"after": 0.0,
"delta": -0.012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.211,
"after": 2.0,
"delta": -1.211,
"percent_delta": -0.3771,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2371,
"delta": -0.0129,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.304,
"after": 1.0,
"delta": 0.696,
"percent_delta": 2.2895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.804,
"after": 1.0,
"delta": 0.196,
"percent_delta": 0.2438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.107,
"after": 0.0,
"delta": -0.107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3001,
"delta": -0.0149,
"percent_delta": -0.0473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.415,
"after": 0.0,
"delta": -0.415,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.399,
"after": 0.0,
"delta": -0.399,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.3885,
"delta": -0.0185,
"percent_delta": -0.0455,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.859,
"after": 1.0,
"delta": 0.141,
"percent_delta": 0.1641,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.304,
"after": 1.0,
"delta": 0.696,
"percent_delta": 2.2895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.211,
"after": 2.0,
"delta": -1.211,
"percent_delta": -0.3771,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.156 | - |
| predicted_3B | 0.012 | - |
| predicted_AB | 3.211 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.304 | - |
| predicted_H | 0.804 | - |
| predicted_HR | 0.107 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.415 | - |
| predicted_RBI | 0.399 | - |
| predicted_SLG | 0.407 | - |
| predicted_SO | 0.859 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.161 | 0.005 |
| predicted_3B | 0.013 | 0.001 |
| predicted_AB | 3.314 | 0.103 |
| predicted_AVG | 0.250 | 0.000 |
| predicted_BB | 0.303 | -0.001 |
| predicted_H | 0.830 | 0.026 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.111 | 0.004 |
| predicted_OBP | 0.315 | -0.000 |
| predicted_R | 0.428 | 0.014 |
| predicted_RBI | 0.416 | 0.017 |
| predicted_SLG | 0.407 | 0.000 |
| predicted_SO | 0.858 | -0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.161 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.314 | 0.000 |
| predicted_AVG | 0.237 | -0.013 |
| predicted_BB | 0.298 | -0.005 |
| predicted_H | 0.786 | -0.044 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.105 | -0.006 |
| predicted_OBP | 0.300 | -0.015 |
| predicted_R | 0.390 | -0.039 |
| predicted_RBI | 0.379 | -0.038 |
| predicted_SLG | 0.389 | -0.019 |
| predicted_SO | 0.871 | 0.013 |
AB rounded to 3 (raw=3.31), rates preserved: AVG=0.237 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.161 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 3.000 | -0.314 |
| predicted_AVG | 0.333 | 0.096 |
| predicted_BB | 0.000 | -0.298 |
| predicted_H | 1.000 | 0.214 |
| predicted_HR | 0.000 | -0.105 |
| predicted_OBP | 0.333 | 0.033 |
| predicted_R | 0.000 | -0.390 |
| predicted_RBI | 0.000 | -0.379 |
| predicted_SLG | 0.333 | -0.055 |
| predicted_SO | 1.000 | 0.129 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 2.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| last_10 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| season | 0.60 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| Metric | Value |
|---|---|
| predicted_2B | 0.1890 |
| predicted_3B | 0.0150 |
| predicted_AB | 3.8650 |
| predicted_AVG | 0.2505 |
| predicted_BB | 0.2970 |
| predicted_H | 0.9680 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1320 |
| predicted_OBP | 0.3134 |
| predicted_R | 0.5010 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.4098 |
| predicted_SO | 0.8520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1560 | 0.1890 | 0.1612 | model_form_blend |
| predicted_3B | 0.0120 | 0.0150 | 0.0125 | model_form_blend |
| predicted_AB | 3.2110 | 3.8650 | 3.3140 | model_form_blend |
| predicted_AVG | 0.2500 | 0.2505 | 0.2501 | model_form_blend |
| predicted_BB | 0.3040 | 0.2970 | 0.3029 | model_form_blend |
| predicted_H | 0.8040 | 0.9680 | 0.8298 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1070 | 0.1320 | 0.1109 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3134 | 0.3147 | model_form_blend |
| predicted_R | 0.4150 | 0.5010 | 0.4285 | model_form_blend |
| predicted_RBI | 0.3990 | 0.5080 | 0.4162 | model_form_blend |
| predicted_SLG | 0.4070 | 0.4098 | 0.4074 | model_form_blend |
| predicted_SO | 0.8590 | 0.8520 | 0.8579 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 0 |
| Season rows before report date | 0 |
| Report year | 2026 |
| Profile rows used | 0 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 2 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.0 |
No historical data found for this player before report date.
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.111 | 0.000 | 0.000 | Hitting_2B | 0.104 | 0.000 | -0.104 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.190 | 3.000 | 3.000 | Hitting_AB | 3.514 | 4.000 | -0.514 | -1.000 |
| predicted_AVG | 0.244 | 0.000 | 0.333 | Hitting_AVG | 0.218 | 0.250 | -0.218 | -0.250 |
| predicted_BB | 0.349 | 1.000 | 0.000 | Hitting_BB | 0.388 | 0.000 | 0.612 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.780 | 0.000 | 1.000 | Hitting_H | 0.765 | 1.000 | -0.765 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.098 | 0.000 | -0.098 | 0.000 |
| predicted_OBP | 0.321 | 0.250 | 0.333 | Hitting_OBP | 0.302 | 0.250 | -0.052 | 0.000 |
| predicted_R | 0.381 | 0.000 | 0.000 | Hitting_R | 0.437 | 1.000 | -0.437 | -1.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.344 | 0.000 | -0.344 | 0.000 |
| predicted_SLG | 0.363 | 0.000 | 0.333 | Hitting_SLG | 0.341 | 0.250 | -0.341 | -0.250 |
| predicted_SO | 1.159 | 3.000 | 1.000 | Hitting_SO | 1.311 | 2.000 | 1.689 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 1.1590 -> 3.0000 (boost 1.8410, worse) |
| Biggest Deboost | predicted_H: 0.7800 -> 0.0000 (deboost -0.7800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3630 -> 0.3547 (deboost -0.0083, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3225 -> 0.3066 (deboost -0.0159, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.7248 -> 1.0000 (boost 0.2752, better) | predicted_BB: 0.3588 -> 0.0000 (deboost -0.3588, worse) | AB rounded to 3 (raw=3.19), rates preserved: AVG=0.227 HR/AB=0.026 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3265 -> 0.0000 (deboost -0.3265, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2283 -> 0.3330 (boost 0.1047, better) | predicted_SLG: 0.3496 -> 0.3330 (deboost -0.0166, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3496 (boost 0.0166, better) | predicted_AVG: 0.3330 -> 0.2283 (deboost -0.1047, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "700932",
"player_name": "Kyle Manzardo",
"position": "DH",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.111,
"predicted_3B": 0.016,
"predicted_AB": 3.19,
"predicted_AVG": 0.244,
"predicted_BB": 0.349,
"predicted_H": 0.78,
"predicted_HR": 0.1,
"predicted_OBP": 0.321,
"predicted_R": 0.381,
"predicted_RBI": 0.34,
"predicted_SLG": 0.363,
"predicted_SO": 1.159
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1056,
"predicted_3B": 0.0135,
"predicted_AB": 3.1751,
"predicted_AVG": 0.2408,
"predicted_BB": 0.3644,
"predicted_H": 0.7655,
"predicted_HBP": 0.029,
"predicted_HR": 0.0888,
"predicted_OBP": 0.3225,
"predicted_R": 0.359,
"predicted_RBI": 0.3139,
"predicted_SLG": 0.3547,
"predicted_SO": 1.132
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.111,
"after": 0.1056,
"delta": -0.0054,
"percent_delta": -0.0486,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0135,
"delta": -0.0025,
"percent_delta": -0.1563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.19,
"after": 3.1751,
"delta": -0.0149,
"percent_delta": -0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2408,
"delta": -0.0032,
"percent_delta": -0.0131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.349,
"after": 0.3644,
"delta": 0.0154,
"percent_delta": 0.0441,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.7655,
"delta": -0.0145,
"percent_delta": -0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0888,
"delta": -0.0112,
"percent_delta": -0.112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3225,
"delta": 0.0015,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.381,
"after": 0.359,
"delta": -0.022,
"percent_delta": -0.0577,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.3139,
"delta": -0.0261,
"percent_delta": -0.0768,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.3547,
"delta": -0.0083,
"percent_delta": -0.0229,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.159,
"after": 1.132,
"delta": -0.027,
"percent_delta": -0.0233,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.3547,
"delta": -0.0083,
"percent_delta": -0.0229,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 63
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1056,
"predicted_3B": 0.0135,
"predicted_AB": 3.1751,
"predicted_AVG": 0.2283,
"predicted_BB": 0.3588,
"predicted_H": 0.7248,
"predicted_HBP": 0.029,
"predicted_HR": 0.0843,
"predicted_OBP": 0.3066,
"predicted_R": 0.3265,
"predicted_RBI": 0.2855,
"predicted_SLG": 0.3496,
"predicted_SO": 1.1493
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1056,
"after": 0.1056,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0135,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1751,
"after": 3.1751,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2408,
"after": 0.2283,
"delta": -0.0125,
"percent_delta": -0.0519,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3644,
"after": 0.3588,
"delta": -0.0056,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7655,
"after": 0.7248,
"delta": -0.0407,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.029,
"after": 0.029,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0888,
"after": 0.0843,
"delta": -0.0045,
"percent_delta": -0.0507,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3225,
"after": 0.3066,
"delta": -0.0159,
"percent_delta": -0.0493,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.359,
"after": 0.3265,
"delta": -0.0325,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3139,
"after": 0.2855,
"delta": -0.0284,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3547,
"after": 0.3496,
"delta": -0.0051,
"percent_delta": -0.0144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.132,
"after": 1.1493,
"delta": 0.0173,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3225,
"after": 0.3066,
"delta": -0.0159,
"percent_delta": -0.0493,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.19), rates preserved: AVG=0.227 HR/AB=0.026",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1056,
"after": 0.0,
"delta": -0.1056,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0,
"delta": -0.0135,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1751,
"after": 3.0,
"delta": -0.1751,
"percent_delta": -0.0551,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3588,
"after": 0.0,
"delta": -0.3588,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7248,
"after": 1.0,
"delta": 0.2752,
"percent_delta": 0.3797,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0843,
"after": 0.0,
"delta": -0.0843,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2855,
"after": 0.0,
"delta": -0.2855,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1493,
"after": 1.0,
"delta": -0.1493,
"percent_delta": -0.1299,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7248,
"after": 1.0,
"delta": 0.2752,
"percent_delta": 0.3797,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3588,
"after": 0.0,
"delta": -0.3588,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3265,
"after": 0.0,
"delta": -0.3265,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3265,
"after": 0.0,
"delta": -0.3265,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2283,
"after": 0.333,
"delta": 0.1047,
"percent_delta": 0.4586,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3066,
"after": 0.333,
"delta": 0.0264,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3496,
"after": 0.333,
"delta": -0.0166,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2283,
"after": 0.333,
"delta": 0.1047,
"percent_delta": 0.4586,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3496,
"after": 0.333,
"delta": -0.0166,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2283,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3066,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3496,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2283,
"delta": -0.1047,
"percent_delta": -0.3145,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3066,
"delta": -0.0264,
"percent_delta": -0.0792,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3496,
"delta": 0.0166,
"percent_delta": 0.05,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3496,
"delta": 0.0166,
"percent_delta": 0.05,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2283,
"delta": -0.1047,
"percent_delta": -0.3145,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.111,
"after": 0.0,
"delta": -0.111,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.19,
"after": 3.0,
"delta": -0.19,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2283,
"delta": -0.0157,
"percent_delta": -0.0643,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.349,
"after": 1.0,
"delta": 0.651,
"percent_delta": 1.8653,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.0,
"delta": -0.78,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3066,
"delta": -0.0144,
"percent_delta": -0.0449,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.381,
"after": 0.0,
"delta": -0.381,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.363,
"after": 0.3496,
"delta": -0.0134,
"percent_delta": -0.0369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.159,
"after": 3.0,
"delta": 1.841,
"percent_delta": 1.5884,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.159,
"after": 3.0,
"delta": 1.841,
"percent_delta": 1.5884,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.78,
"after": 0.0,
"delta": -0.78,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 3.190 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.349 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.321 | - |
| predicted_R | 0.381 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.363 | - |
| predicted_SO | 1.159 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.106 | -0.005 |
| predicted_3B | 0.013 | -0.003 |
| predicted_AB | 3.175 | -0.015 |
| predicted_AVG | 0.241 | -0.003 |
| predicted_BB | 0.364 | 0.015 |
| predicted_H | 0.765 | -0.015 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.089 | -0.011 |
| predicted_OBP | 0.323 | 0.002 |
| predicted_R | 0.359 | -0.022 |
| predicted_RBI | 0.314 | -0.026 |
| predicted_SLG | 0.355 | -0.008 |
| predicted_SO | 1.132 | -0.027 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.106 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.175 | 0.000 |
| predicted_AVG | 0.228 | -0.012 |
| predicted_BB | 0.359 | -0.006 |
| predicted_H | 0.725 | -0.041 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.084 | -0.005 |
| predicted_OBP | 0.307 | -0.016 |
| predicted_R | 0.327 | -0.032 |
| predicted_RBI | 0.285 | -0.028 |
| predicted_SLG | 0.350 | -0.005 |
| predicted_SO | 1.149 | 0.017 |
AB rounded to 3 (raw=3.19), rates preserved: AVG=0.227 HR/AB=0.026
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.106 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 3.000 | -0.175 |
| predicted_AVG | 0.333 | 0.105 |
| predicted_BB | 0.000 | -0.359 |
| predicted_H | 1.000 | 0.275 |
| predicted_HR | 0.000 | -0.084 |
| predicted_OBP | 0.333 | 0.026 |
| predicted_R | 0.000 | -0.327 |
| predicted_RBI | 0.000 | -0.285 |
| predicted_SLG | 0.333 | -0.017 |
| predicted_SO | 1.000 | -0.149 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 6.000 | 0.2500 | 0.3333 | 0.2500 | 0.2500 | 0.0000 | 0.0000 | 0.1250 | 0.3750 |
| last_10 | 0.20 | 10 | - | 28.000 | 6.000 | 1.000 | 0.000 | 0.000 | 2.000 | 2.000 | 5.000 | 9.000 | 0.2143 | 0.3333 | 0.2500 | 0.2143 | 0.0000 | 0.0714 | 0.1786 | 0.3214 |
| season | 0.60 | 63 | - | 195.000 | 46.000 | 7.000 | 1.000 | 7.000 | 22.000 | 24.000 | 22.000 | 73.000 | 0.2359 | 0.3213 | 0.3897 | 0.2359 | 0.0359 | 0.1128 | 0.1128 | 0.3744 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0980 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.1540 |
| predicted_AVG | 0.2363 |
| predicted_BB | 0.3860 |
| predicted_H | 0.7450 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.0730 |
| predicted_OBP | 0.3246 |
| predicted_R | 0.3280 |
| predicted_RBI | 0.2770 |
| predicted_SLG | 0.3429 |
| predicted_SO | 1.0940 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1110 | 0.0980 | 0.1056 | model_form_blend |
| predicted_3B | 0.0160 | 0.0100 | 0.0135 | model_form_blend |
| predicted_AB | 3.1900 | 3.1540 | 3.1751 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2363 | 0.2408 | model_form_blend |
| predicted_BB | 0.3490 | 0.3860 | 0.3644 | model_form_blend |
| predicted_H | 0.7800 | 0.7450 | 0.7655 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.1000 | 0.0730 | 0.0888 | model_form_blend |
| predicted_OBP | 0.3210 | 0.3246 | 0.3225 | model_form_blend |
| predicted_R | 0.3810 | 0.3280 | 0.3590 | model_form_blend |
| predicted_RBI | 0.3400 | 0.2770 | 0.3139 | model_form_blend |
| predicted_SLG | 0.3630 | 0.3429 | 0.3547 | model_form_blend |
| predicted_SO | 1.1590 | 1.0940 | 1.1320 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 183 |
| Season rows before report date | 183 |
| Report year | 2026 |
| Profile rows used | 63 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.236 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 700932 |
| playerID | 700932 |
| playerName | Kyle Manzardo |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-17 |
| sl_k_percent | 32.9 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.319 |
| sl_xwoba | 0.313 |
| sl_xba | 0.226 |
| sl_xslg | 0.389 |
| sl_sweet_spot_percent | 34.1 |
| sl_barrel_batted_rate | 11.4 |
| sl_hard_hit_percent | 42.3 |
| sl_exit_velocity_avg | 89.3 |
| sl_launch_angle_avg | 17.3 |
| sl_whiff_percent | 30.4 |
| sl_swing_percent | 46.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.061 | 0.000 | -0.061 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.150 | 4.000 | 3.000 | Hitting_AB | 3.242 | 4.000 | 0.758 | 0.000 |
| predicted_AVG | 0.277 | 0.250 | 0.333 | Hitting_AVG | 0.262 | 0.500 | -0.012 | -0.250 |
| predicted_BB | 0.200 | 0.000 | 0.000 | Hitting_BB | 0.182 | 0.000 | -0.182 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.870 | 1.000 | 1.000 | Hitting_H | 0.848 | 2.000 | 0.152 | -1.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.182 | 0.000 | -0.182 | 0.000 |
| predicted_OBP | 0.345 | 0.250 | 0.333 | Hitting_OBP | 0.301 | 0.500 | -0.051 | -0.250 |
| predicted_R | 0.200 | 0.000 | 0.000 | Hitting_R | 0.182 | 0.000 | -0.182 | 0.000 |
| predicted_RBI | 0.550 | 0.000 | 0.000 | Hitting_RBI | 0.636 | 1.000 | -0.636 | -1.000 |
| predicted_SLG | 0.509 | 0.250 | 0.333 | Hitting_SLG | 0.449 | 0.500 | -0.199 | -0.250 |
| predicted_SO | 1.300 | 1.000 | 1.000 | Hitting_SO | 1.091 | 2.000 | -0.091 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.1500 -> 4.0000 (boost 0.8500, better) |
| Biggest Deboost | predicted_RBI: 0.5500 -> 0.0000 (deboost -0.5500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 5 | 1 | 6 | 0 | predicted_AB: 3.1500 -> 3.2395 (boost 0.0895, better) | predicted_SO: 1.3000 -> 1.2375 (deboost -0.0625, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 0 | 4 | 0 | 4 | - | predicted_RBI: 0.5845 -> 0.5315 (deboost -0.0530, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.8805 -> 1.0000 (boost 0.1195, better) | predicted_RBI: 0.5315 -> 0.0000 (deboost -0.5315, worse) | AB rounded to 3 (raw=3.24), rates preserved: AVG=0.272 HR/AB=0.058 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2355 -> 0.0000 (deboost -0.2355, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2718 -> 0.3330 (boost 0.0612, better) | predicted_SLG: 0.4834 -> 0.3330 (deboost -0.1504, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4834 (boost 0.1504, better) | predicted_AVG: 0.3330 -> 0.2718 (deboost -0.0612, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672356",
"player_name": "Gabriel Arias",
"position": "3B",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.0,
"predicted_AB": 3.15,
"predicted_AVG": 0.277,
"predicted_BB": 0.2,
"predicted_H": 0.87,
"predicted_HR": 0.18,
"predicted_OBP": 0.345,
"predicted_R": 0.2,
"predicted_RBI": 0.55,
"predicted_SLG": 0.509,
"predicted_SO": 1.3
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1214,
"predicted_3B": 0.0019,
"predicted_AB": 3.2395,
"predicted_AVG": 0.287,
"predicted_BB": 0.2137,
"predicted_H": 0.93,
"predicted_HBP": 0.015,
"predicted_HR": 0.1968,
"predicted_OBP": 0.3495,
"predicted_R": 0.259,
"predicted_RBI": 0.5845,
"predicted_SLG": 0.5268,
"predicted_SO": 1.2375
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.1214,
"delta": 0.0214,
"percent_delta": 0.214,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0019,
"delta": 0.0019,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.15,
"after": 3.2395,
"delta": 0.0895,
"percent_delta": 0.0284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.287,
"delta": 0.01,
"percent_delta": 0.0361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.2137,
"delta": 0.0137,
"percent_delta": 0.0685,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.93,
"delta": 0.06,
"percent_delta": 0.069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.1968,
"delta": 0.0168,
"percent_delta": 0.0933,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3495,
"delta": 0.0045,
"percent_delta": 0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2,
"after": 0.259,
"delta": 0.059,
"percent_delta": 0.295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5845,
"delta": 0.0345,
"percent_delta": 0.0627,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.509,
"after": 0.5268,
"delta": 0.0178,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3,
"after": 1.2375,
"delta": -0.0625,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.15,
"after": 3.2395,
"delta": 0.0895,
"percent_delta": 0.0284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3,
"after": 1.2375,
"delta": -0.0625,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 10
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1214,
"predicted_3B": 0.0019,
"predicted_AB": 3.2395,
"predicted_AVG": 0.2718,
"predicted_BB": 0.2104,
"predicted_H": 0.8805,
"predicted_HBP": 0.015,
"predicted_HR": 0.1867,
"predicted_OBP": 0.3162,
"predicted_R": 0.2355,
"predicted_RBI": 0.5315,
"predicted_SLG": 0.4834,
"predicted_SO": 1.2564
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1214,
"after": 0.1214,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0019,
"after": 0.0019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2395,
"after": 3.2395,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.287,
"after": 0.2718,
"delta": -0.0152,
"percent_delta": -0.053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2137,
"after": 0.2104,
"delta": -0.0033,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 0.8805,
"delta": -0.0495,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.015,
"after": 0.015,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1968,
"after": 0.1867,
"delta": -0.0101,
"percent_delta": -0.0513,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3495,
"after": 0.3162,
"delta": -0.0333,
"percent_delta": -0.0953,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.259,
"after": 0.2355,
"delta": -0.0235,
"percent_delta": -0.0907,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5845,
"after": 0.5315,
"delta": -0.053,
"percent_delta": -0.0907,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5268,
"after": 0.4834,
"delta": -0.0434,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2375,
"after": 1.2564,
"delta": 0.0189,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5845,
"after": 0.5315,
"delta": -0.053,
"percent_delta": -0.0907,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.24), rates preserved: AVG=0.272 HR/AB=0.058",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1214,
"after": 0.0,
"delta": -0.1214,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0019,
"after": 0.0,
"delta": -0.0019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2395,
"after": 3.0,
"delta": -0.2395,
"percent_delta": -0.0739,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2104,
"after": 0.0,
"delta": -0.2104,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8805,
"after": 1.0,
"delta": 0.1195,
"percent_delta": 0.1357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.015,
"after": 0.0,
"delta": -0.015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1867,
"after": 0.0,
"delta": -0.1867,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5315,
"after": 0.0,
"delta": -0.5315,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2564,
"after": 1.0,
"delta": -0.2564,
"percent_delta": -0.2041,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8805,
"after": 1.0,
"delta": 0.1195,
"percent_delta": 0.1357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5315,
"after": 0.0,
"delta": -0.5315,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2355,
"after": 0.0,
"delta": -0.2355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2355,
"after": 0.0,
"delta": -0.2355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2718,
"after": 0.333,
"delta": 0.0612,
"percent_delta": 0.2252,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3162,
"after": 0.333,
"delta": 0.0168,
"percent_delta": 0.0531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4834,
"after": 0.333,
"delta": -0.1504,
"percent_delta": -0.3111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2718,
"after": 0.333,
"delta": 0.0612,
"percent_delta": 0.2252,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4834,
"after": 0.333,
"delta": -0.1504,
"percent_delta": -0.3111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2718,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3162,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4834,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2718,
"delta": -0.0612,
"percent_delta": -0.1838,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3162,
"delta": -0.0168,
"percent_delta": -0.0504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4834,
"delta": 0.1504,
"percent_delta": 0.4516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4834,
"delta": 0.1504,
"percent_delta": 0.4516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2718,
"delta": -0.0612,
"percent_delta": -0.1838,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.15,
"after": 4.0,
"delta": 0.85,
"percent_delta": 0.2698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.2718,
"delta": -0.0052,
"percent_delta": -0.0188,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 1.0,
"delta": 0.13,
"percent_delta": 0.1494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3162,
"delta": -0.0288,
"percent_delta": -0.0835,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.509,
"after": 0.4834,
"delta": -0.0256,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3,
"after": 1.0,
"delta": -0.3,
"percent_delta": -0.2308,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.15,
"after": 4.0,
"delta": 0.85,
"percent_delta": 0.2698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.150 | - |
| predicted_AVG | 0.277 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.345 | - |
| predicted_R | 0.200 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.509 | - |
| predicted_SO | 1.300 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.121 | 0.021 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.240 | 0.090 |
| predicted_AVG | 0.287 | 0.010 |
| predicted_BB | 0.214 | 0.014 |
| predicted_H | 0.930 | 0.060 |
| predicted_HBP | 0.015 | - |
| predicted_HR | 0.197 | 0.017 |
| predicted_OBP | 0.349 | 0.005 |
| predicted_R | 0.259 | 0.059 |
| predicted_RBI | 0.585 | 0.034 |
| predicted_SLG | 0.527 | 0.018 |
| predicted_SO | 1.238 | -0.062 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.121 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.240 | 0.000 |
| predicted_AVG | 0.272 | -0.015 |
| predicted_BB | 0.210 | -0.003 |
| predicted_H | 0.880 | -0.050 |
| predicted_HBP | 0.015 | 0.000 |
| predicted_HR | 0.187 | -0.010 |
| predicted_OBP | 0.316 | -0.033 |
| predicted_R | 0.235 | -0.024 |
| predicted_RBI | 0.531 | -0.053 |
| predicted_SLG | 0.483 | -0.043 |
| predicted_SO | 1.256 | 0.019 |
AB rounded to 3 (raw=3.24), rates preserved: AVG=0.272 HR/AB=0.058
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.121 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.240 |
| predicted_AVG | 0.333 | 0.061 |
| predicted_BB | 0.000 | -0.210 |
| predicted_H | 1.000 | 0.120 |
| predicted_HR | 0.000 | -0.187 |
| predicted_OBP | 0.333 | 0.017 |
| predicted_R | 0.000 | -0.235 |
| predicted_RBI | 0.000 | -0.531 |
| predicted_SLG | 0.333 | -0.150 |
| predicted_SO | 1.000 | -0.256 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 7.000 | 1.000 | 0.000 | 2.000 | 5.000 | 2.000 | 1.000 | 6.000 | 0.4667 | 0.5000 | 0.9333 | 0.4667 | 0.1333 | 0.3333 | 0.0667 | 0.4000 |
| last_10 | 0.20 | 10 | - | 31.000 | 8.000 | 1.000 | 0.000 | 2.000 | 5.000 | 2.000 | 2.000 | 13.000 | 0.2581 | 0.3030 | 0.4839 | 0.2581 | 0.0645 | 0.1613 | 0.0645 | 0.4194 |
| season | 0.60 | 10 | - | 31.000 | 8.000 | 1.000 | 0.000 | 2.000 | 5.000 | 2.000 | 2.000 | 13.000 | 0.2581 | 0.3030 | 0.4839 | 0.2581 | 0.0645 | 0.1613 | 0.0645 | 0.4194 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1690 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.4380 |
| predicted_AVG | 0.3091 |
| predicted_BB | 0.2440 |
| predicted_H | 1.0630 |
| predicted_HBP | 0.0150 |
| predicted_HR | 0.2340 |
| predicted_OBP | 0.3596 |
| predicted_R | 0.3900 |
| predicted_RBI | 0.6610 |
| predicted_SLG | 0.5663 |
| predicted_SO | 1.0990 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.1690 | 0.1214 | model_form_blend |
| predicted_3B | 0.0000 | 0.0060 | 0.0019 | model_form_blend |
| predicted_AB | 3.1500 | 3.4380 | 3.2395 | model_form_blend |
| predicted_AVG | 0.2770 | 0.3091 | 0.2870 | model_form_blend |
| predicted_BB | 0.2000 | 0.2440 | 0.2137 | model_form_blend |
| predicted_H | 0.8700 | 1.0630 | 0.9300 | model_form_blend |
| predicted_HBP | - | 0.0150 | 0.0150 | form_only |
| predicted_HR | 0.1800 | 0.2340 | 0.1968 | model_form_blend |
| predicted_OBP | 0.3450 | 0.3596 | 0.3495 | model_form_blend |
| predicted_R | 0.2000 | 0.3900 | 0.2590 | model_form_blend |
| predicted_RBI | 0.5500 | 0.6610 | 0.5845 | model_form_blend |
| predicted_SLG | 0.5090 | 0.5663 | 0.5268 | model_form_blend |
| predicted_SO | 1.3000 | 1.0990 | 1.2375 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 33 |
| Season rows before report date | 33 |
| Report year | 2026 |
| Profile rows used | 10 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.258 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260616_CLE@MIL |
| game_type | full |
| mlbID | 672356 |
| playerID | 672356 |
| playerName | Gabriel Arias |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-16 |
| sl_k_percent | 38.9 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.312 |
| sl_xwoba | 0.305 |
| sl_xba | 0.235 |
| sl_xslg | 0.423 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 15.0 |
| sl_hard_hit_percent | 55.0 |
| sl_exit_velocity_avg | 95.0 |
| sl_launch_angle_avg | 5.5 |
| sl_whiff_percent | 42.4 |
| sl_swing_percent | 45.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.000 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 4.000 | 3.000 | Hitting_AB | 1.556 | 2.000 | 2.444 | 2.000 |
| predicted_AVG | 0.300 | 0.000 | 0.333 | Hitting_AVG | 0.214 | 0.000 | -0.214 | 0.000 |
| predicted_BB | 0.893 | 0.000 | 1.000 | Hitting_BB | 0.667 | 1.000 | -0.667 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.190 | 0.000 | 1.000 | Hitting_H | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.359 | 0.000 | 0.500 | Hitting_OBP | 0.476 | 0.333 | -0.476 | -0.333 |
| predicted_R | 0.536 | 0.000 | 1.000 | Hitting_R | 0.333 | 1.000 | -0.333 | -1.000 |
| predicted_RBI | 0.130 | 0.000 | 0.000 | Hitting_RBI | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_SLG | 0.358 | 0.000 | 0.333 | Hitting_SLG | 0.214 | 0.000 | -0.214 | 0.000 |
| predicted_SO | 1.786 | 1.000 | 2.000 | Hitting_SO | 1.111 | 2.000 | -0.111 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 2.5000 -> 4.0000 (boost 1.5000, better) |
| Biggest Deboost | predicted_BB: 0.8930 -> 0.0000 (deboost -0.8930, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 4 | 2 | 5 | 1 | predicted_H: 0.1900 -> 0.3649 (boost 0.1749, better) | predicted_SO: 1.7860 -> 1.6089 (deboost -0.1771, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 0 | 4 | 0 | 4 | - | predicted_SLG: 0.3601 -> 0.1828 (deboost -0.1773, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_SO: 1.6335 -> 2.0000 (boost 0.3665, worse) | predicted_H: 0.3455 -> 0.0000 (deboost -0.3455, worse) | AB rounded to 3 (raw=2.65), rates preserved: AVG=0.130 HR/AB=0.014 |
| 5 | consistency_constraints | 2 | 2 | 0 | 2 | 0 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1302 -> 0.3330 (boost 0.2028, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 1 | 4 | 2 | 3 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1302 (deboost -0.2028, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656413",
"player_name": "Stuart Fairchild",
"position": "CF",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.3,
"predicted_BB": 0.893,
"predicted_H": 0.19,
"predicted_HR": 0.03,
"predicted_OBP": 0.359,
"predicted_R": 0.536,
"predicted_RBI": 0.13,
"predicted_SLG": 0.358,
"predicted_SO": 1.786
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0247,
"predicted_3B": 0.0019,
"predicted_AB": 2.6543,
"predicted_AVG": 0.2918,
"predicted_BB": 0.8543,
"predicted_H": 0.3649,
"predicted_HBP": 0.139,
"predicted_HR": 0.0391,
"predicted_OBP": 0.3732,
"predicted_R": 0.5549,
"predicted_RBI": 0.1942,
"predicted_SLG": 0.3601,
"predicted_SO": 1.6089
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0247,
"delta": 0.0247,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0019,
"delta": 0.0019,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.6543,
"delta": 0.1543,
"percent_delta": 0.0617,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.3,
"after": 0.2918,
"delta": -0.0082,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.893,
"after": 0.8543,
"delta": -0.0387,
"percent_delta": -0.0433,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.3649,
"delta": 0.1749,
"percent_delta": 0.9205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0391,
"delta": 0.0091,
"percent_delta": 0.3033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.359,
"after": 0.3732,
"delta": 0.0142,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.536,
"after": 0.5549,
"delta": 0.0189,
"percent_delta": 0.0353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.1942,
"delta": 0.0642,
"percent_delta": 0.4938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.3601,
"delta": 0.0021,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.786,
"after": 1.6089,
"delta": -0.1771,
"percent_delta": -0.0992,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.19,
"after": 0.3649,
"delta": 0.1749,
"percent_delta": 0.9205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.786,
"after": 1.6089,
"delta": -0.1771,
"percent_delta": -0.0992,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 7,
"season": 7
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0247,
"predicted_3B": 0.0019,
"predicted_AB": 2.6543,
"predicted_AVG": 0.1302,
"predicted_BB": 0.8412,
"predicted_H": 0.3455,
"predicted_HBP": 0.139,
"predicted_HR": 0.0371,
"predicted_OBP": 0.3395,
"predicted_R": 0.5046,
"predicted_RBI": 0.1766,
"predicted_SLG": 0.1828,
"predicted_SO": 1.6335
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0247,
"after": 0.0247,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0019,
"after": 0.0019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6543,
"after": 2.6543,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2918,
"after": 0.1302,
"delta": -0.1616,
"percent_delta": -0.5538,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8543,
"after": 0.8412,
"delta": -0.0131,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3649,
"after": 0.3455,
"delta": -0.0194,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.139,
"after": 0.139,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0391,
"after": 0.0371,
"delta": -0.002,
"percent_delta": -0.0512,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3732,
"after": 0.3395,
"delta": -0.0337,
"percent_delta": -0.0903,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5549,
"after": 0.5046,
"delta": -0.0503,
"percent_delta": -0.0906,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.1942,
"after": 0.1766,
"delta": -0.0176,
"percent_delta": -0.0906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3601,
"after": 0.1828,
"delta": -0.1773,
"percent_delta": -0.4924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6089,
"after": 1.6335,
"delta": 0.0246,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3601,
"after": 0.1828,
"delta": -0.1773,
"percent_delta": -0.4924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.65), rates preserved: AVG=0.130 HR/AB=0.014",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0247,
"after": 0.0,
"delta": -0.0247,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0019,
"after": 0.0,
"delta": -0.0019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6543,
"after": 3.0,
"delta": 0.3457,
"percent_delta": 0.1302,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8412,
"after": 1.0,
"delta": 0.1588,
"percent_delta": 0.1888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3455,
"after": 0.0,
"delta": -0.3455,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.139,
"after": 0.0,
"delta": -0.139,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0371,
"after": 0.0,
"delta": -0.0371,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1766,
"after": 0.0,
"delta": -0.1766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6335,
"after": 2.0,
"delta": 0.3665,
"percent_delta": 0.2244,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.6335,
"after": 2.0,
"delta": 0.3665,
"percent_delta": 0.2244,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.3455,
"after": 0.0,
"delta": -0.3455,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5046,
"after": 1.0,
"delta": 0.4954,
"percent_delta": 0.9818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.5,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1302,
"after": 0.333,
"delta": 0.2028,
"percent_delta": 1.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3395,
"after": 0.5,
"delta": 0.1605,
"percent_delta": 0.4728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.1828,
"after": 0.333,
"delta": 0.1502,
"percent_delta": 0.8217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1302,
"after": 0.333,
"delta": 0.2028,
"percent_delta": 1.5576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1302,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3395,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1828,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1302,
"delta": -0.2028,
"percent_delta": -0.6091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.5,
"after": 0.3395,
"delta": -0.1605,
"percent_delta": -0.321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.1828,
"delta": -0.1502,
"percent_delta": -0.451,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1302,
"delta": -0.2028,
"percent_delta": -0.6091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 4.0,
"delta": 1.5,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.3,
"after": 0.1302,
"delta": -0.1698,
"percent_delta": -0.566,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.893,
"after": 0.0,
"delta": -0.893,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.359,
"after": 0.3395,
"delta": -0.0195,
"percent_delta": -0.0543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.536,
"after": 0.0,
"delta": -0.536,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.1828,
"delta": -0.1752,
"percent_delta": -0.4894,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.786,
"after": 1.0,
"delta": -0.786,
"percent_delta": -0.4401,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 4.0,
"delta": 1.5,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.893,
"after": 0.0,
"delta": -0.893,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.300 | - |
| predicted_BB | 0.893 | - |
| predicted_H | 0.190 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.359 | - |
| predicted_R | 0.536 | - |
| predicted_RBI | 0.130 | - |
| predicted_SLG | 0.358 | - |
| predicted_SO | 1.786 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.025 | 0.025 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.654 | 0.154 |
| predicted_AVG | 0.292 | -0.008 |
| predicted_BB | 0.854 | -0.039 |
| predicted_H | 0.365 | 0.175 |
| predicted_HBP | 0.139 | - |
| predicted_HR | 0.039 | 0.009 |
| predicted_OBP | 0.373 | 0.014 |
| predicted_R | 0.555 | 0.019 |
| predicted_RBI | 0.194 | 0.064 |
| predicted_SLG | 0.360 | 0.002 |
| predicted_SO | 1.609 | -0.177 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.025 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.654 | 0.000 |
| predicted_AVG | 0.130 | -0.162 |
| predicted_BB | 0.841 | -0.013 |
| predicted_H | 0.345 | -0.019 |
| predicted_HBP | 0.139 | 0.000 |
| predicted_HR | 0.037 | -0.002 |
| predicted_OBP | 0.340 | -0.034 |
| predicted_R | 0.505 | -0.050 |
| predicted_RBI | 0.177 | -0.018 |
| predicted_SLG | 0.183 | -0.177 |
| predicted_SO | 1.633 | 0.025 |
AB rounded to 3 (raw=2.65), rates preserved: AVG=0.130 HR/AB=0.014
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 1.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 2.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.025 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.346 |
| predicted_AVG | 0.333 | 0.203 |
| predicted_BB | 1.000 | 0.159 |
| predicted_H | 1.000 | 0.655 |
| predicted_HR | 0.000 | -0.037 |
| predicted_OBP | 0.500 | 0.160 |
| predicted_R | 1.000 | 0.495 |
| predicted_RBI | 0.000 | -0.177 |
| predicted_SLG | 0.333 | 0.150 |
| predicted_SO | 2.000 | 0.367 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 9.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 5.000 | 5.000 | 0.3333 | 0.6000 | 0.3333 | 0.3333 | 0.0000 | 0.1111 | 0.5556 | 0.5556 |
| last_10 | 0.20 | 7 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 5.000 | 10.000 | 0.2143 | 0.4500 | 0.2143 | 0.2143 | 0.0000 | 0.0714 | 0.3571 | 0.7143 |
| season | 0.60 | 7 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 5.000 | 10.000 | 0.2143 | 0.4500 | 0.2143 | 0.2143 | 0.0000 | 0.0714 | 0.3571 | 0.7143 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0900 |
| predicted_3B | 0.0070 |
| predicted_AB | 3.0620 |
| predicted_AVG | 0.2700 |
| predicted_BB | 0.7520 |
| predicted_H | 0.8270 |
| predicted_HBP | 0.1390 |
| predicted_HR | 0.0630 |
| predicted_OBP | 0.4109 |
| predicted_R | 0.6050 |
| predicted_RBI | 0.3640 |
| predicted_SLG | 0.3656 |
| predicted_SO | 1.1410 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0900 | 0.0247 | model_form_blend |
| predicted_3B | 0.0000 | 0.0070 | 0.0019 | model_form_blend |
| predicted_AB | 2.5000 | 3.0620 | 2.6543 | model_form_blend |
| predicted_AVG | 0.3000 | 0.2700 | 0.2918 | model_form_blend |
| predicted_BB | 0.8930 | 0.7520 | 0.8543 | model_form_blend |
| predicted_H | 0.1900 | 0.8270 | 0.3649 | model_form_blend |
| predicted_HBP | - | 0.1390 | 0.1390 | form_only |
| predicted_HR | 0.0300 | 0.0630 | 0.0391 | model_form_blend |
| predicted_OBP | 0.3590 | 0.4109 | 0.3732 | model_form_blend |
| predicted_R | 0.5360 | 0.6050 | 0.5549 | model_form_blend |
| predicted_RBI | 0.1300 | 0.3640 | 0.1942 | model_form_blend |
| predicted_SLG | 0.3580 | 0.3656 | 0.3601 | model_form_blend |
| predicted_SO | 1.7860 | 1.1410 | 1.6089 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 9 |
| Season rows before report date | 9 |
| Report year | 2026 |
| Profile rows used | 7 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.214 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF-RF |
| gameID | 20260616_CLE@MIL |
| game_type | full |
| mlbID | 656413 |
| playerID | 656413 |
| playerName | Stuart Fairchild |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-16 |
| sl_k_percent | 47.6 |
| sl_bb_percent | 28.6 |
| sl_woba | 0.363 |
| sl_xwoba | 0.32 |
| sl_xba | 0.109 |
| sl_xslg | 0.187 |
| sl_sweet_spot_percent | 0.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 96.0 |
| sl_launch_angle_avg | 14.0 |
| sl_whiff_percent | 66.7 |
| sl_swing_percent | 42.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.188 | 0.000 | 0.000 | Hitting_2B | 0.213 | 0.000 | -0.213 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.000 | 3.000 | 3.000 | Hitting_AB | 3.011 | 3.000 | -0.011 | 0.000 |
| predicted_AVG | 0.286 | 0.333 | 0.333 | Hitting_AVG | 0.261 | 0.333 | 0.072 | 0.000 |
| predicted_BB | 0.312 | 0.000 | 0.000 | Hitting_BB | 0.330 | 0.000 | -0.330 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_H | 0.690 | 1.000 | 1.000 | Hitting_H | 0.787 | 1.000 | 0.213 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_OBP | 0.338 | 0.333 | 0.333 | Hitting_OBP | 0.330 | 0.333 | 0.003 | 0.000 |
| predicted_R | 0.375 | 1.000 | 0.000 | Hitting_R | 0.521 | 0.000 | 0.479 | 1.000 |
| predicted_RBI | 0.350 | 1.000 | 0.000 | Hitting_RBI | 0.234 | 0.000 | 0.766 | 1.000 |
| predicted_SLG | 0.394 | 0.333 | 0.333 | Hitting_SLG | 0.385 | 0.333 | -0.052 | 0.000 |
| predicted_SO | 0.562 | 1.000 | 1.000 | Hitting_SO | 0.585 | 0.000 | 0.415 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_RBI: 0.3500 -> 1.0000 (boost 0.6500, better) |
| Biggest Deboost | predicted_BB: 0.3120 -> 0.0000 (deboost -0.3120, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 4 | 0 | 4 | 0 | predicted_H: 0.6900 -> 0.7988 (boost 0.1088, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2910 -> 0.2442 (deboost -0.0468, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.5550 -> 1.0000 (boost 0.4450, worse) | predicted_RBI: 0.3397 -> 0.0000 (deboost -0.3397, worse) | AB rounded to 3 (raw=3.10), rates preserved: AVG=0.244 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3144 -> 0.0000 (deboost -0.3144, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2442 -> 0.3330 (boost 0.0888, better) | predicted_SLG: 0.3583 -> 0.3330 (deboost -0.0253, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3583 (boost 0.0253, better) | predicted_AVG: 0.3330 -> 0.2442 (deboost -0.0888, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "595978",
"player_name": "Austin Hedges",
"position": "C",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.188,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.286,
"predicted_BB": 0.312,
"predicted_H": 0.69,
"predicted_HR": 0.06,
"predicted_OBP": 0.338,
"predicted_R": 0.375,
"predicted_RBI": 0.35,
"predicted_SLG": 0.394,
"predicted_SO": 0.562
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2023,
"predicted_3B": 0.0012,
"predicted_AB": 3.0973,
"predicted_AVG": 0.291,
"predicted_BB": 0.2861,
"predicted_H": 0.7988,
"predicted_HBP": 0.006,
"predicted_HR": 0.0523,
"predicted_OBP": 0.3425,
"predicted_R": 0.3457,
"predicted_RBI": 0.3735,
"predicted_SLG": 0.399,
"predicted_SO": 0.5466
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.2023,
"delta": 0.0143,
"percent_delta": 0.0761,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0012,
"delta": 0.0012,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0973,
"delta": 0.0973,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.291,
"delta": 0.005,
"percent_delta": 0.0175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.312,
"after": 0.2861,
"delta": -0.0259,
"percent_delta": -0.083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 0.7988,
"delta": 0.1088,
"percent_delta": 0.1577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0523,
"delta": -0.0077,
"percent_delta": -0.1283,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3425,
"delta": 0.0045,
"percent_delta": 0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.375,
"after": 0.3457,
"delta": -0.0293,
"percent_delta": -0.0781,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.3735,
"delta": 0.0235,
"percent_delta": 0.0671,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.399,
"delta": 0.005,
"percent_delta": 0.0127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.562,
"after": 0.5466,
"delta": -0.0154,
"percent_delta": -0.0274,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.69,
"after": 0.7988,
"delta": 0.1088,
"percent_delta": 0.1577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 32
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2023,
"predicted_3B": 0.0012,
"predicted_AB": 3.0973,
"predicted_AVG": 0.2442,
"predicted_BB": 0.2817,
"predicted_H": 0.7563,
"predicted_HBP": 0.006,
"predicted_HR": 0.0496,
"predicted_OBP": 0.3072,
"predicted_R": 0.3144,
"predicted_RBI": 0.3397,
"predicted_SLG": 0.3583,
"predicted_SO": 0.555
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2023,
"after": 0.2023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0973,
"after": 3.0973,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.2442,
"delta": -0.0468,
"percent_delta": -0.1608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2861,
"after": 0.2817,
"delta": -0.0044,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7988,
"after": 0.7563,
"delta": -0.0425,
"percent_delta": -0.0532,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0523,
"after": 0.0496,
"delta": -0.0027,
"percent_delta": -0.0516,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3425,
"after": 0.3072,
"delta": -0.0353,
"percent_delta": -0.1031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3457,
"after": 0.3144,
"delta": -0.0313,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3735,
"after": 0.3397,
"delta": -0.0338,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.3583,
"delta": -0.0407,
"percent_delta": -0.102,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5466,
"after": 0.555,
"delta": 0.0084,
"percent_delta": 0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.2442,
"delta": -0.0468,
"percent_delta": -0.1608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.10), rates preserved: AVG=0.244 HR/AB=0.016",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2023,
"after": 0.0,
"delta": -0.2023,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0,
"delta": -0.0012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0973,
"after": 3.0,
"delta": -0.0973,
"percent_delta": -0.0314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2817,
"after": 0.0,
"delta": -0.2817,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7563,
"after": 1.0,
"delta": 0.2437,
"percent_delta": 0.3222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0496,
"after": 0.0,
"delta": -0.0496,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3397,
"after": 0.0,
"delta": -0.3397,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.555,
"after": 1.0,
"delta": 0.445,
"percent_delta": 0.8018,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.555,
"after": 1.0,
"delta": 0.445,
"percent_delta": 0.8018,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3397,
"after": 0.0,
"delta": -0.3397,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3144,
"after": 0.0,
"delta": -0.3144,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3144,
"after": 0.0,
"delta": -0.3144,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2442,
"after": 0.333,
"delta": 0.0888,
"percent_delta": 0.3636,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3072,
"after": 0.333,
"delta": 0.0258,
"percent_delta": 0.084,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3583,
"after": 0.333,
"delta": -0.0253,
"percent_delta": -0.0706,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2442,
"after": 0.333,
"delta": 0.0888,
"percent_delta": 0.3636,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3583,
"after": 0.333,
"delta": -0.0253,
"percent_delta": -0.0706,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2442,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3072,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3583,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2442,
"delta": -0.0888,
"percent_delta": -0.2667,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3072,
"delta": -0.0258,
"percent_delta": -0.0775,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3583,
"delta": 0.0253,
"percent_delta": 0.0761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3583,
"delta": 0.0253,
"percent_delta": 0.0761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2442,
"delta": -0.0888,
"percent_delta": -0.2667,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2442,
"delta": -0.0418,
"percent_delta": -0.1462,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.312,
"after": 0.0,
"delta": -0.312,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.0,
"delta": 0.31,
"percent_delta": 0.4493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3072,
"delta": -0.0308,
"percent_delta": -0.0911,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.375,
"after": 1.0,
"delta": 0.625,
"percent_delta": 1.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 1.0,
"delta": 0.65,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.3583,
"delta": -0.0357,
"percent_delta": -0.0906,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.562,
"after": 1.0,
"delta": 0.438,
"percent_delta": 0.7794,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.35,
"after": 1.0,
"delta": 0.65,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.312,
"after": 0.0,
"delta": -0.312,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.188 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.000 | - |
| predicted_AVG | 0.286 | - |
| predicted_BB | 0.312 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.338 | - |
| predicted_R | 0.375 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.394 | - |
| predicted_SO | 0.562 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.202 | 0.014 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.097 | 0.097 |
| predicted_AVG | 0.291 | 0.005 |
| predicted_BB | 0.286 | -0.026 |
| predicted_H | 0.799 | 0.109 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.052 | -0.008 |
| predicted_OBP | 0.343 | 0.005 |
| predicted_R | 0.346 | -0.029 |
| predicted_RBI | 0.373 | 0.024 |
| predicted_SLG | 0.399 | 0.005 |
| predicted_SO | 0.547 | -0.015 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.202 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.097 | 0.000 |
| predicted_AVG | 0.244 | -0.047 |
| predicted_BB | 0.282 | -0.004 |
| predicted_H | 0.756 | -0.042 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.050 | -0.003 |
| predicted_OBP | 0.307 | -0.035 |
| predicted_R | 0.314 | -0.031 |
| predicted_RBI | 0.340 | -0.034 |
| predicted_SLG | 0.358 | -0.041 |
| predicted_SO | 0.555 | 0.008 |
AB rounded to 3 (raw=3.10), rates preserved: AVG=0.244 HR/AB=0.016
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.202 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.097 |
| predicted_AVG | 0.333 | 0.089 |
| predicted_BB | 0.000 | -0.282 |
| predicted_H | 1.000 | 0.244 |
| predicted_HR | 0.000 | -0.050 |
| predicted_OBP | 0.333 | 0.026 |
| predicted_R | 0.000 | -0.314 |
| predicted_RBI | 0.000 | -0.340 |
| predicted_SLG | 0.333 | -0.025 |
| predicted_SO | 1.000 | 0.445 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 7.000 | 2.000 | 0.000 | 0.000 | 3.000 | 0.000 | 0.000 | 1.000 | 0.4375 | 0.4375 | 0.5625 | 0.4375 | 0.0000 | 0.1875 | 0.0000 | 0.0625 |
| last_10 | 0.20 | 10 | - | 32.000 | 10.000 | 2.000 | 0.000 | 0.000 | 5.000 | 1.000 | 2.000 | 3.000 | 0.3125 | 0.3529 | 0.3750 | 0.3125 | 0.0000 | 0.1562 | 0.0625 | 0.0938 |
| season | 0.60 | 32 | - | 96.000 | 26.000 | 6.000 | 0.000 | 1.000 | 9.000 | 12.000 | 10.000 | 18.000 | 0.2708 | 0.3364 | 0.3646 | 0.2708 | 0.0104 | 0.0938 | 0.1042 | 0.1875 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2250 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.2520 |
| predicted_AVG | 0.2989 |
| predicted_BB | 0.2450 |
| predicted_H | 0.9720 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0400 |
| predicted_OBP | 0.3497 |
| predicted_R | 0.2990 |
| predicted_RBI | 0.4110 |
| predicted_SLG | 0.4070 |
| predicted_SO | 0.5220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1880 | 0.2250 | 0.2023 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.0000 | 3.2520 | 3.0973 | model_form_blend |
| predicted_AVG | 0.2860 | 0.2989 | 0.2910 | model_form_blend |
| predicted_BB | 0.3120 | 0.2450 | 0.2861 | model_form_blend |
| predicted_H | 0.6900 | 0.9720 | 0.7988 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0600 | 0.0400 | 0.0523 | model_form_blend |
| predicted_OBP | 0.3380 | 0.3497 | 0.3425 | model_form_blend |
| predicted_R | 0.3750 | 0.2990 | 0.3457 | model_form_blend |
| predicted_RBI | 0.3500 | 0.4110 | 0.3735 | model_form_blend |
| predicted_SLG | 0.3940 | 0.4070 | 0.3990 | model_form_blend |
| predicted_SO | 0.5620 | 0.5220 | 0.5466 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 94 |
| Season rows before report date | 94 |
| Report year | 2026 |
| Profile rows used | 32 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.271 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260616_CLE@MIL |
| game_type | full |
| mlbID | 595978 |
| playerID | 595978 |
| playerName | Austin Hedges |
| pos | C |
| started | True |
| startingPosition | C |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-16 |
| sl_k_percent | 16.4 |
| sl_bb_percent | 9.1 |
| sl_woba | 0.314 |
| sl_xwoba | 0.286 |
| sl_xba | 0.246 |
| sl_xslg | 0.32 |
| sl_sweet_spot_percent | 28.0 |
| sl_barrel_batted_rate | 2.4 |
| sl_hard_hit_percent | 30.5 |
| sl_exit_velocity_avg | 86.0 |
| sl_launch_angle_avg | 6.4 |
| sl_whiff_percent | 22.8 |
| sl_swing_percent | 45.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.786 | 3.000 | -0.786 | -2.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 1.714 | 4.000 | 0.286 | -2.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 4.500 | 5.000 | -2.500 | -3.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.529 | 5.200 | 0.471 | 0.800 |
| predicted_SO | 8.000 | 8.000 | 8.000 | Pitching_SO | 5.857 | 4.000 | 2.143 | 4.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 0 | 0 | 0 | 0 | 0 | - | - | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "800048",
"player_name": "Parker Messick",
"position": "Starter",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 6.0,
"predicted_SO": 8.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 6.0,
"predicted_SO": 8.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 6.0,
"predicted_R": 2.0,
"predicted_SO": 8.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 8.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | 0.000 |
| predicted_ER | 2.000 | 0.000 |
| predicted_H | 2.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 6.000 | 0.000 |
| predicted_SO | 8.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 27.000 | 10.000 | 24.000 | 11.000 | 24.000 | 3.000 | 3.3333 | 1.2963 | 0.3704 | 0.8889 | 0.4074 | 0.8889 | 0.1111 |
| last_10 | 0.35 | 10 | 55.000 | 21.000 | 50.000 | 18.000 | 57.000 | 7.000 | 3.4364 | 1.2364 | 0.3818 | 0.9091 | 0.3273 | 1.0364 | 0.1273 |
| season | 0.20 | 14 | 80.200 | 24.000 | 63.000 | 25.000 | 82.000 | 8.000 | 2.6777 | 1.0909 | 0.2975 | 0.7810 | 0.3099 | 1.0165 | 0.0992 |
| Metric | Value |
|---|---|
| predicted_BB | 2.0050 |
| predicted_ER | 2.2060 |
| predicted_ERA | 3.5725 |
| predicted_H | 5.0050 |
| predicted_HR | 0.6820 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.3280 |
| predicted_WHIP | 1.2614 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.0050 | 1.5415 | model_form_blend |
| predicted_ER | 2.0000 | 2.2060 | 2.1110 | model_form_blend |
| predicted_ERA | - | 3.5725 | 3.5725 | form_only |
| predicted_H | 2.0000 | 5.0050 | 3.6191 | model_form_blend |
| predicted_HR | 1.0000 | 0.6820 | 0.8287 | model_form_blend |
| predicted_IP | 6.0000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 8.0000 | 5.3280 | 6.5603 | model_form_blend |
| predicted_WHIP | - | 1.2614 | 1.2614 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 6.0 |
| H | 2 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 8 |
| HR | 1 |
| BF | 21 |
| Pitches | 95 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 3 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 25 |
| Pitching_ER | 4 |
| Pitching_ERA | 2.68 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 8 |
| Pitching_H | 5 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.2 |
| Pitching_Pitches | 100 |
| Pitching_R | 5 |
| Pitching_SO | 4 |
| Pitching_Strikes | 63 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260610_NYY@CLE |
| game_type | full |
| mlbID | 800048 |
| playerID | 800048 |
| playerName | Parker Messick |
| pos | P |
| started | True |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.6 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.28 |
| sl_xwoba | 0.288 |
| sl_sweet_spot_percent | 34.9 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 34.0 |
| sl_whiff_percent | 27.1 |
| sl_swing_percent | 48.8 |
| sl_avg_best_speed | 76.156112308 |
| sl_avg_hyper_speed | 93.526504686 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.194 | 1.000 | 0.806 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.290 | 0.000 | -0.290 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.903 | 1.000 | -0.903 | -1.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 1.016 | 1.100 | 0.184 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.581 | 2.000 | -1.581 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "671922",
"player_name": "Cade Smith",
"position": "Middle Reliever",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.2,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.000 | 1.000 | 4.000 | 1.000 | 10.000 | 0.000 | 1.5000 | 0.8333 | 0.1667 | 0.6667 | 0.1667 | 1.6667 | 0.0000 |
| last_10 | 0.35 | 10 | 11.000 | 2.000 | 9.000 | 1.000 | 18.000 | 0.000 | 1.6364 | 0.9091 | 0.1818 | 0.8182 | 0.0909 | 1.6364 | 0.0000 |
| season | 0.20 | 31 | 32.200 | 9.000 | 28.000 | 6.000 | 49.000 | 1.000 | 2.4796 | 1.0408 | 0.2755 | 0.8571 | 0.1837 | 1.5000 | 0.0306 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2590 |
| predicted_ER | 0.3550 |
| predicted_ERA | 2.9471 |
| predicted_H | 0.9240 |
| predicted_HR | 0.0730 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.4370 |
| predicted_WHIP | 1.0911 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2590 | 0.6546 | model_form_blend |
| predicted_ER | 0.0000 | 0.3550 | 0.1655 | model_form_blend |
| predicted_ERA | - | 2.9471 | 2.9471 | form_only |
| predicted_H | 0.0000 | 0.9240 | 0.4307 | model_form_blend |
| predicted_HR | 0.0000 | 0.0730 | 0.0340 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.4370 | 0.6698 | model_form_blend |
| predicted_WHIP | - | 1.0911 | 1.0911 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 6 |
| Pitches | 25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.48 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 31 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260613_DET@CLE |
| game_type | full |
| mlbID | 671922 |
| playerID | 671922 |
| playerName | Cade Smith |
| pos | P |
| started | False |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-13 |
| sl_k_percent | 38.0 |
| sl_bb_percent | 4.7 |
| sl_woba | 0.255 |
| sl_xwoba | 0.239 |
| sl_sweet_spot_percent | 33.8 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 44.4 |
| sl_whiff_percent | 35.4 |
| sl_swing_percent | 50.3 |
| sl_avg_best_speed | 82.493130278 |
| sl_avg_hyper_speed | 95.021417639 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.304 | 0.000 | -0.304 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.391 | 1.000 | -0.391 | -1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.957 | 1.000 | 0.043 | 0.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.743 | 1.000 | -0.643 | -0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.609 | 0.000 | 0.391 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "683769",
"player_name": "Hunter Gaddis",
"position": "Middle Reliever",
"team": "CLE",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 2.000 | 4.000 | 1.000 | 0.000 | 1.000 | 4.1538 | 1.1538 | 0.4615 | 0.9231 | 0.2308 | 0.0000 | 0.2308 |
| last_10 | 0.35 | 10 | 9.100 | 2.000 | 8.000 | 2.000 | 6.000 | 1.000 | 1.9286 | 1.0714 | 0.2143 | 0.8571 | 0.2143 | 0.6429 | 0.1071 |
| season | 0.20 | 22 | 19.200 | 8.000 | 20.000 | 5.000 | 14.000 | 3.000 | 3.6610 | 1.2712 | 0.4068 | 1.0170 | 0.2542 | 0.7119 | 0.1525 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1910 |
| predicted_ER | 0.2760 |
| predicted_ERA | 3.9681 |
| predicted_H | 0.5940 |
| predicted_HR | 0.0980 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.4300 |
| predicted_WHIP | 1.2544 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1910 | 0.0788 | model_form_blend |
| predicted_ER | 0.0000 | 0.2760 | 0.1139 | model_form_blend |
| predicted_ERA | - | 3.9681 | 3.9681 | form_only |
| predicted_H | 1.0000 | 0.5940 | 0.8324 | model_form_blend |
| predicted_HR | 0.0000 | 0.0980 | 0.0405 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.4300 | 0.7647 | model_form_blend |
| predicted_WHIP | - | 1.2544 | 1.2544 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 23 |
| Season rows before report date | 23 |
| Report year | 2026 |
| Profile rows used | 22 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 2 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.12 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_CLE@MIL |
| game_type | full |
| mlbID | 683769 |
| playerID | 683769 |
| playerName | Hunter Gaddis |
| pos | P |
| started | False |
| startingPosition | P |
| team | CLE |
| teamID | 8 |
| game_date | 2026-06-16 |
| sl_k_percent | 15.7 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.324 |
| sl_xwoba | 0.331 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 7.5 |
| sl_hard_hit_percent | 29.9 |
| sl_whiff_percent | 27.4 |
| sl_swing_percent | 48.7 |
| sl_avg_best_speed | 76.686317879 |
| sl_avg_hyper_speed | 92.57500197 |
| Field | Value |
|---|---|
| Pitcher | Shane Drohan |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.2127 |
| ESPN Rank | 230 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0486 |
| Avg Velo | 90.5974 |
| Avg Spin | 2516.0834 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 1 |
| Pre H | 4 |
| Pre BB | 3 |
| Pre SO | 5 |
| Season ERA | 3.5859 |
| Season WHIP | 1.1719 |
| Role Avg IP | 4.5000 |
| Recent Avg IP | 4.5000 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"opponent": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"edges": {
"quality_edge": 0.4011,
"offense_edge": 0.1608,
"opponent_offense_edge": -0.0805,
"defense_strength": 0.2135,
"opponent_defense_weakness": -0.0718,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0257,
"run_prevention": 0.9457,
"strikeout": 1.0185
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "675660",
"profile": {
"available": true,
"pitcher_id": "675660",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 113.0,
"k_percent": 24.9,
"bb_percent": 6.2,
"woba": 0.285,
"xwoba": 0.273,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 37.7,
"avg_best_speed": 77.19,
"avg_hyper_speed": 93.7911,
"whiff_percent": 29.0,
"swing_percent": 50.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5542,
"command_and_miss": 0.4693,
"regression_edge": 0.3429,
"xwoba_edge": 1.2,
"barrel_edge": -0.3778,
"hard_hit_edge": 0.0857,
"whiff_edge": 0.4714,
"bb_edge": 0.75,
"pitch_design_score": 0.0486
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "675660",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 35,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 35,
"pitch_usage": 0.0,
"release_speed": 90.59743564984379,
"release_spin_rate": 2516.0834298625896,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 35,
"pitch_usage": 0.0,
"release_speed": 90.59743564984379,
"release_spin_rate": 2516.0834298625896,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.5974,
"release_spin_rate": 2516.0834,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0486,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.3474,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.2127,
"sample_weight": 0.452,
"run_prevention_factor": 0.9819,
"strikeout_factor": 1.0147,
"walk_factor": 0.9729,
"homer_factor": 0.9958,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "675660",
"espn_id": 4315203,
"player_name": "Shane Drohan",
"team": "MIL",
"role": "pitcher",
"espn_rank": 230,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 230,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 1.0,
"qs_rank": 134,
"era_value": 3.5859,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 2.0,
"hld_rank": 165,
"ip_value": 42.2,
"ip_rank": 151,
"h_value": 39.0,
"h_rank": 152,
"er_value": 17.0,
"er_rank": 186,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 44.0,
"k_rank": 138,
"k_per_9_value": 9.28125,
"k_per_9_rank": 24,
"whip_value": 1.1718,
"whip_rank": null,
"war_value": 0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 0.9918,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 0.9918,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9878,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 0.9981,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0066,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 31.0,
"ER": 12,
"H": 27,
"BB": 6,
"SO": 35,
"HR": 3,
"ERA": 3.483870967741936,
"WHIP": 1.0645161290322582,
"K9": 10.161290322580646,
"HR9": 0.870967741935484,
"games_pitched": 10,
"quality_starts": 1,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "675660",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 35,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 35,
"pitch_usage": 0.0,
"release_speed": 90.59743564984379,
"release_spin_rate": 2516.0834298625896,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 35,
"pitch_usage": 0.0,
"release_speed": 90.59743564984379,
"release_spin_rate": 2516.0834298625896,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.5974,
"release_spin_rate": 2516.0834,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0486,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.3474,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "675660",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 20.1,
"ER": 11.0,
"R": 11.0,
"H": 20.0,
"BB": 3.0,
"SO": 22.0,
"HR": 3.0,
"BF": 82.0,
"Pitches": 296.0
},
"per_game": {
"IP": 4.0,
"ER": 2.2,
"R": 2.2,
"H": 4.0,
"BB": 0.6,
"SO": 4.4,
"HR": 0.6,
"BF": 16.4,
"Pitches": 59.2
},
"rates": {
"ERA": 4.8689,
"WHIP": 1.1311,
"ER_per_IP": 0.54098,
"H_per_IP": 0.98361,
"BB_per_IP": 0.14754,
"SO_per_IP": 1.08197,
"HR_per_IP": 0.14754
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 31.0,
"ER": 12.0,
"R": 13.0,
"H": 27.0,
"BB": 6.0,
"SO": 35.0,
"HR": 3.0,
"BF": 124.0,
"Pitches": 454.0
},
"per_game": {
"IP": 3.0,
"ER": 1.2,
"R": 1.3,
"H": 2.7,
"BB": 0.6,
"SO": 3.5,
"HR": 0.3,
"BF": 12.4,
"Pitches": 45.4
},
"rates": {
"ERA": 3.4839,
"WHIP": 1.0645,
"ER_per_IP": 0.3871,
"H_per_IP": 0.87097,
"BB_per_IP": 0.19355,
"SO_per_IP": 1.12903,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 14,
"totals": {
"IP": 42.2,
"ER": 17.0,
"R": 20.0,
"H": 39.0,
"BB": 11.0,
"SO": 44.0,
"HR": 3.0,
"BF": 177.0,
"Pitches": 658.0
},
"per_game": {
"IP": 3.0,
"ER": 1.2143,
"R": 1.4286,
"H": 2.7857,
"BB": 0.7857,
"SO": 3.1429,
"HR": 0.2143,
"BF": 12.6429,
"Pitches": 47.0
},
"rates": {
"ERA": 3.5859,
"WHIP": 1.1719,
"ER_per_IP": 0.39844,
"H_per_IP": 0.91406,
"BB_per_IP": 0.25781,
"SO_per_IP": 1.03125,
"HR_per_IP": 0.07031
}
}
},
"weighted_prediction": {
"predicted_IP": 4.0,
"predicted_ER": 1.812,
"predicted_H": 3.633,
"predicted_BB": 0.897,
"predicted_SO": 4.046,
"predicted_HR": 0.473,
"predicted_ERA": 4.2277,
"predicted_WHIP": 1.1742
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 4.0,
"final": 4.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 1.812,
"final": 1.4375,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 3.633,
"final": 3.8023,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 0.897,
"final": 1.8669,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 4.046,
"final": 4.486,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.473,
"final": 0.2549,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2277,
"final": 4.2277,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1742,
"final": 1.1742,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Aaron Ashby |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4342 |
| ESPN Rank | 128 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.8000 |
| Season WHIP | 1.3333 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"opponent": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"edges": {
"quality_edge": 0.4011,
"offense_edge": 0.1608,
"opponent_offense_edge": -0.0805,
"defense_strength": 0.2135,
"opponent_defense_weakness": -0.0718,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0257,
"run_prevention": 0.9457,
"strikeout": 1.0185
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676879",
"profile": {
"available": true,
"pitcher_id": "676879",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 146.0,
"k_percent": 31.6,
"bb_percent": 11.4,
"woba": 0.293,
"xwoba": 0.269,
"sweet_spot_percent": 26.9,
"barrel_batted_rate": 4.6,
"hard_hit_percent": 40.7,
"avg_best_speed": 74.8716,
"avg_hyper_speed": 94.4131,
"whiff_percent": 33.2,
"swing_percent": 40.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8105,
"command_and_miss": 0.85,
"regression_edge": 0.6857,
"xwoba_edge": 1.3143,
"barrel_edge": 0.6,
"hard_hit_edge": -0.3429,
"whiff_edge": 1.0714,
"bb_edge": -0.55,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "676879",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4342,
"sample_weight": 0.584,
"run_prevention_factor": 0.9631,
"strikeout_factor": 1.0554,
"walk_factor": 1.0257,
"homer_factor": 0.957,
"woba_minus_xwoba": 0.024,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676879",
"espn_id": 41325,
"player_name": "Aaron Ashby",
"team": "MIL",
"role": "pitcher",
"espn_rank": 128,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 128,
"gp_value": 33.0,
"gp_rank": 22,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.8,
"era_rank": null,
"w_value": 10.0,
"w_rank": 1,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 3.0,
"hld_rank": 142,
"ip_value": 45.0,
"ip_rank": 146,
"h_value": 38.0,
"h_rank": 156,
"er_value": 14.0,
"er_rank": 225,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 22.0,
"bb_rank": 93,
"k_value": 61.0,
"k_rank": 77,
"k_per_9_value": 12.2,
"k_per_9_rank": 14,
"whip_value": 1.3333,
"whip_rank": null,
"war_value": 0.78,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9785,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9785,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.015,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9749,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0324,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 14.0,
"ER": 6,
"H": 12,
"BB": 5,
"SO": 15,
"HR": 2,
"ERA": 3.857142857142857,
"WHIP": 1.2142857142857142,
"K9": 9.642857142857142,
"HR9": 1.2857142857142858,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "676879",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.936,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6412,
"prior_weight": 0.3588
},
"role": "pitcher",
"player_id": "676879",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 33,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.2,
"ER": 4.0,
"R": 5.0,
"H": 6.0,
"BB": 3.0,
"SO": 8.0,
"HR": 2.0,
"BF": 30.0,
"Pitches": 115.0
},
"per_game": {
"IP": 1.1,
"ER": 0.8,
"R": 1.0,
"H": 1.2,
"BB": 0.6,
"SO": 1.6,
"HR": 0.4,
"BF": 6.0,
"Pitches": 23.0
},
"rates": {
"ERA": 5.4,
"WHIP": 1.35,
"ER_per_IP": 0.6,
"H_per_IP": 0.9,
"BB_per_IP": 0.45,
"SO_per_IP": 1.2,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 14.0,
"ER": 6.0,
"R": 8.0,
"H": 12.0,
"BB": 5.0,
"SO": 15.0,
"HR": 2.0,
"BF": 59.0,
"Pitches": 228.0
},
"per_game": {
"IP": 1.1,
"ER": 0.6,
"R": 0.8,
"H": 1.2,
"BB": 0.5,
"SO": 1.5,
"HR": 0.2,
"BF": 5.9,
"Pitches": 22.8
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.2143,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.35714,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.14286
}
},
"season": {
"games": 33,
"totals": {
"IP": 45.0,
"ER": 14.0,
"R": 18.0,
"H": 38.0,
"BB": 22.0,
"SO": 61.0,
"HR": 3.0,
"BF": 193.0,
"Pitches": 767.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4242,
"R": 0.5455,
"H": 1.1515,
"BB": 0.6667,
"SO": 1.8485,
"HR": 0.0909,
"BF": 5.8485,
"Pitches": 23.2424
},
"rates": {
"ERA": 2.8,
"WHIP": 1.3333,
"ER_per_IP": 0.31111,
"H_per_IP": 0.84444,
"BB_per_IP": 0.48889,
"SO_per_IP": 1.35556,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.652,
"predicted_H": 1.213,
"predicted_BB": 0.537,
"predicted_SO": 1.463,
"predicted_HR": 0.239,
"predicted_ERA": 4.4004,
"predicted_WHIP": 1.3128
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5016,
"form_weight": 0.4984,
"form_reliability": 0.6412,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.936,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6412,
"prior_weight": 0.3588
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.652,
"final": 0.325,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.213,
"final": 0.6046,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.537,
"final": 0.2676,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.463,
"final": 0.7292,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.239,
"final": 0.1191,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4004,
"final": 4.4004,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3128,
"final": 1.3128,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Abner Uribe |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2799 |
| ESPN Rank | 207 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 3.5065 |
| Season WHIP | 1.2078 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"opponent": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"edges": {
"quality_edge": 0.4011,
"offense_edge": 0.1608,
"opponent_offense_edge": -0.0805,
"defense_strength": 0.2135,
"opponent_defense_weakness": -0.0718,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0257,
"run_prevention": 0.9457,
"strikeout": 1.0185
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "682842",
"profile": {
"available": true,
"pitcher_id": "682842",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 80.0,
"k_percent": 25.0,
"bb_percent": 10.2,
"woba": 0.259,
"xwoba": 0.266,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 2.9,
"hard_hit_percent": 31.4,
"avg_best_speed": 78.0145,
"avg_hyper_speed": 92.7929,
"whiff_percent": 25.1,
"swing_percent": 42.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.1088,
"command_and_miss": 0.0807,
"regression_edge": -0.2,
"xwoba_edge": 1.4,
"barrel_edge": 0.9778,
"hard_hit_edge": 0.9857,
"whiff_edge": -0.0857,
"bb_edge": -0.25,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "682842",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2799,
"sample_weight": 0.45,
"run_prevention_factor": 0.9762,
"strikeout_factor": 1.0049,
"walk_factor": 1.009,
"homer_factor": 0.9282,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682842",
"espn_id": 4917865,
"player_name": "Abner Uribe",
"team": "MIL",
"role": "pitcher",
"espn_rank": 207,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 207,
"gp_value": 27.0,
"gp_rank": 111,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.5064,
"era_rank": null,
"w_value": 4.0,
"w_rank": 65,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 5.0,
"sv_rank": 27,
"hld_value": 8.0,
"hld_rank": 41,
"ip_value": 25.2,
"ip_rank": 316,
"h_value": 20.0,
"h_rank": 330,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 9.467532,
"k_per_9_rank": 23,
"whip_value": 1.2077,
"whip_rank": null,
"war_value": 0.42,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9893,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9893,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.004,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9677,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0022,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 4,
"H": 9,
"BB": 6,
"SO": 11,
"HR": 1,
"ERA": 3.483870967741936,
"WHIP": 1.4516129032258067,
"K9": 9.580645161290324,
"HR9": 0.870967741935484,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "682842",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.097,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5048,
"prior_weight": 0.4952
},
"role": "pitcher",
"player_id": "682842",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 81.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 4.4,
"Pitches": 16.2
},
"rates": {
"ERA": 1.6875,
"WHIP": 1.125,
"ER_per_IP": 0.1875,
"H_per_IP": 0.75,
"BB_per_IP": 0.375,
"SO_per_IP": 0.9375,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 6.0,
"SO": 11.0,
"HR": 1.0,
"BF": 46.0,
"Pitches": 167.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.9,
"BB": 0.6,
"SO": 1.1,
"HR": 0.1,
"BF": 4.6,
"Pitches": 16.7
},
"rates": {
"ERA": 3.4839,
"WHIP": 1.4516,
"ER_per_IP": 0.3871,
"H_per_IP": 0.87097,
"BB_per_IP": 0.58065,
"SO_per_IP": 1.06452,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 27,
"totals": {
"IP": 25.2,
"ER": 10.0,
"R": 10.0,
"H": 20.0,
"BB": 11.0,
"SO": 27.0,
"HR": 2.0,
"BF": 108.0,
"Pitches": 418.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3704,
"R": 0.3704,
"H": 0.7407,
"BB": 0.4074,
"SO": 1.0,
"HR": 0.0741,
"BF": 4.0,
"Pitches": 15.4815
},
"rates": {
"ERA": 3.5065,
"WHIP": 1.2078,
"ER_per_IP": 0.38961,
"H_per_IP": 0.77922,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.05195,
"HR_per_IP": 0.07792
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.398,
"predicted_H": 0.885,
"predicted_BB": 0.411,
"predicted_SO": 0.972,
"predicted_HR": 0.097,
"predicted_ERA": 3.5854,
"predicted_WHIP": 1.2961
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5592,
"form_weight": 0.4408,
"form_reliability": 0.5048,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.097,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5048,
"prior_weight": 0.4952
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.398,
"final": 0.1754,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.885,
"final": 0.3901,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.411,
"final": 0.1812,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.972,
"final": 1.5469,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.097,
"final": 0.0428,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5854,
"final": 3.5854,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2961,
"final": 1.2961,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Trevor Megill |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4163 |
| ESPN Rank | 293 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 2.7692 |
| Season WHIP | 1.0385 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"opponent": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"edges": {
"quality_edge": 0.4011,
"offense_edge": 0.1608,
"opponent_offense_edge": -0.0805,
"defense_strength": 0.2135,
"opponent_defense_weakness": -0.0718,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0257,
"run_prevention": 0.9457,
"strikeout": 1.0185
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656730",
"profile": {
"available": true,
"pitcher_id": "656730",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 79.0,
"k_percent": 33.0,
"bb_percent": 7.3,
"woba": 0.251,
"xwoba": 0.246,
"sweet_spot_percent": 29.7,
"barrel_batted_rate": 4.7,
"hard_hit_percent": 42.2,
"avg_best_speed": 81.7421,
"avg_hyper_speed": 94.4489,
"whiff_percent": 35.9,
"swing_percent": 51.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.0323,
"command_and_miss": 1.28,
"regression_edge": 0.1429,
"xwoba_edge": 1.9714,
"barrel_edge": 0.5778,
"hard_hit_edge": -0.5571,
"whiff_edge": 1.4571,
"bb_edge": 0.475,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656730",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4163,
"sample_weight": 0.45,
"run_prevention_factor": 0.9646,
"strikeout_factor": 1.0532,
"walk_factor": 0.9829,
"homer_factor": 0.9626,
"woba_minus_xwoba": 0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656730",
"espn_id": 40080,
"player_name": "Trevor Megill",
"team": "MIL",
"role": "pitcher",
"espn_rank": 293,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 293,
"gp_value": 27.0,
"gp_rank": 111,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.1538,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 9.0,
"sv_rank": 17,
"hld_value": 6.0,
"hld_rank": 68,
"ip_value": 26.0,
"ip_rank": 312,
"h_value": 21.0,
"h_rank": 312,
"er_value": 12.0,
"er_rank": 266,
"hr_value": 0.0,
"hr_rank": 578,
"bb_value": 8.0,
"bb_rank": 360,
"k_value": 36.0,
"k_rank": 191,
"k_per_9_value": 12.461538,
"k_per_9_rank": 16,
"whip_value": 1.1153,
"whip_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9841,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9841,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9832,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0239,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 2,
"H": 7,
"BB": 2,
"SO": 16,
"HR": 0,
"ERA": 1.8,
"WHIP": 0.9,
"K9": 14.4,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "656730",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.163,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.508,
"prior_weight": 0.492
},
"role": "pitcher",
"player_id": "656730",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 2.0,
"SO": 9.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 73.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.4,
"SO": 1.8,
"HR": 0.0,
"BF": 4.4,
"Pitches": 14.6
},
"rates": {
"ERA": 3.6,
"WHIP": 1.4,
"ER_per_IP": 0.4,
"H_per_IP": 1.0,
"BB_per_IP": 0.4,
"SO_per_IP": 1.8,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 2.0,
"SO": 16.0,
"HR": 0.0,
"BF": 39.0,
"Pitches": 137.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.7,
"BB": 0.2,
"SO": 1.6,
"HR": 0.0,
"BF": 3.9,
"Pitches": 13.7
},
"rates": {
"ERA": 1.8,
"WHIP": 0.9,
"ER_per_IP": 0.2,
"H_per_IP": 0.7,
"BB_per_IP": 0.2,
"SO_per_IP": 1.6,
"HR_per_IP": 0.0
}
},
"season": {
"games": 26,
"totals": {
"IP": 26.0,
"ER": 8.0,
"R": 9.0,
"H": 19.0,
"BB": 8.0,
"SO": 36.0,
"HR": 0.0,
"BF": 104.0,
"Pitches": 401.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3077,
"R": 0.3462,
"H": 0.7308,
"BB": 0.3077,
"SO": 1.3846,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.4231
},
"rates": {
"ERA": 2.7692,
"WHIP": 1.0385,
"ER_per_IP": 0.30769,
"H_per_IP": 0.73077,
"BB_per_IP": 0.30769,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.405,
"predicted_H": 0.907,
"predicted_BB": 0.337,
"predicted_SO": 1.298,
"predicted_HR": 0.072,
"predicted_ERA": 3.6424,
"predicted_WHIP": 1.2435
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5579,
"form_weight": 0.4421,
"form_reliability": 0.508,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.163,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.508,
"prior_weight": 0.492
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.405,
"final": 0.1791,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.907,
"final": 0.401,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.337,
"final": 0.149,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.298,
"final": 1.6896,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.072,
"final": 0.0318,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6424,
"final": 3.6424,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2435,
"final": 1.2435,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Grant Anderson |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2134 |
| ESPN Rank | 160 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 2.6703 |
| Season WHIP | 0.9560 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIL",
"games": 81,
"wins": 49,
"losses": 32,
"win_pct": 0.6049,
"runs_scored": 424.0,
"runs_allowed": 301.0,
"run_differential": 123.0,
"run_differential_per_game": 1.5185,
"avg_runs_scored": 5.2346,
"avg_runs_allowed": 3.716,
"offense_index": 1.1608,
"defense_index": 1.2135,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 7.1,
"avg_runs_allowed": 4.4,
"run_differential": 27.0
},
"available": true,
"quality_score": 0.3444
},
"opponent": {
"team": "CLE",
"games": 82,
"wins": 43,
"losses": 39,
"win_pct": 0.5244,
"runs_scored": 340.0,
"runs_allowed": 345.0,
"run_differential": -5.0,
"run_differential_per_game": -0.061,
"avg_runs_scored": 4.1463,
"avg_runs_allowed": 4.2073,
"offense_index": 0.9195,
"defense_index": 1.0718,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.8,
"avg_runs_allowed": 4.2,
"run_differential": -14.0
},
"available": true,
"quality_score": -0.0567
},
"edges": {
"quality_edge": 0.4011,
"offense_edge": 0.1608,
"opponent_offense_edge": -0.0805,
"defense_strength": 0.2135,
"opponent_defense_weakness": -0.0718,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0257,
"run_prevention": 0.9457,
"strikeout": 1.0185
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681982",
"profile": {
"available": true,
"pitcher_id": "681982",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 82.0,
"k_percent": 20.5,
"bb_percent": 8.9,
"woba": 0.268,
"xwoba": 0.26,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 35.4,
"avg_best_speed": 76.5032,
"avg_hyper_speed": 93.2969,
"whiff_percent": 21.0,
"swing_percent": 50.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.9679,
"command_and_miss": -0.3486,
"regression_edge": 0.2286,
"xwoba_edge": 1.5714,
"barrel_edge": 0.2222,
"hard_hit_edge": 0.4143,
"whiff_edge": -0.6714,
"bb_edge": 0.075,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "681982",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2134,
"sample_weight": 0.45,
"run_prevention_factor": 0.9819,
"strikeout_factor": 0.9828,
"walk_factor": 0.9973,
"homer_factor": 0.9633,
"woba_minus_xwoba": 0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681982",
"espn_id": 42161,
"player_name": "Grant Anderson",
"team": "MIL",
"role": "pitcher",
"espn_rank": 160,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 160,
"gp_value": 28.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.6703,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 30.1,
"ip_rank": 246,
"h_value": 19.0,
"h_rank": 352,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 10.0,
"bb_rank": 303,
"k_value": 23.0,
"k_rank": 321,
"k_per_9_value": 6.824176,
"k_per_9_rank": 35,
"whip_value": 0.956,
"whip_rank": null,
"war_value": 0.64,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9919,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9919,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9988,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9835,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9923,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 13.1,
"ER": 3,
"H": 7,
"BB": 4,
"SO": 8,
"HR": 1,
"ERA": 2.025,
"WHIP": 0.825,
"K9": 5.3999999999999995,
"HR9": 0.6749999999999999,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "681982",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.024,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5464,
"prior_weight": 0.4536
},
"role": "pitcher",
"player_id": "681982",
"report_date": "20260618_C",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 7.0,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 26.0,
"Pitches": 99.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4,
"R": 0.4,
"H": 0.6,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 5.2,
"Pitches": 19.8
},
"rates": {
"ERA": 2.5714,
"WHIP": 0.7143,
"ER_per_IP": 0.28571,
"H_per_IP": 0.42857,
"BB_per_IP": 0.28571,
"SO_per_IP": 0.71429,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 3.0,
"R": 3.0,
"H": 7.0,
"BB": 4.0,
"SO": 8.0,
"HR": 1.0,
"BF": 48.0,
"Pitches": 192.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3,
"R": 0.3,
"H": 0.7,
"BB": 0.4,
"SO": 0.8,
"HR": 0.1,
"BF": 4.8,
"Pitches": 19.2
},
"rates": {
"ERA": 2.025,
"WHIP": 0.825,
"ER_per_IP": 0.225,
"H_per_IP": 0.525,
"BB_per_IP": 0.3,
"SO_per_IP": 0.6,
"HR_per_IP": 0.075
}
},
"season": {
"games": 28,
"totals": {
"IP": 30.1,
"ER": 9.0,
"R": 10.0,
"H": 19.0,
"BB": 10.0,
"SO": 23.0,
"HR": 3.0,
"BF": 112.0,
"Pitches": 438.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3214,
"R": 0.3571,
"H": 0.6786,
"BB": 0.3571,
"SO": 0.8214,
"HR": 0.1071,
"BF": 4.0,
"Pitches": 15.6429
},
"rates": {
"ERA": 2.6703,
"WHIP": 0.956,
"ER_per_IP": 0.2967,
"H_per_IP": 0.62637,
"BB_per_IP": 0.32967,
"SO_per_IP": 0.75824,
"HR_per_IP": 0.0989
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.371,
"predicted_H": 0.712,
"predicted_BB": 0.327,
"predicted_SO": 0.794,
"predicted_HR": 0.091,
"predicted_ERA": 3.3563,
"predicted_WHIP": 1.0444
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5416,
"form_weight": 0.4584,
"form_reliability": 0.5464,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.024,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5464,
"prior_weight": 0.4536
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 1.0,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.371,
"final": 0.17,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.712,
"final": 0.3263,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.327,
"final": 0.1499,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.794,
"final": 1.4472,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.091,
"final": 0.0417,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.3563,
"final": 3.3563,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0444,
"final": 1.0444,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.297 | 0.000 | 0.000 | Hitting_2B | 0.358 | 0.000 | -0.358 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.720 | 4.000 | 5.000 | Hitting_AB | 4.340 | 4.000 | -0.340 | 0.000 |
| predicted_AVG | 0.262 | 0.000 | 0.200 | Hitting_AVG | 0.293 | 0.250 | -0.293 | -0.250 |
| predicted_BB | 0.351 | 0.000 | 0.000 | Hitting_BB | 0.302 | 0.000 | -0.302 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.240 | 0.000 | 1.000 | Hitting_H | 1.274 | 1.000 | -1.274 | -1.000 |
| predicted_HR | 0.320 | 0.000 | 0.000 | Hitting_HR | 0.123 | 1.000 | -0.123 | -1.000 |
| predicted_OBP | 0.350 | 0.000 | 0.200 | Hitting_OBP | 0.339 | 0.250 | -0.339 | -0.250 |
| predicted_R | 0.757 | 0.000 | 1.000 | Hitting_R | 0.575 | 1.000 | -0.575 | -1.000 |
| predicted_RBI | 0.840 | 0.000 | 1.000 | Hitting_RBI | 0.434 | 2.000 | -0.434 | -2.000 |
| predicted_SLG | 0.564 | 0.000 | 0.200 | Hitting_SLG | 0.461 | 1.000 | -0.461 | -1.000 |
| predicted_SO | 1.108 | 0.000 | 1.000 | Hitting_SO | 1.321 | 0.000 | -1.321 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AVG: 0.2620 -> 0.2974 (boost 0.0354, better) |
| Biggest Deboost | predicted_H: 1.2400 -> 0.0000 (deboost -1.2400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 4 | 2 | 5 | 1 | predicted_H: 1.2400 -> 1.3010 (boost 0.0610, better) | predicted_AB: 4.7200 -> 4.5431 (deboost -0.1769, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 6 | 4 | 2 | 4 | 2 | predicted_RBI: 0.8782 -> 0.9390 (boost 0.0608, better) | predicted_OBP: 0.3569 -> 0.3455 (deboost -0.0114, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_AB: 4.5431 -> 5.0000 (boost 0.4569, better) | predicted_HR: 0.3605 -> 0.0000 (deboost -0.3605, worse) | AB rounded to 5 (raw=4.72), rates preserved: AVG=0.286 HR/AB=0.076 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8050 -> 1.0000 (boost 0.1950, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5937 -> 0.2000 (deboost -0.3937, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 1 | 4 | - | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.5937 (boost 0.3937, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694192",
"player_name": "Jackson Chourio",
"position": "LF",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.297,
"predicted_3B": 0.0,
"predicted_AB": 4.72,
"predicted_AVG": 0.262,
"predicted_BB": 0.351,
"predicted_H": 1.24,
"predicted_HR": 0.32,
"predicted_OBP": 0.35,
"predicted_R": 0.757,
"predicted_RBI": 0.84,
"predicted_SLG": 0.564,
"predicted_SO": 1.108
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2632,
"predicted_3B": 0.0008,
"predicted_AB": 4.5431,
"predicted_AVG": 0.2874,
"predicted_BB": 0.3278,
"predicted_H": 1.301,
"predicted_HBP": 0.006,
"predicted_HR": 0.3493,
"predicted_OBP": 0.3569,
"predicted_R": 0.7529,
"predicted_RBI": 0.8782,
"predicted_SLG": 0.5989,
"predicted_SO": 1.023
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.297,
"after": 0.2632,
"delta": -0.0338,
"percent_delta": -0.1138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.72,
"after": 4.5431,
"delta": -0.1769,
"percent_delta": -0.0375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2874,
"delta": 0.0254,
"percent_delta": 0.0969,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.351,
"after": 0.3278,
"delta": -0.0232,
"percent_delta": -0.0661,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.24,
"after": 1.301,
"delta": 0.061,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.32,
"after": 0.3493,
"delta": 0.0293,
"percent_delta": 0.0916,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3569,
"delta": 0.0069,
"percent_delta": 0.0197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.757,
"after": 0.7529,
"delta": -0.0041,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.84,
"after": 0.8782,
"delta": 0.0382,
"percent_delta": 0.0455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.564,
"after": 0.5989,
"delta": 0.0349,
"percent_delta": 0.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.108,
"after": 1.023,
"delta": -0.085,
"percent_delta": -0.0767,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.24,
"after": 1.301,
"delta": 0.061,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.72,
"after": 4.5431,
"delta": -0.1769,
"percent_delta": -0.0375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 37
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2632,
"predicted_3B": 0.0008,
"predicted_AB": 4.5431,
"predicted_AVG": 0.2974,
"predicted_BB": 0.3339,
"predicted_H": 1.351,
"predicted_HBP": 0.006,
"predicted_HR": 0.3605,
"predicted_OBP": 0.3455,
"predicted_R": 0.805,
"predicted_RBI": 0.939,
"predicted_SLG": 0.5937,
"predicted_SO": 1.0041
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2632,
"after": 0.2632,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5431,
"after": 4.5431,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2874,
"after": 0.2974,
"delta": 0.01,
"percent_delta": 0.0348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3278,
"after": 0.3339,
"delta": 0.0061,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.301,
"after": 1.351,
"delta": 0.05,
"percent_delta": 0.0384,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3493,
"after": 0.3605,
"delta": 0.0112,
"percent_delta": 0.0321,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3569,
"after": 0.3455,
"delta": -0.0114,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7529,
"after": 0.805,
"delta": 0.0521,
"percent_delta": 0.0692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8782,
"after": 0.939,
"delta": 0.0608,
"percent_delta": 0.0692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5989,
"after": 0.5937,
"delta": -0.0052,
"percent_delta": -0.0087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.023,
"after": 1.0041,
"delta": -0.0189,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.8782,
"after": 0.939,
"delta": 0.0608,
"percent_delta": 0.0692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3569,
"after": 0.3455,
"delta": -0.0114,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.72), rates preserved: AVG=0.286 HR/AB=0.076",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2632,
"after": 0.0,
"delta": -0.2632,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5431,
"after": 5.0,
"delta": 0.4569,
"percent_delta": 0.1006,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3339,
"after": 0.0,
"delta": -0.3339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.351,
"after": 1.0,
"delta": -0.351,
"percent_delta": -0.2598,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3605,
"after": 0.0,
"delta": -0.3605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.939,
"after": 1.0,
"delta": 0.061,
"percent_delta": 0.065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0041,
"after": 1.0,
"delta": -0.0041,
"percent_delta": -0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.5431,
"after": 5.0,
"delta": 0.4569,
"percent_delta": 0.1006,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3605,
"after": 0.0,
"delta": -0.3605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.805,
"after": 1.0,
"delta": 0.195,
"percent_delta": 0.2422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.805,
"after": 1.0,
"delta": 0.195,
"percent_delta": 0.2422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2974,
"after": 0.2,
"delta": -0.0974,
"percent_delta": -0.3275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3455,
"after": 0.2,
"delta": -0.1455,
"percent_delta": -0.4211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5937,
"after": 0.2,
"delta": -0.3937,
"percent_delta": -0.6631,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5937,
"after": 0.2,
"delta": -0.3937,
"percent_delta": -0.6631,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2974,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3455,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5937,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2974,
"delta": 0.0974,
"percent_delta": 0.4868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.3455,
"delta": 0.1455,
"percent_delta": 0.7273,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.5937,
"delta": 0.3937,
"percent_delta": 1.9687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.5937,
"delta": 0.3937,
"percent_delta": 1.9687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.72,
"after": 4.0,
"delta": -0.72,
"percent_delta": -0.1525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2974,
"delta": 0.0354,
"percent_delta": 0.1351,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.351,
"after": 0.0,
"delta": -0.351,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.24,
"after": 0.0,
"delta": -1.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3455,
"delta": -0.0045,
"percent_delta": -0.0129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.757,
"after": 0.0,
"delta": -0.757,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.84,
"after": 0.0,
"delta": -0.84,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.564,
"after": 0.5937,
"delta": 0.0297,
"percent_delta": 0.0527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.108,
"after": 0.0,
"delta": -1.108,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2974,
"delta": 0.0354,
"percent_delta": 0.1351,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.24,
"after": 0.0,
"delta": -1.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.297 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.720 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.351 | - |
| predicted_H | 1.240 | - |
| predicted_HR | 0.320 | - |
| predicted_OBP | 0.350 | - |
| predicted_R | 0.757 | - |
| predicted_RBI | 0.840 | - |
| predicted_SLG | 0.564 | - |
| predicted_SO | 1.108 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.263 | -0.034 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.543 | -0.177 |
| predicted_AVG | 0.287 | 0.025 |
| predicted_BB | 0.328 | -0.023 |
| predicted_H | 1.301 | 0.061 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.349 | 0.029 |
| predicted_OBP | 0.357 | 0.007 |
| predicted_R | 0.753 | -0.004 |
| predicted_RBI | 0.878 | 0.038 |
| predicted_SLG | 0.599 | 0.035 |
| predicted_SO | 1.023 | -0.085 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.263 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.543 | 0.000 |
| predicted_AVG | 0.297 | 0.010 |
| predicted_BB | 0.334 | 0.006 |
| predicted_H | 1.351 | 0.050 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.360 | 0.011 |
| predicted_OBP | 0.345 | -0.011 |
| predicted_R | 0.805 | 0.052 |
| predicted_RBI | 0.939 | 0.061 |
| predicted_SLG | 0.594 | -0.005 |
| predicted_SO | 1.004 | -0.019 |
AB rounded to 5 (raw=4.72), rates preserved: AVG=0.286 HR/AB=0.076
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.263 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.457 |
| predicted_AVG | 0.200 | -0.097 |
| predicted_BB | 0.000 | -0.334 |
| predicted_H | 1.000 | -0.351 |
| predicted_HR | 0.000 | -0.360 |
| predicted_OBP | 0.200 | -0.145 |
| predicted_R | 1.000 | 0.195 |
| predicted_RBI | 1.000 | 0.061 |
| predicted_SLG | 0.200 | -0.394 |
| predicted_SO | 1.000 | -0.004 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 8.000 | 0.000 | 0.000 | 4.000 | 8.000 | 4.000 | 1.000 | 2.000 | 0.3810 | 0.4091 | 0.9524 | 0.3810 | 0.1905 | 0.3810 | 0.0476 | 0.0952 |
| last_10 | 0.20 | 10 | - | 47.000 | 17.000 | 2.000 | 0.000 | 6.000 | 12.000 | 9.000 | 2.000 | 8.000 | 0.3617 | 0.3800 | 0.7872 | 0.3617 | 0.1277 | 0.2553 | 0.0425 | 0.1702 |
| season | 0.60 | 37 | - | 159.000 | 50.000 | 11.000 | 0.000 | 10.000 | 28.000 | 28.000 | 13.000 | 41.000 | 0.3145 | 0.3642 | 0.5723 | 0.3145 | 0.0629 | 0.1761 | 0.0818 | 0.2579 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2140 |
| predicted_3B | 0.0020 |
| predicted_AB | 4.2850 |
| predicted_AVG | 0.3244 |
| predicted_BB | 0.2940 |
| predicted_H | 1.3900 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.3920 |
| predicted_OBP | 0.3670 |
| predicted_R | 0.7470 |
| predicted_RBI | 0.9340 |
| predicted_SLG | 0.6497 |
| predicted_SO | 0.8990 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2970 | 0.2140 | 0.2632 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 4.7200 | 4.2850 | 4.5431 | model_form_blend |
| predicted_AVG | 0.2620 | 0.3244 | 0.2874 | model_form_blend |
| predicted_BB | 0.3510 | 0.2940 | 0.3278 | model_form_blend |
| predicted_H | 1.2400 | 1.3900 | 1.3010 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.3200 | 0.3920 | 0.3493 | model_form_blend |
| predicted_OBP | 0.3500 | 0.3670 | 0.3569 | model_form_blend |
| predicted_R | 0.7570 | 0.7470 | 0.7529 | model_form_blend |
| predicted_RBI | 0.8400 | 0.9340 | 0.8782 | model_form_blend |
| predicted_SLG | 0.5640 | 0.6497 | 0.5989 | model_form_blend |
| predicted_SO | 1.1080 | 0.8990 | 1.0230 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 106 |
| Season rows before report date | 106 |
| Report year | 2026 |
| Profile rows used | 37 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.314 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 694192 |
| playerID | 694192 |
| playerName | Jackson Chourio |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 23.7 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.402 |
| sl_xwoba | 0.358 |
| sl_xba | 0.267 |
| sl_xslg | 0.52 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 15.3 |
| sl_hard_hit_percent | 48.3 |
| sl_exit_velocity_avg | 92.3 |
| sl_launch_angle_avg | 12.7 |
| sl_whiff_percent | 23.0 |
| sl_swing_percent | 46.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.312 | 1.000 | 0.000 | Hitting_2B | 0.372 | 1.000 | 0.628 | 0.000 |
| predicted_3B | 0.031 | 0.000 | 0.000 | Hitting_3B | 0.013 | 0.000 | -0.013 | 0.000 |
| predicted_AB | 3.100 | 3.000 | 3.000 | Hitting_AB | 3.295 | 1.000 | -0.295 | 2.000 |
| predicted_AVG | 0.291 | 0.333 | 0.333 | Hitting_AVG | 0.342 | 1.000 | -0.009 | -0.667 |
| predicted_BB | 0.281 | 0.000 | 0.000 | Hitting_BB | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.900 | 1.000 | 1.000 | Hitting_H | 1.128 | 1.000 | -0.128 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_OBP | 0.390 | 0.333 | 0.333 | Hitting_OBP | 0.421 | 1.000 | -0.088 | -0.667 |
| predicted_R | 0.438 | 0.000 | 0.000 | Hitting_R | 0.538 | 0.000 | -0.538 | 0.000 |
| predicted_RBI | 0.570 | 0.000 | 1.000 | Hitting_RBI | 0.564 | 1.000 | -0.564 | -1.000 |
| predicted_SLG | 0.477 | 0.667 | 0.333 | Hitting_SLG | 0.521 | 2.000 | 0.145 | -1.333 |
| predicted_SO | 0.375 | 0.000 | 0.000 | Hitting_SO | 0.397 | 0.000 | -0.397 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_2B: 0.3120 -> 1.0000 (boost 0.6880, better) |
| Biggest Deboost | predicted_RBI: 0.5700 -> 0.0000 (deboost -0.5700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 4 | 0 | 4 | 0 | predicted_BB: 0.2810 -> 0.3426 (boost 0.0616, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.4935 -> 0.5210 (boost 0.0275, better) | predicted_OBP: 0.4032 -> 0.3895 (deboost -0.0137, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_RBI: 0.6269 -> 1.0000 (boost 0.3731, better) | predicted_SO: 0.4019 -> 0.0000 (deboost -0.4019, better) | AB rounded to 3 (raw=3.10), rates preserved: AVG=0.317 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4343 -> 0.0000 (deboost -0.4343, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.3202 -> 0.3330 (boost 0.0128, better) | predicted_SLG: 0.5210 -> 0.3330 (deboost -0.1880, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.5210 (boost 0.1880, better) | predicted_AVG: 0.3330 -> 0.3202 (deboost -0.0128, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683734",
"player_name": "Andrew Vaughn",
"position": "1B",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.312,
"predicted_3B": 0.031,
"predicted_AB": 3.1,
"predicted_AVG": 0.291,
"predicted_BB": 0.281,
"predicted_H": 0.9,
"predicted_HR": 0.09,
"predicted_OBP": 0.39,
"predicted_R": 0.438,
"predicted_RBI": 0.57,
"predicted_SLG": 0.477,
"predicted_SO": 0.375
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2981,
"predicted_3B": 0.0325,
"predicted_AB": 3.071,
"predicted_AVG": 0.3089,
"predicted_BB": 0.3426,
"predicted_H": 0.9469,
"predicted_HBP": 0.035,
"predicted_HR": 0.0819,
"predicted_OBP": 0.4032,
"predicted_R": 0.4062,
"predicted_RBI": 0.5863,
"predicted_SLG": 0.4935,
"predicted_SO": 0.4095
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.312,
"after": 0.2981,
"delta": -0.0139,
"percent_delta": -0.0446,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0325,
"delta": 0.0015,
"percent_delta": 0.0484,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1,
"after": 3.071,
"delta": -0.029,
"percent_delta": -0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.3089,
"delta": 0.0179,
"percent_delta": 0.0615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.281,
"after": 0.3426,
"delta": 0.0616,
"percent_delta": 0.2192,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.9469,
"delta": 0.0469,
"percent_delta": 0.0521,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0819,
"delta": -0.0081,
"percent_delta": -0.09,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.39,
"after": 0.4032,
"delta": 0.0132,
"percent_delta": 0.0338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.438,
"after": 0.4062,
"delta": -0.0318,
"percent_delta": -0.0726,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.57,
"after": 0.5863,
"delta": 0.0163,
"percent_delta": 0.0286,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.4935,
"delta": 0.0165,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.375,
"after": 0.4095,
"delta": 0.0345,
"percent_delta": 0.092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.281,
"after": 0.3426,
"delta": 0.0616,
"percent_delta": 0.2192,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 32
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2981,
"predicted_3B": 0.0325,
"predicted_AB": 3.071,
"predicted_AVG": 0.3202,
"predicted_BB": 0.3489,
"predicted_H": 0.9833,
"predicted_HBP": 0.035,
"predicted_HR": 0.0845,
"predicted_OBP": 0.3895,
"predicted_R": 0.4343,
"predicted_RBI": 0.6269,
"predicted_SLG": 0.521,
"predicted_SO": 0.4019
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2981,
"after": 0.2981,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0325,
"after": 0.0325,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.071,
"after": 3.071,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3089,
"after": 0.3202,
"delta": 0.0113,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3426,
"after": 0.3489,
"delta": 0.0063,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9469,
"after": 0.9833,
"delta": 0.0364,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.035,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0819,
"after": 0.0845,
"delta": 0.0026,
"percent_delta": 0.0317,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4032,
"after": 0.3895,
"delta": -0.0137,
"percent_delta": -0.034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4062,
"after": 0.4343,
"delta": 0.0281,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5863,
"after": 0.6269,
"delta": 0.0406,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4935,
"after": 0.521,
"delta": 0.0275,
"percent_delta": 0.0557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4095,
"after": 0.4019,
"delta": -0.0076,
"percent_delta": -0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4935,
"after": 0.521,
"delta": 0.0275,
"percent_delta": 0.0557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4032,
"after": 0.3895,
"delta": -0.0137,
"percent_delta": -0.034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.10), rates preserved: AVG=0.317 HR/AB=0.027",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2981,
"after": 0.0,
"delta": -0.2981,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0325,
"after": 0.0,
"delta": -0.0325,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.071,
"after": 3.0,
"delta": -0.071,
"percent_delta": -0.0231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3489,
"after": 0.0,
"delta": -0.3489,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9833,
"after": 1.0,
"delta": 0.0167,
"percent_delta": 0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0845,
"after": 0.0,
"delta": -0.0845,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6269,
"after": 1.0,
"delta": 0.3731,
"percent_delta": 0.5952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4019,
"after": 0.0,
"delta": -0.4019,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6269,
"after": 1.0,
"delta": 0.3731,
"percent_delta": 0.5952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4019,
"after": 0.0,
"delta": -0.4019,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4343,
"after": 0.0,
"delta": -0.4343,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4343,
"after": 0.0,
"delta": -0.4343,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3202,
"after": 0.333,
"delta": 0.0128,
"percent_delta": 0.04,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3895,
"after": 0.333,
"delta": -0.0565,
"percent_delta": -0.1451,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.521,
"after": 0.333,
"delta": -0.188,
"percent_delta": -0.3608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.3202,
"after": 0.333,
"delta": 0.0128,
"percent_delta": 0.04,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.521,
"after": 0.333,
"delta": -0.188,
"percent_delta": -0.3608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.3202,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3895,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.521,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3202,
"delta": -0.0128,
"percent_delta": -0.0385,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3895,
"delta": 0.0565,
"percent_delta": 0.1698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.521,
"delta": 0.188,
"percent_delta": 0.5645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.521,
"delta": 0.188,
"percent_delta": 0.5645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3202,
"delta": -0.0128,
"percent_delta": -0.0385,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.312,
"after": 1.0,
"delta": 0.688,
"percent_delta": 2.2051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0,
"delta": -0.031,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1,
"after": 3.0,
"delta": -0.1,
"percent_delta": -0.0323,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.3202,
"delta": 0.0292,
"percent_delta": 0.1003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.281,
"after": 0.0,
"delta": -0.281,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.0,
"delta": 0.1,
"percent_delta": 0.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.39,
"after": 0.3895,
"delta": -0.0005,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.438,
"after": 0.0,
"delta": -0.438,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.57,
"after": 0.0,
"delta": -0.57,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.521,
"delta": 0.044,
"percent_delta": 0.0922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.375,
"after": 0.0,
"delta": -0.375,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.312,
"after": 1.0,
"delta": 0.688,
"percent_delta": 2.2051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.57,
"after": 0.0,
"delta": -0.57,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.312 | - |
| predicted_3B | 0.031 | - |
| predicted_AB | 3.100 | - |
| predicted_AVG | 0.291 | - |
| predicted_BB | 0.281 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.390 | - |
| predicted_R | 0.438 | - |
| predicted_RBI | 0.570 | - |
| predicted_SLG | 0.477 | - |
| predicted_SO | 0.375 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.298 | -0.014 |
| predicted_3B | 0.033 | 0.002 |
| predicted_AB | 3.071 | -0.029 |
| predicted_AVG | 0.309 | 0.018 |
| predicted_BB | 0.343 | 0.062 |
| predicted_H | 0.947 | 0.047 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.082 | -0.008 |
| predicted_OBP | 0.403 | 0.013 |
| predicted_R | 0.406 | -0.032 |
| predicted_RBI | 0.586 | 0.016 |
| predicted_SLG | 0.493 | 0.017 |
| predicted_SO | 0.409 | 0.034 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.298 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 3.071 | 0.000 |
| predicted_AVG | 0.320 | 0.011 |
| predicted_BB | 0.349 | 0.006 |
| predicted_H | 0.983 | 0.036 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.085 | 0.003 |
| predicted_OBP | 0.390 | -0.014 |
| predicted_R | 0.434 | 0.028 |
| predicted_RBI | 0.627 | 0.041 |
| predicted_SLG | 0.521 | 0.028 |
| predicted_SO | 0.402 | -0.008 |
AB rounded to 3 (raw=3.10), rates preserved: AVG=0.317 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.298 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 3.000 | -0.071 |
| predicted_AVG | 0.333 | 0.013 |
| predicted_BB | 0.000 | -0.349 |
| predicted_H | 1.000 | 0.017 |
| predicted_HR | 0.000 | -0.085 |
| predicted_OBP | 0.333 | -0.056 |
| predicted_R | 0.000 | -0.434 |
| predicted_RBI | 1.000 | 0.373 |
| predicted_SLG | 0.333 | -0.188 |
| predicted_SO | 0.000 | -0.402 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 10.000 | 3.000 | 1.000 | 0.000 | 0.000 | 2.000 | 0.000 | 4.000 | 2.000 | 0.3000 | 0.5000 | 0.4000 | 0.3000 | 0.0000 | 0.2000 | 0.4000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 27.000 | 12.000 | 3.000 | 1.000 | 1.000 | 9.000 | 4.000 | 4.000 | 3.000 | 0.4444 | 0.5161 | 0.7407 | 0.4444 | 0.0370 | 0.3333 | 0.1482 | 0.1111 |
| season | 0.60 | 32 | - | 99.000 | 35.000 | 10.000 | 1.000 | 2.000 | 19.000 | 14.000 | 9.000 | 12.000 | 0.3535 | 0.4182 | 0.5354 | 0.3535 | 0.0202 | 0.1919 | 0.0909 | 0.1212 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2760 |
| predicted_3B | 0.0350 |
| predicted_AB | 3.0250 |
| predicted_AVG | 0.3373 |
| predicted_BB | 0.4400 |
| predicted_H | 1.0210 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.0690 |
| predicted_OBP | 0.4240 |
| predicted_R | 0.3560 |
| predicted_RBI | 0.6120 |
| predicted_SLG | 0.5195 |
| predicted_SO | 0.4640 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3120 | 0.2760 | 0.2981 | model_form_blend |
| predicted_3B | 0.0310 | 0.0350 | 0.0325 | model_form_blend |
| predicted_AB | 3.1000 | 3.0250 | 3.0710 | model_form_blend |
| predicted_AVG | 0.2910 | 0.3373 | 0.3089 | model_form_blend |
| predicted_BB | 0.2810 | 0.4400 | 0.3426 | model_form_blend |
| predicted_H | 0.9000 | 1.0210 | 0.9469 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.0900 | 0.0690 | 0.0819 | model_form_blend |
| predicted_OBP | 0.3900 | 0.4240 | 0.4032 | model_form_blend |
| predicted_R | 0.4380 | 0.3560 | 0.4062 | model_form_blend |
| predicted_RBI | 0.5700 | 0.6120 | 0.5863 | model_form_blend |
| predicted_SLG | 0.4770 | 0.5195 | 0.4935 | model_form_blend |
| predicted_SO | 0.3750 | 0.4640 | 0.4095 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 78 |
| Season rows before report date | 78 |
| Report year | 2026 |
| Profile rows used | 32 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.354 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260617_CLE@MIL |
| game_type | ph |
| mlbID | 683734 |
| note | Doubled for Mitchell in the 8th. |
| playerID | 683734 |
| playerName | Andrew Vaughn |
| pos | 1B |
| started | False |
| startingPosition | PH |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 10.7 |
| sl_bb_percent | 9.8 |
| sl_woba | 0.421 |
| sl_xwoba | 0.348 |
| sl_xba | 0.289 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 3.4 |
| sl_hard_hit_percent | 42.5 |
| sl_exit_velocity_avg | 89.3 |
| sl_launch_angle_avg | 9.6 |
| sl_whiff_percent | 18.6 |
| sl_swing_percent | 41.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.200 | 0.000 | 0.000 | Hitting_2B | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_3B | 0.025 | 0.000 | 0.000 | Hitting_3B | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_AB | 4.470 | 4.000 | 4.000 | Hitting_AB | 3.947 | 5.000 | 0.053 | -1.000 |
| predicted_AVG | 0.234 | 0.250 | 0.250 | Hitting_AVG | 0.289 | 0.400 | -0.039 | -0.150 |
| predicted_BB | 0.425 | 0.000 | 0.000 | Hitting_BB | 0.389 | 0.000 | -0.389 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.050 | 1.000 | 1.000 | Hitting_H | 1.142 | 2.000 | -0.142 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.142 | 1.000 | -0.142 | -1.000 |
| predicted_OBP | 0.322 | 0.250 | 0.250 | Hitting_OBP | 0.354 | 0.400 | -0.104 | -0.150 |
| predicted_R | 0.800 | 1.000 | 1.000 | Hitting_R | 0.717 | 2.000 | 0.283 | -1.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.593 | 2.000 | -0.593 | -2.000 |
| predicted_SLG | 0.403 | 0.250 | 0.250 | Hitting_SLG | 0.482 | 1.000 | -0.232 | -0.750 |
| predicted_SO | 1.275 | 1.000 | 1.000 | Hitting_SO | 1.142 | 3.000 | -0.142 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_R: 0.8000 -> 1.0000 (boost 0.2000, better) |
| Biggest Deboost | predicted_RBI: 0.5500 -> 0.0000 (deboost -0.5500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2340 -> 0.2421 (boost 0.0081, better) | predicted_AB: 4.4700 -> 4.3090 (deboost -0.1610, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 2 | 0 | 2 | 0 | predicted_R: 0.8151 -> 0.8715 (boost 0.0564, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_RBI: 0.5920 -> 1.0000 (boost 0.4080, better) | predicted_BB: 0.4366 -> 0.0000 (deboost -0.4366, worse) | AB rounded to 4 (raw=4.47), rates preserved: AVG=0.242 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8715 -> 1.0000 (boost 0.1285, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4071 -> 0.2500 (deboost -0.1571, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4071 (boost 0.1571, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "592885",
"player_name": "Christian Yelich",
"position": "DH",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.2,
"predicted_3B": 0.025,
"predicted_AB": 4.47,
"predicted_AVG": 0.234,
"predicted_BB": 0.425,
"predicted_H": 1.05,
"predicted_HR": 0.14,
"predicted_OBP": 0.322,
"predicted_R": 0.8,
"predicted_RBI": 0.55,
"predicted_SLG": 0.403,
"predicted_SO": 1.275
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1996,
"predicted_3B": 0.0213,
"predicted_AB": 4.309,
"predicted_AVG": 0.2421,
"predicted_BB": 0.4287,
"predicted_H": 1.0435,
"predicted_HBP": 0.033,
"predicted_HR": 0.1384,
"predicted_OBP": 0.324,
"predicted_R": 0.8151,
"predicted_RBI": 0.5537,
"predicted_SLG": 0.4061,
"predicted_SO": 1.2876
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.1996,
"delta": -0.0004,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.025,
"after": 0.0213,
"delta": -0.0037,
"percent_delta": -0.148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 4.309,
"delta": -0.161,
"percent_delta": -0.036,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2421,
"delta": 0.0081,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.425,
"after": 0.4287,
"delta": 0.0037,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0435,
"delta": -0.0065,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1384,
"delta": -0.0016,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.324,
"delta": 0.002,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8,
"after": 0.8151,
"delta": 0.0151,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5537,
"delta": 0.0037,
"percent_delta": 0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4061,
"delta": 0.0031,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.275,
"after": 1.2876,
"delta": 0.0126,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2421,
"delta": 0.0081,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.47,
"after": 4.309,
"delta": -0.161,
"percent_delta": -0.036,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1996,
"predicted_3B": 0.0213,
"predicted_AB": 4.309,
"predicted_AVG": 0.2515,
"predicted_BB": 0.4366,
"predicted_H": 1.0836,
"predicted_HBP": 0.033,
"predicted_HR": 0.1429,
"predicted_OBP": 0.3203,
"predicted_R": 0.8715,
"predicted_RBI": 0.592,
"predicted_SLG": 0.4071,
"predicted_SO": 1.2638
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1996,
"after": 0.1996,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0213,
"after": 0.0213,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.309,
"after": 4.309,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2421,
"after": 0.2515,
"delta": 0.0094,
"percent_delta": 0.0388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4287,
"after": 0.4366,
"delta": 0.0079,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0435,
"after": 1.0836,
"delta": 0.0401,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1384,
"after": 0.1429,
"delta": 0.0045,
"percent_delta": 0.0325,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.324,
"after": 0.3203,
"delta": -0.0037,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8151,
"after": 0.8715,
"delta": 0.0564,
"percent_delta": 0.0692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5537,
"after": 0.592,
"delta": 0.0383,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4061,
"after": 0.4071,
"delta": 0.001,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.2876,
"after": 1.2638,
"delta": -0.0238,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8151,
"after": 0.8715,
"delta": 0.0564,
"percent_delta": 0.0692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.47), rates preserved: AVG=0.242 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1996,
"after": 0.0,
"delta": -0.1996,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0213,
"after": 0.0,
"delta": -0.0213,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.309,
"after": 4.0,
"delta": -0.309,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4366,
"after": 0.0,
"delta": -0.4366,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0836,
"after": 1.0,
"delta": -0.0836,
"percent_delta": -0.0772,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.0,
"delta": -0.033,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1429,
"after": 0.0,
"delta": -0.1429,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.592,
"after": 1.0,
"delta": 0.408,
"percent_delta": 0.6892,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2638,
"after": 1.0,
"delta": -0.2638,
"percent_delta": -0.2087,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.592,
"after": 1.0,
"delta": 0.408,
"percent_delta": 0.6892,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4366,
"after": 0.0,
"delta": -0.4366,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8715,
"after": 1.0,
"delta": 0.1285,
"percent_delta": 0.1474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8715,
"after": 1.0,
"delta": 0.1285,
"percent_delta": 0.1474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2515,
"after": 0.25,
"delta": -0.0015,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3203,
"after": 0.25,
"delta": -0.0703,
"percent_delta": -0.2195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4071,
"after": 0.25,
"delta": -0.1571,
"percent_delta": -0.3859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4071,
"after": 0.25,
"delta": -0.1571,
"percent_delta": -0.3859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2515,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3203,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4071,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2515,
"delta": 0.0015,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3203,
"delta": 0.0703,
"percent_delta": 0.2813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4071,
"delta": 0.1571,
"percent_delta": 0.6285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4071,
"delta": 0.1571,
"percent_delta": 0.6285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.025,
"after": 0.0,
"delta": -0.025,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 4.0,
"delta": -0.47,
"percent_delta": -0.1051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2515,
"delta": 0.0175,
"percent_delta": 0.0748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.425,
"after": 0.0,
"delta": -0.425,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0,
"delta": -0.05,
"percent_delta": -0.0476,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3203,
"delta": -0.0017,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4071,
"delta": 0.0041,
"percent_delta": 0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.275,
"after": 1.0,
"delta": -0.275,
"percent_delta": -0.2157,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.200 | - |
| predicted_3B | 0.025 | - |
| predicted_AB | 4.470 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.425 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.322 | - |
| predicted_R | 0.800 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.403 | - |
| predicted_SO | 1.275 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.200 | -0.000 |
| predicted_3B | 0.021 | -0.004 |
| predicted_AB | 4.309 | -0.161 |
| predicted_AVG | 0.242 | 0.008 |
| predicted_BB | 0.429 | 0.004 |
| predicted_H | 1.044 | -0.006 |
| predicted_HBP | 0.033 | - |
| predicted_HR | 0.138 | -0.002 |
| predicted_OBP | 0.324 | 0.002 |
| predicted_R | 0.815 | 0.015 |
| predicted_RBI | 0.554 | 0.004 |
| predicted_SLG | 0.406 | 0.003 |
| predicted_SO | 1.288 | 0.013 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.200 | 0.000 |
| predicted_3B | 0.021 | 0.000 |
| predicted_AB | 4.309 | 0.000 |
| predicted_AVG | 0.252 | 0.009 |
| predicted_BB | 0.437 | 0.008 |
| predicted_H | 1.084 | 0.040 |
| predicted_HBP | 0.033 | 0.000 |
| predicted_HR | 0.143 | 0.005 |
| predicted_OBP | 0.320 | -0.004 |
| predicted_R | 0.872 | 0.056 |
| predicted_RBI | 0.592 | 0.038 |
| predicted_SLG | 0.407 | 0.001 |
| predicted_SO | 1.264 | -0.024 |
AB rounded to 4 (raw=4.47), rates preserved: AVG=0.242 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.200 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 4.000 | -0.309 |
| predicted_AVG | 0.250 | -0.002 |
| predicted_BB | 0.000 | -0.437 |
| predicted_H | 1.000 | -0.084 |
| predicted_HR | 0.000 | -0.143 |
| predicted_OBP | 0.250 | -0.070 |
| predicted_R | 1.000 | 0.128 |
| predicted_RBI | 1.000 | 0.408 |
| predicted_SLG | 0.250 | -0.157 |
| predicted_SO | 1.000 | -0.264 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 4.000 | 1.000 | 0.000 | 1.000 | 3.000 | 5.000 | 3.000 | 8.000 | 0.2000 | 0.2917 | 0.4000 | 0.2000 | 0.0500 | 0.1500 | 0.1500 | 0.4000 |
| last_10 | 0.20 | 10 | - | 47.000 | 12.000 | 2.000 | 0.000 | 1.000 | 4.000 | 11.000 | 4.000 | 15.000 | 0.2553 | 0.3208 | 0.3617 | 0.2553 | 0.0213 | 0.0851 | 0.0851 | 0.3191 |
| season | 0.60 | 40 | - | 158.000 | 43.000 | 8.000 | 1.000 | 5.000 | 24.000 | 32.000 | 17.000 | 51.000 | 0.2722 | 0.3446 | 0.4304 | 0.2722 | 0.0316 | 0.1519 | 0.1076 | 0.3228 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1990 |
| predicted_3B | 0.0160 |
| predicted_AB | 4.0750 |
| predicted_AVG | 0.2538 |
| predicted_BB | 0.4340 |
| predicted_H | 1.0340 |
| predicted_HBP | 0.0330 |
| predicted_HR | 0.1360 |
| predicted_OBP | 0.3270 |
| predicted_R | 0.8370 |
| predicted_RBI | 0.5590 |
| predicted_SLG | 0.4105 |
| predicted_SO | 1.3060 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2000 | 0.1990 | 0.1996 | model_form_blend |
| predicted_3B | 0.0250 | 0.0160 | 0.0213 | model_form_blend |
| predicted_AB | 4.4700 | 4.0750 | 4.3090 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2538 | 0.2421 | model_form_blend |
| predicted_BB | 0.4250 | 0.4340 | 0.4287 | model_form_blend |
| predicted_H | 1.0500 | 1.0340 | 1.0435 | model_form_blend |
| predicted_HBP | - | 0.0330 | 0.0330 | form_only |
| predicted_HR | 0.1400 | 0.1360 | 0.1384 | model_form_blend |
| predicted_OBP | 0.3220 | 0.3270 | 0.3240 | model_form_blend |
| predicted_R | 0.8000 | 0.8370 | 0.8151 | model_form_blend |
| predicted_RBI | 0.5500 | 0.5590 | 0.5537 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4105 | 0.4061 | model_form_blend |
| predicted_SO | 1.2750 | 1.3060 | 1.2876 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 113 |
| Season rows before report date | 113 |
| Report year | 2026 |
| Profile rows used | 40 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.272 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 592885 |
| playerID | 592885 |
| playerName | Christian Yelich |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.1 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.339 |
| sl_xwoba | 0.298 |
| sl_xba | 0.231 |
| sl_xslg | 0.376 |
| sl_sweet_spot_percent | 29.7 |
| sl_barrel_batted_rate | 7.2 |
| sl_hard_hit_percent | 38.7 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 3.3 |
| sl_whiff_percent | 31.1 |
| sl_swing_percent | 45.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.227 | 0.000 | 0.000 | Hitting_2B | 0.214 | 1.000 | -0.214 | -1.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.041 | 0.000 | -0.041 | 0.000 |
| predicted_AB | 4.080 | 3.000 | 4.000 | Hitting_AB | 3.761 | 4.000 | -0.761 | -1.000 |
| predicted_AVG | 0.234 | 0.000 | 0.250 | Hitting_AVG | 0.284 | 0.250 | -0.284 | -0.250 |
| predicted_BB | 0.712 | 0.000 | 1.000 | Hitting_BB | 0.757 | 0.000 | -0.757 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_H | 0.960 | 0.000 | 1.000 | Hitting_H | 1.070 | 1.000 | -1.070 | -1.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.156 | 0.000 | -0.156 | 0.000 |
| predicted_OBP | 0.322 | 0.000 | 0.400 | Hitting_OBP | 0.402 | 0.250 | -0.402 | -0.250 |
| predicted_R | 0.818 | 0.000 | 1.000 | Hitting_R | 0.909 | 0.000 | -0.909 | 0.000 |
| predicted_RBI | 0.600 | 0.000 | 1.000 | Hitting_RBI | 0.671 | 1.000 | -0.671 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_SLG | 0.445 | 0.000 | 0.250 | Hitting_SLG | 0.488 | 0.500 | -0.488 | -0.500 |
| predicted_SO | 1.091 | 3.000 | 1.000 | Hitting_SO | 1.049 | 2.000 | 1.951 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.0910 -> 3.0000 (boost 1.9090, worse) |
| Biggest Deboost | predicted_AB: 4.0800 -> 3.0000 (deboost -1.0800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 1 | 2 | predicted_SO: 1.0910 -> 1.1486 (boost 0.0576, worse) | predicted_BB: 0.7120 -> 0.6316 (deboost -0.0804, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 4 | 0 | 4 | 0 | predicted_R: 0.7753 -> 0.8290 (boost 0.0537, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 2 | 3 | 3 | 2 | predicted_BB: 0.6433 -> 1.0000 (boost 0.3567, better) | predicted_2B: 0.2367 -> 0.0000 (deboost -0.2367, worse) | AB rounded to 4 (raw=4.08), rates preserved: AVG=0.244 HR/AB=0.049 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8290 -> 1.0000 (boost 0.1710, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3503 -> 0.4000 (boost 0.0497, better) | predicted_SLG: 0.4650 -> 0.2500 (deboost -0.2150, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 1 | 5 | 0 | 6 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4650 (boost 0.2150, better) | predicted_OBP: 0.4000 -> 0.3503 (deboost -0.0497, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668930",
"player_name": "Brice Turang",
"position": "2B",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.227,
"predicted_3B": 0.03,
"predicted_AB": 4.08,
"predicted_AVG": 0.234,
"predicted_BB": 0.712,
"predicted_H": 0.96,
"predicted_HR": 0.18,
"predicted_OBP": 0.322,
"predicted_R": 0.818,
"predicted_RBI": 0.6,
"predicted_SLG": 0.445,
"predicted_SO": 1.091
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2367,
"predicted_3B": 0.0253,
"predicted_AB": 4.039,
"predicted_AVG": 0.237,
"predicted_BB": 0.6316,
"predicted_H": 0.96,
"predicted_HBP": 0.003,
"predicted_HR": 0.1918,
"predicted_OBP": 0.3231,
"predicted_R": 0.7753,
"predicted_RBI": 0.6199,
"predicted_SLG": 0.4555,
"predicted_SO": 1.1486
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.2367,
"delta": 0.0097,
"percent_delta": 0.0427,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0253,
"delta": -0.0047,
"percent_delta": -0.1567,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.08,
"after": 4.039,
"delta": -0.041,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.237,
"delta": 0.003,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.712,
"after": 0.6316,
"delta": -0.0804,
"percent_delta": -0.1129,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 0.96,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.1918,
"delta": 0.0118,
"percent_delta": 0.0656,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3231,
"delta": 0.0011,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.818,
"after": 0.7753,
"delta": -0.0427,
"percent_delta": -0.0522,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.6199,
"delta": 0.0199,
"percent_delta": 0.0332,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.445,
"after": 0.4555,
"delta": 0.0105,
"percent_delta": 0.0236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.091,
"after": 1.1486,
"delta": 0.0576,
"percent_delta": 0.0528,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.091,
"after": 1.1486,
"delta": 0.0576,
"percent_delta": 0.0528,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.712,
"after": 0.6316,
"delta": -0.0804,
"percent_delta": -0.1129,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2367,
"predicted_3B": 0.0253,
"predicted_AB": 4.039,
"predicted_AVG": 0.2468,
"predicted_BB": 0.6433,
"predicted_H": 0.9969,
"predicted_HBP": 0.003,
"predicted_HR": 0.198,
"predicted_OBP": 0.3503,
"predicted_R": 0.829,
"predicted_RBI": 0.6628,
"predicted_SLG": 0.465,
"predicted_SO": 1.1274
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2367,
"after": 0.2367,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0253,
"after": 0.0253,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.039,
"after": 4.039,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2468,
"delta": 0.0098,
"percent_delta": 0.0414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6316,
"after": 0.6433,
"delta": 0.0117,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 0.9969,
"delta": 0.0369,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.003,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1918,
"after": 0.198,
"delta": 0.0062,
"percent_delta": 0.0323,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3231,
"after": 0.3503,
"delta": 0.0272,
"percent_delta": 0.0842,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7753,
"after": 0.829,
"delta": 0.0537,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6199,
"after": 0.6628,
"delta": 0.0429,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4555,
"after": 0.465,
"delta": 0.0095,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1486,
"after": 1.1274,
"delta": -0.0212,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7753,
"after": 0.829,
"delta": 0.0537,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.08), rates preserved: AVG=0.244 HR/AB=0.049",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2367,
"after": 0.0,
"delta": -0.2367,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0253,
"after": 0.0,
"delta": -0.0253,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.039,
"after": 4.0,
"delta": -0.039,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6433,
"after": 1.0,
"delta": 0.3567,
"percent_delta": 0.5545,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9969,
"after": 1.0,
"delta": 0.0031,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.0,
"delta": -0.003,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.198,
"after": 0.0,
"delta": -0.198,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6628,
"after": 1.0,
"delta": 0.3372,
"percent_delta": 0.5088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1274,
"after": 1.0,
"delta": -0.1274,
"percent_delta": -0.113,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6433,
"after": 1.0,
"delta": 0.3567,
"percent_delta": 0.5545,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2367,
"after": 0.0,
"delta": -0.2367,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.829,
"after": 1.0,
"delta": 0.171,
"percent_delta": 0.2063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.829,
"after": 1.0,
"delta": 0.171,
"percent_delta": 0.2063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2468,
"after": 0.25,
"delta": 0.0032,
"percent_delta": 0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3503,
"after": 0.4,
"delta": 0.0497,
"percent_delta": 0.1419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.25,
"delta": -0.215,
"percent_delta": -0.4624,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3503,
"after": 0.4,
"delta": 0.0497,
"percent_delta": 0.1419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.25,
"delta": -0.215,
"percent_delta": -0.4624,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2468,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3503,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.465,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2468,
"delta": -0.0032,
"percent_delta": -0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3503,
"delta": -0.0497,
"percent_delta": -0.1243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.465,
"delta": 0.215,
"percent_delta": 0.86,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.465,
"delta": 0.215,
"percent_delta": 0.86,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3503,
"delta": -0.0497,
"percent_delta": -0.1243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.0,
"delta": -0.227,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.08,
"after": 3.0,
"delta": -1.08,
"percent_delta": -0.2647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2468,
"delta": 0.0128,
"percent_delta": 0.0547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.712,
"after": 0.0,
"delta": -0.712,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 0.0,
"delta": -0.96,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3503,
"delta": 0.0283,
"percent_delta": 0.0879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.818,
"after": 0.0,
"delta": -0.818,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.445,
"after": 0.465,
"delta": 0.02,
"percent_delta": 0.0449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.091,
"after": 3.0,
"delta": 1.909,
"percent_delta": 1.7498,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.091,
"after": 3.0,
"delta": 1.909,
"percent_delta": 1.7498,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.08,
"after": 3.0,
"delta": -1.08,
"percent_delta": -0.2647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.227 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 4.080 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.712 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.322 | - |
| predicted_R | 0.818 | - |
| predicted_RBI | 0.600 | - |
| predicted_SLG | 0.445 | - |
| predicted_SO | 1.091 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.237 | 0.010 |
| predicted_3B | 0.025 | -0.005 |
| predicted_AB | 4.039 | -0.041 |
| predicted_AVG | 0.237 | 0.003 |
| predicted_BB | 0.632 | -0.080 |
| predicted_H | 0.960 | 0.000 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.192 | 0.012 |
| predicted_OBP | 0.323 | 0.001 |
| predicted_R | 0.775 | -0.043 |
| predicted_RBI | 0.620 | 0.020 |
| predicted_SLG | 0.456 | 0.011 |
| predicted_SO | 1.149 | 0.058 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.237 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 4.039 | 0.000 |
| predicted_AVG | 0.247 | 0.010 |
| predicted_BB | 0.643 | 0.012 |
| predicted_H | 0.997 | 0.037 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.198 | 0.006 |
| predicted_OBP | 0.350 | 0.027 |
| predicted_R | 0.829 | 0.054 |
| predicted_RBI | 0.663 | 0.043 |
| predicted_SLG | 0.465 | 0.010 |
| predicted_SO | 1.127 | -0.021 |
AB rounded to 4 (raw=4.08), rates preserved: AVG=0.244 HR/AB=0.049
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.237 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 4.000 | -0.039 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 1.000 | 0.357 |
| predicted_H | 1.000 | 0.003 |
| predicted_HR | 0.000 | -0.198 |
| predicted_OBP | 0.400 | 0.050 |
| predicted_R | 1.000 | 0.171 |
| predicted_RBI | 1.000 | 0.337 |
| predicted_SLG | 0.250 | -0.215 |
| predicted_SO | 1.000 | -0.127 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 4.000 | 2.000 | 0.000 | 1.000 | 2.000 | 2.000 | 1.000 | 8.000 | 0.1905 | 0.2273 | 0.4286 | 0.1905 | 0.0476 | 0.0952 | 0.0476 | 0.3810 |
| last_10 | 0.20 | 10 | - | 45.000 | 9.000 | 2.000 | 0.000 | 4.000 | 9.000 | 8.000 | 3.000 | 15.000 | 0.2000 | 0.2500 | 0.5111 | 0.2000 | 0.0889 | 0.2000 | 0.0667 | 0.3333 |
| season | 0.60 | 66 | - | 248.000 | 67.000 | 15.000 | 2.000 | 11.000 | 44.000 | 54.000 | 47.000 | 72.000 | 0.2702 | 0.3838 | 0.4798 | 0.2702 | 0.0444 | 0.1774 | 0.1895 | 0.2903 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2500 |
| predicted_3B | 0.0190 |
| predicted_AB | 3.9830 |
| predicted_AVG | 0.2412 |
| predicted_BB | 0.5220 |
| predicted_H | 0.9600 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2080 |
| predicted_OBP | 0.3246 |
| predicted_R | 0.7170 |
| predicted_RBI | 0.6470 |
| predicted_SLG | 0.4698 |
| predicted_SO | 1.2270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2270 | 0.2500 | 0.2367 | model_form_blend |
| predicted_3B | 0.0300 | 0.0190 | 0.0253 | model_form_blend |
| predicted_AB | 4.0800 | 3.9830 | 4.0390 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2412 | 0.2370 | model_form_blend |
| predicted_BB | 0.7120 | 0.5220 | 0.6316 | model_form_blend |
| predicted_H | 0.9600 | 0.9600 | 0.9600 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1800 | 0.2080 | 0.1918 | model_form_blend |
| predicted_OBP | 0.3220 | 0.3246 | 0.3231 | model_form_blend |
| predicted_R | 0.8180 | 0.7170 | 0.7753 | model_form_blend |
| predicted_RBI | 0.6000 | 0.6470 | 0.6199 | model_form_blend |
| predicted_SLG | 0.4450 | 0.4698 | 0.4555 | model_form_blend |
| predicted_SO | 1.0910 | 1.2270 | 1.1486 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 243 |
| Season rows before report date | 243 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.27 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 668930 |
| playerID | 668930 |
| playerName | Brice Turang |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.7 |
| sl_bb_percent | 15.8 |
| sl_woba | 0.372 |
| sl_xwoba | 0.363 |
| sl_xba | 0.256 |
| sl_xslg | 0.459 |
| sl_sweet_spot_percent | 37.0 |
| sl_barrel_batted_rate | 9.4 |
| sl_hard_hit_percent | 45.3 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 7.7 |
| sl_whiff_percent | 21.1 |
| sl_swing_percent | 40.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.114 | 0.000 | -0.114 | 0.000 |
| predicted_3B | 0.025 | 0.000 | 0.000 | Hitting_3B | 0.041 | 0.000 | -0.041 | 0.000 |
| predicted_AB | 2.775 | 2.000 | 3.000 | Hitting_AB | 3.138 | 1.000 | -1.138 | 1.000 |
| predicted_AVG | 0.274 | 0.000 | 0.333 | Hitting_AVG | 0.207 | 0.000 | -0.207 | 0.000 |
| predicted_BB | 0.525 | 1.000 | 0.000 | Hitting_BB | 0.707 | 0.000 | 0.293 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.740 | 0.000 | 1.000 | Hitting_H | 0.650 | 0.000 | -0.650 | 0.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.171 | 0.000 | -0.171 | 0.000 |
| predicted_OBP | 0.350 | 0.333 | 0.333 | Hitting_OBP | 0.365 | 0.000 | -0.032 | 0.333 |
| predicted_R | 0.500 | 0.000 | 1.000 | Hitting_R | 0.577 | 0.000 | -0.577 | 0.000 |
| predicted_RBI | 0.480 | 0.000 | 1.000 | Hitting_RBI | 0.496 | 0.000 | -0.496 | 0.000 |
| predicted_SLG | 0.503 | 0.000 | 0.333 | Hitting_SLG | 0.433 | 0.000 | -0.433 | 0.000 |
| predicted_SO | 0.650 | 2.000 | 1.000 | Hitting_SO | 0.821 | 0.000 | 1.179 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.6500 -> 2.0000 (boost 1.3500, worse) |
| Biggest Deboost | predicted_AB: 2.7750 -> 2.0000 (deboost -0.7750, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 3 | 1 | predicted_SLG: 0.5030 -> 0.5258 (boost 0.0228, better) | predicted_BB: 0.5250 -> 0.4608 (deboost -0.0642, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_OBP: 0.3563 -> 0.3843 (boost 0.0280, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_RBI: 0.5352 -> 1.0000 (boost 0.4648, better) | predicted_BB: 0.4693 -> 0.0000 (deboost -0.4693, worse) | AB rounded to 3 (raw=2.82), rates preserved: AVG=0.282 HR/AB=0.069 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5622 -> 1.0000 (boost 0.4378, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2818 -> 0.3330 (boost 0.0512, better) | predicted_SLG: 0.5439 -> 0.3330 (deboost -0.2109, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 3.0000 -> 2.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.5439 (boost 0.2109, better) | predicted_AVG: 0.3330 -> 0.2818 (deboost -0.0512, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "596142",
"player_name": "Gary Sánchez",
"position": "C",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.025,
"predicted_AB": 2.775,
"predicted_AVG": 0.274,
"predicted_BB": 0.525,
"predicted_H": 0.74,
"predicted_HR": 0.17,
"predicted_OBP": 0.35,
"predicted_R": 0.5,
"predicted_RBI": 0.48,
"predicted_SLG": 0.503,
"predicted_SO": 0.65
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1127,
"predicted_3B": 0.021,
"predicted_AB": 2.8186,
"predicted_AVG": 0.2757,
"predicted_BB": 0.4608,
"predicted_H": 0.765,
"predicted_HBP": 0.03,
"predicted_HR": 0.1886,
"predicted_OBP": 0.3563,
"predicted_R": 0.5258,
"predicted_RBI": 0.5006,
"predicted_SLG": 0.5258,
"predicted_SO": 0.5953
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.1127,
"delta": 0.0127,
"percent_delta": 0.127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.025,
"after": 0.021,
"delta": -0.004,
"percent_delta": -0.16,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.775,
"after": 2.8186,
"delta": 0.0436,
"percent_delta": 0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.274,
"after": 0.2757,
"delta": 0.0017,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.525,
"after": 0.4608,
"delta": -0.0642,
"percent_delta": -0.1223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 0.765,
"delta": 0.025,
"percent_delta": 0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.1886,
"delta": 0.0186,
"percent_delta": 0.1094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3563,
"delta": 0.0063,
"percent_delta": 0.018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.5258,
"delta": 0.0258,
"percent_delta": 0.0516,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.5006,
"delta": 0.0206,
"percent_delta": 0.0429,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.503,
"after": 0.5258,
"delta": 0.0228,
"percent_delta": 0.0453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.65,
"after": 0.5953,
"delta": -0.0547,
"percent_delta": -0.0842,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.503,
"after": 0.5258,
"delta": 0.0228,
"percent_delta": 0.0453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.525,
"after": 0.4608,
"delta": -0.0642,
"percent_delta": -0.1223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1127,
"predicted_3B": 0.021,
"predicted_AB": 2.8186,
"predicted_AVG": 0.2818,
"predicted_BB": 0.4693,
"predicted_H": 0.7944,
"predicted_HBP": 0.03,
"predicted_HR": 0.1947,
"predicted_OBP": 0.3843,
"predicted_R": 0.5622,
"predicted_RBI": 0.5352,
"predicted_SLG": 0.5439,
"predicted_SO": 0.5843
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1127,
"after": 0.1127,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.021,
"after": 0.021,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8186,
"after": 2.8186,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2757,
"after": 0.2818,
"delta": 0.0061,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4608,
"after": 0.4693,
"delta": 0.0085,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.765,
"after": 0.7944,
"delta": 0.0294,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.03,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1886,
"after": 0.1947,
"delta": 0.0061,
"percent_delta": 0.0323,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3563,
"after": 0.3843,
"delta": 0.028,
"percent_delta": 0.0786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5258,
"after": 0.5622,
"delta": 0.0364,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5006,
"after": 0.5352,
"delta": 0.0346,
"percent_delta": 0.0691,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5258,
"after": 0.5439,
"delta": 0.0181,
"percent_delta": 0.0344,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5953,
"after": 0.5843,
"delta": -0.011,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3563,
"after": 0.3843,
"delta": 0.028,
"percent_delta": 0.0786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.82), rates preserved: AVG=0.282 HR/AB=0.069",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1127,
"after": 0.0,
"delta": -0.1127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.021,
"after": 0.0,
"delta": -0.021,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8186,
"after": 3.0,
"delta": 0.1814,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4693,
"after": 0.0,
"delta": -0.4693,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7944,
"after": 1.0,
"delta": 0.2056,
"percent_delta": 0.2588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1947,
"after": 0.0,
"delta": -0.1947,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5352,
"after": 1.0,
"delta": 0.4648,
"percent_delta": 0.8685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5843,
"after": 1.0,
"delta": 0.4157,
"percent_delta": 0.7114,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5352,
"after": 1.0,
"delta": 0.4648,
"percent_delta": 0.8685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4693,
"after": 0.0,
"delta": -0.4693,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5622,
"after": 1.0,
"delta": 0.4378,
"percent_delta": 0.7787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5622,
"after": 1.0,
"delta": 0.4378,
"percent_delta": 0.7787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2818,
"after": 0.333,
"delta": 0.0512,
"percent_delta": 0.1817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3843,
"after": 0.333,
"delta": -0.0513,
"percent_delta": -0.1335,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5439,
"after": 0.333,
"delta": -0.2109,
"percent_delta": -0.3878,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2818,
"after": 0.333,
"delta": 0.0512,
"percent_delta": 0.1817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5439,
"after": 0.333,
"delta": -0.2109,
"percent_delta": -0.3878,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_AVG": 0.2818,
"predicted_BB": 1.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3843,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5439,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2818,
"delta": -0.0512,
"percent_delta": -0.1537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3843,
"delta": 0.0513,
"percent_delta": 0.1542,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.5439,
"delta": 0.2109,
"percent_delta": 0.6334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.5439,
"delta": 0.2109,
"percent_delta": 0.6334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2818,
"delta": -0.0512,
"percent_delta": -0.1537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.025,
"after": 0.0,
"delta": -0.025,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.775,
"after": 2.0,
"delta": -0.775,
"percent_delta": -0.2793,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.274,
"after": 0.2818,
"delta": 0.0078,
"percent_delta": 0.0285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.525,
"after": 1.0,
"delta": 0.475,
"percent_delta": 0.9048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 0.0,
"delta": -0.74,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.35,
"after": 0.3843,
"delta": 0.0343,
"percent_delta": 0.098,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.503,
"after": 0.5439,
"delta": 0.0409,
"percent_delta": 0.0813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 2.775,
"after": 2.0,
"delta": -0.775,
"percent_delta": -0.2793,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.025 | - |
| predicted_AB | 2.775 | - |
| predicted_AVG | 0.274 | - |
| predicted_BB | 0.525 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.350 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.503 | - |
| predicted_SO | 0.650 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.113 | 0.013 |
| predicted_3B | 0.021 | -0.004 |
| predicted_AB | 2.819 | 0.044 |
| predicted_AVG | 0.276 | 0.002 |
| predicted_BB | 0.461 | -0.064 |
| predicted_H | 0.765 | 0.025 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.189 | 0.019 |
| predicted_OBP | 0.356 | 0.006 |
| predicted_R | 0.526 | 0.026 |
| predicted_RBI | 0.501 | 0.021 |
| predicted_SLG | 0.526 | 0.023 |
| predicted_SO | 0.595 | -0.055 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.113 | 0.000 |
| predicted_3B | 0.021 | 0.000 |
| predicted_AB | 2.819 | 0.000 |
| predicted_AVG | 0.282 | 0.006 |
| predicted_BB | 0.469 | 0.009 |
| predicted_H | 0.794 | 0.029 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.195 | 0.006 |
| predicted_OBP | 0.384 | 0.028 |
| predicted_R | 0.562 | 0.036 |
| predicted_RBI | 0.535 | 0.035 |
| predicted_SLG | 0.544 | 0.018 |
| predicted_SO | 0.584 | -0.011 |
AB rounded to 3 (raw=2.82), rates preserved: AVG=0.282 HR/AB=0.069
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.113 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 3.000 | 0.181 |
| predicted_AVG | 0.333 | 0.051 |
| predicted_BB | 0.000 | -0.469 |
| predicted_H | 1.000 | 0.206 |
| predicted_HR | 0.000 | -0.195 |
| predicted_OBP | 0.333 | -0.051 |
| predicted_R | 1.000 | 0.438 |
| predicted_RBI | 1.000 | 0.465 |
| predicted_SLG | 0.333 | -0.211 |
| predicted_SO | 1.000 | 0.416 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 2.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 6.000 | 1.000 | 0.000 | 2.000 | 4.000 | 4.000 | 1.000 | 0.000 | 0.4286 | 0.4667 | 0.9286 | 0.4286 | 0.1429 | 0.2857 | 0.0714 | 0.0000 |
| last_10 | 0.20 | 10 | - | 22.000 | 7.000 | 1.000 | 0.000 | 2.000 | 4.000 | 5.000 | 1.000 | 3.000 | 0.3182 | 0.3478 | 0.6364 | 0.3182 | 0.0909 | 0.1818 | 0.0454 | 0.1364 |
| season | 0.60 | 40 | - | 111.000 | 25.000 | 4.000 | 1.000 | 7.000 | 19.000 | 20.000 | 21.000 | 26.000 | 0.2252 | 0.3582 | 0.4685 | 0.2252 | 0.0631 | 0.1712 | 0.1892 | 0.2342 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1320 |
| predicted_3B | 0.0150 |
| predicted_AB | 2.8850 |
| predicted_AVG | 0.2783 |
| predicted_BB | 0.3630 |
| predicted_H | 0.8030 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.2170 |
| predicted_OBP | 0.3660 |
| predicted_R | 0.5650 |
| predicted_RBI | 0.5320 |
| predicted_SLG | 0.5604 |
| predicted_SO | 0.5120 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.1320 | 0.1127 | model_form_blend |
| predicted_3B | 0.0250 | 0.0150 | 0.0210 | model_form_blend |
| predicted_AB | 2.7750 | 2.8850 | 2.8186 | model_form_blend |
| predicted_AVG | 0.2740 | 0.2783 | 0.2757 | model_form_blend |
| predicted_BB | 0.5250 | 0.3630 | 0.4608 | model_form_blend |
| predicted_H | 0.7400 | 0.8030 | 0.7650 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.1700 | 0.2170 | 0.1886 | model_form_blend |
| predicted_OBP | 0.3500 | 0.3660 | 0.3563 | model_form_blend |
| predicted_R | 0.5000 | 0.5650 | 0.5258 | model_form_blend |
| predicted_RBI | 0.4800 | 0.5320 | 0.5006 | model_form_blend |
| predicted_SLG | 0.5030 | 0.5604 | 0.5258 | model_form_blend |
| predicted_SO | 0.6500 | 0.5120 | 0.5953 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 123 |
| Season rows before report date | 123 |
| Report year | 2026 |
| Profile rows used | 40 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 2 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.225 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260617_CLE@MIL |
| game_type | ph |
| mlbID | 596142 |
| note | Lined out for Hamilton, D in the 8th. |
| playerID | 596142 |
| playerName | Gary Sánchez |
| pos | DH |
| started | False |
| startingPosition | PH |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.1 |
| sl_bb_percent | 16.9 |
| sl_woba | 0.37 |
| sl_xwoba | 0.373 |
| sl_xba | 0.235 |
| sl_xslg | 0.473 |
| sl_sweet_spot_percent | 27.1 |
| sl_barrel_batted_rate | 10.6 |
| sl_hard_hit_percent | 35.3 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 15.3 |
| sl_whiff_percent | 26.2 |
| sl_swing_percent | 36.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.197 | 0.000 | 0.000 | Hitting_2B | 0.205 | 0.000 | -0.205 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.640 | 2.000 | 4.000 | Hitting_AB | 3.728 | 3.000 | -1.728 | -1.000 |
| predicted_AVG | 0.240 | 0.500 | 0.250 | Hitting_AVG | 0.283 | 0.000 | 0.217 | 0.500 |
| predicted_BB | 0.508 | 1.000 | 1.000 | Hitting_BB | 0.431 | 1.000 | 0.569 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.880 | 1.000 | 1.000 | Hitting_H | 1.056 | 0.000 | -0.056 | 1.000 |
| predicted_HR | 0.200 | 1.000 | 0.000 | Hitting_HR | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_OBP | 0.348 | 0.667 | 0.400 | Hitting_OBP | 0.363 | 0.250 | 0.304 | 0.417 |
| predicted_R | 0.672 | 1.000 | 1.000 | Hitting_R | 0.703 | 1.000 | 0.297 | 0.000 |
| predicted_RBI | 0.700 | 2.000 | 1.000 | Hitting_RBI | 0.733 | 0.000 | 1.267 | 2.000 |
| predicted_SLG | 0.456 | 2.000 | 0.250 | Hitting_SLG | 0.499 | 0.000 | 1.501 | 2.000 |
| predicted_SO | 0.934 | 0.000 | 1.000 | Hitting_SO | 0.928 | 0.000 | -0.928 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 8 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_RBI: 0.7000 -> 2.0000 (boost 1.3000, better) |
| Biggest Deboost | predicted_AB: 3.6400 -> 2.0000 (deboost -1.6400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.4560 -> 0.4680 (boost 0.0120, better) | predicted_AB: 3.6400 -> 3.5480 (deboost -0.0920, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 3 | 0 | 3 | 0 | predicted_RBI: 0.7234 -> 0.7735 (boost 0.0501, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 4 | 3 | predicted_AB: 3.5480 -> 4.0000 (boost 0.4520, better) | predicted_HR: 0.2159 -> 0.0000 (deboost -0.2159, worse) | AB rounded to 4 (raw=3.64), rates preserved: AVG=0.245 HR/AB=0.059 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7113 -> 1.0000 (boost 0.2887, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3521 -> 0.4000 (boost 0.0479, better) | predicted_SLG: 0.4854 -> 0.2500 (deboost -0.2354, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 3 | 1 | predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 2.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4854 (boost 0.2354, better) | predicted_OBP: 0.4000 -> 0.3521 (deboost -0.0479, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641343",
"player_name": "Jake Bauers",
"position": "RF",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.197,
"predicted_3B": 0.0,
"predicted_AB": 3.64,
"predicted_AVG": 0.24,
"predicted_BB": 0.508,
"predicted_H": 0.88,
"predicted_HR": 0.2,
"predicted_OBP": 0.348,
"predicted_R": 0.672,
"predicted_RBI": 0.7,
"predicted_SLG": 0.456,
"predicted_SO": 0.934
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1824,
"predicted_3B": 0.0004,
"predicted_AB": 3.548,
"predicted_AVG": 0.2409,
"predicted_BB": 0.5427,
"predicted_H": 0.8583,
"predicted_HBP": 0.085,
"predicted_HR": 0.2092,
"predicted_OBP": 0.3545,
"predicted_R": 0.6653,
"predicted_RBI": 0.7234,
"predicted_SLG": 0.468,
"predicted_SO": 0.9817
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.1824,
"delta": -0.0146,
"percent_delta": -0.0741,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.64,
"after": 3.548,
"delta": -0.092,
"percent_delta": -0.0253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2409,
"delta": 0.0009,
"percent_delta": 0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.508,
"after": 0.5427,
"delta": 0.0347,
"percent_delta": 0.0683,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.8583,
"delta": -0.0217,
"percent_delta": -0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.2092,
"delta": 0.0092,
"percent_delta": 0.046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3545,
"delta": 0.0065,
"percent_delta": 0.0187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.672,
"after": 0.6653,
"delta": -0.0067,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7,
"after": 0.7234,
"delta": 0.0234,
"percent_delta": 0.0334,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.468,
"delta": 0.012,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.934,
"after": 0.9817,
"delta": 0.0477,
"percent_delta": 0.0511,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.468,
"delta": 0.012,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.64,
"after": 3.548,
"delta": -0.092,
"percent_delta": -0.0253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 61
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1824,
"predicted_3B": 0.0004,
"predicted_AB": 3.548,
"predicted_AVG": 0.2512,
"predicted_BB": 0.5527,
"predicted_H": 0.8913,
"predicted_HBP": 0.085,
"predicted_HR": 0.2159,
"predicted_OBP": 0.3521,
"predicted_R": 0.7113,
"predicted_RBI": 0.7735,
"predicted_SLG": 0.4854,
"predicted_SO": 0.9635
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1824,
"after": 0.1824,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.548,
"after": 3.548,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2409,
"after": 0.2512,
"delta": 0.0103,
"percent_delta": 0.0428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5427,
"after": 0.5527,
"delta": 0.01,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8583,
"after": 0.8913,
"delta": 0.033,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.085,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2092,
"after": 0.2159,
"delta": 0.0067,
"percent_delta": 0.032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3545,
"after": 0.3521,
"delta": -0.0024,
"percent_delta": -0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6653,
"after": 0.7113,
"delta": 0.046,
"percent_delta": 0.0691,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7234,
"after": 0.7735,
"delta": 0.0501,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.468,
"after": 0.4854,
"delta": 0.0174,
"percent_delta": 0.0372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9817,
"after": 0.9635,
"delta": -0.0182,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.7234,
"after": 0.7735,
"delta": 0.0501,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.64), rates preserved: AVG=0.245 HR/AB=0.059",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1824,
"after": 0.0,
"delta": -0.1824,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.548,
"after": 4.0,
"delta": 0.452,
"percent_delta": 0.1274,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5527,
"after": 1.0,
"delta": 0.4473,
"percent_delta": 0.8093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8913,
"after": 1.0,
"delta": 0.1087,
"percent_delta": 0.122,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2159,
"after": 0.0,
"delta": -0.2159,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7735,
"after": 1.0,
"delta": 0.2265,
"percent_delta": 0.2928,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9635,
"after": 1.0,
"delta": 0.0365,
"percent_delta": 0.0379,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.548,
"after": 4.0,
"delta": 0.452,
"percent_delta": 0.1274,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2159,
"after": 0.0,
"delta": -0.2159,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7113,
"after": 1.0,
"delta": 0.2887,
"percent_delta": 0.4059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7113,
"after": 1.0,
"delta": 0.2887,
"percent_delta": 0.4059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2512,
"after": 0.25,
"delta": -0.0012,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3521,
"after": 0.4,
"delta": 0.0479,
"percent_delta": 0.136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4854,
"after": 0.25,
"delta": -0.2354,
"percent_delta": -0.485,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3521,
"after": 0.4,
"delta": 0.0479,
"percent_delta": 0.136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4854,
"after": 0.25,
"delta": -0.2354,
"percent_delta": -0.485,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 2.0,
"delta": -2.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 2.0,
"delta": -2.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_AVG": 0.2512,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3521,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4854,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2512,
"delta": 0.0012,
"percent_delta": 0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3521,
"delta": -0.0479,
"percent_delta": -0.1197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4854,
"delta": 0.2354,
"percent_delta": 0.9417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4854,
"delta": 0.2354,
"percent_delta": 0.9417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3521,
"delta": -0.0479,
"percent_delta": -0.1197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.0,
"delta": -0.197,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.64,
"after": 2.0,
"delta": -1.64,
"percent_delta": -0.4505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2512,
"delta": 0.0112,
"percent_delta": 0.0467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.508,
"after": 1.0,
"delta": 0.492,
"percent_delta": 0.9685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 1.0,
"delta": 0.12,
"percent_delta": 0.1364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3521,
"delta": 0.0041,
"percent_delta": 0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.672,
"after": 1.0,
"delta": 0.328,
"percent_delta": 0.4881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7,
"after": 2.0,
"delta": 1.3,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.4854,
"delta": 0.0294,
"percent_delta": 0.0645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.934,
"after": 0.0,
"delta": -0.934,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 7,
"deboosted_metrics": 3,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.7,
"after": 2.0,
"delta": 1.3,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.64,
"after": 2.0,
"delta": -1.64,
"percent_delta": -0.4505,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.640 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.508 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.348 | - |
| predicted_R | 0.672 | - |
| predicted_RBI | 0.700 | - |
| predicted_SLG | 0.456 | - |
| predicted_SO | 0.934 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.182 | -0.015 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.548 | -0.092 |
| predicted_AVG | 0.241 | 0.001 |
| predicted_BB | 0.543 | 0.035 |
| predicted_H | 0.858 | -0.022 |
| predicted_HBP | 0.085 | - |
| predicted_HR | 0.209 | 0.009 |
| predicted_OBP | 0.354 | 0.007 |
| predicted_R | 0.665 | -0.007 |
| predicted_RBI | 0.723 | 0.023 |
| predicted_SLG | 0.468 | 0.012 |
| predicted_SO | 0.982 | 0.048 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.182 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.548 | 0.000 |
| predicted_AVG | 0.251 | 0.010 |
| predicted_BB | 0.553 | 0.010 |
| predicted_H | 0.891 | 0.033 |
| predicted_HBP | 0.085 | 0.000 |
| predicted_HR | 0.216 | 0.007 |
| predicted_OBP | 0.352 | -0.002 |
| predicted_R | 0.711 | 0.046 |
| predicted_RBI | 0.773 | 0.050 |
| predicted_SLG | 0.485 | 0.017 |
| predicted_SO | 0.964 | -0.018 |
AB rounded to 4 (raw=3.64), rates preserved: AVG=0.245 HR/AB=0.059
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.182 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.452 |
| predicted_AVG | 0.250 | -0.001 |
| predicted_BB | 1.000 | 0.447 |
| predicted_H | 1.000 | 0.109 |
| predicted_HR | 0.000 | -0.216 |
| predicted_OBP | 0.400 | 0.048 |
| predicted_R | 1.000 | 0.289 |
| predicted_RBI | 1.000 | 0.227 |
| predicted_SLG | 0.250 | -0.235 |
| predicted_SO | 1.000 | 0.036 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 2.000 | -2.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 3.000 | - |
| R | 1.000 | 0.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 2.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 2.000 | 7.000 | 0.1176 | 0.2500 | 0.2941 | 0.1177 | 0.0588 | 0.1765 | 0.1177 | 0.4118 |
| last_10 | 0.20 | 10 | - | 30.000 | 8.000 | 2.000 | 0.000 | 3.000 | 10.000 | 9.000 | 11.000 | 11.000 | 0.2667 | 0.4762 | 0.6333 | 0.2667 | 0.1000 | 0.3333 | 0.3667 | 0.3667 |
| season | 0.60 | 61 | - | 212.000 | 58.000 | 12.000 | 0.000 | 13.000 | 46.000 | 41.000 | 31.000 | 57.000 | 0.2736 | 0.3740 | 0.5142 | 0.2736 | 0.0613 | 0.2170 | 0.1462 | 0.2689 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1620 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.4200 |
| predicted_AVG | 0.2421 |
| predicted_BB | 0.5910 |
| predicted_H | 0.8280 |
| predicted_HBP | 0.0850 |
| predicted_HR | 0.2220 |
| predicted_OBP | 0.3635 |
| predicted_R | 0.6560 |
| predicted_RBI | 0.7560 |
| predicted_SLG | 0.4848 |
| predicted_SO | 1.0480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.1620 | 0.1824 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6400 | 3.4200 | 3.5480 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2421 | 0.2409 | model_form_blend |
| predicted_BB | 0.5080 | 0.5910 | 0.5427 | model_form_blend |
| predicted_H | 0.8800 | 0.8280 | 0.8583 | model_form_blend |
| predicted_HBP | - | 0.0850 | 0.0850 | form_only |
| predicted_HR | 0.2000 | 0.2220 | 0.2092 | model_form_blend |
| predicted_OBP | 0.3480 | 0.3635 | 0.3545 | model_form_blend |
| predicted_R | 0.6720 | 0.6560 | 0.6653 | model_form_blend |
| predicted_RBI | 0.7000 | 0.7560 | 0.7234 | model_form_blend |
| predicted_SLG | 0.4560 | 0.4848 | 0.4680 | model_form_blend |
| predicted_SO | 0.9340 | 1.0480 | 0.9817 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 195 |
| Season rows before report date | 195 |
| Report year | 2026 |
| Profile rows used | 61 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 2 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.274 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 641343 |
| playerID | 641343 |
| playerName | Jake Bauers |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 23.2 |
| sl_bb_percent | 12.8 |
| sl_woba | 0.38 |
| sl_xwoba | 0.362 |
| sl_xba | 0.258 |
| sl_xslg | 0.475 |
| sl_sweet_spot_percent | 30.6 |
| sl_barrel_batted_rate | 13.5 |
| sl_hard_hit_percent | 54.8 |
| sl_exit_velocity_avg | 92.6 |
| sl_launch_angle_avg | 9.3 |
| sl_whiff_percent | 24.8 |
| sl_swing_percent | 41.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.133 | 0.000 | 0.000 | Hitting_2B | 0.149 | 0.000 | -0.149 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 3.000 | 3.000 | Hitting_AB | 2.598 | 0.000 | 0.402 | 3.000 |
| predicted_AVG | 0.267 | 0.000 | 0.333 | Hitting_AVG | 0.119 | - | -0.119 | - |
| predicted_BB | 0.233 | 0.000 | 0.000 | Hitting_BB | 0.310 | 0.000 | -0.310 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_H | 0.190 | 0.000 | 1.000 | Hitting_H | 0.310 | 0.000 | -0.310 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_OBP | 0.267 | 0.000 | 0.333 | Hitting_OBP | 0.226 | - | -0.226 | - |
| predicted_R | 0.300 | 0.000 | 0.000 | Hitting_R | 0.299 | 0.000 | -0.299 | 0.000 |
| predicted_RBI | 0.150 | 0.000 | 0.000 | Hitting_RBI | 0.310 | 0.000 | -0.310 | 0.000 |
| predicted_SLG | 0.374 | 0.000 | 0.333 | Hitting_SLG | 0.190 | - | -0.190 | - |
| predicted_SO | 0.667 | 0.000 | 1.000 | Hitting_SO | 0.793 | 0.000 | -0.793 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 2.5000 -> 3.0000 (boost 0.5000, better) |
| Biggest Deboost | predicted_SO: 0.6670 -> 0.0000 (deboost -0.6670, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_H: 0.1900 -> 0.3270 (boost 0.1370, better) | predicted_AVG: 0.2670 -> 0.2470 (deboost -0.0200, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3781 -> 0.2565 (deboost -0.1216, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_AB: 2.5428 -> 3.0000 (boost 0.4572, better) | predicted_H: 0.3396 -> 0.0000 (deboost -0.3396, worse) | AB rounded to 3 (raw=2.54), rates preserved: AVG=0.134 HR/AB=0.022 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3841 -> 0.0000 (deboost -0.3841, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1335 -> 0.3330 (boost 0.1995, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 1 | 1 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1335 (deboost -0.1995, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663368",
"player_name": "Blake Perkins",
"position": "CF",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.133,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.267,
"predicted_BB": 0.233,
"predicted_H": 0.19,
"predicted_HR": 0.03,
"predicted_OBP": 0.267,
"predicted_R": 0.3,
"predicted_RBI": 0.15,
"predicted_SLG": 0.374,
"predicted_SO": 0.667
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1404,
"predicted_3B": 0.0011,
"predicted_AB": 2.5428,
"predicted_AVG": 0.247,
"predicted_BB": 0.2278,
"predicted_H": 0.327,
"predicted_HBP": 0.022,
"predicted_HR": 0.0549,
"predicted_OBP": 0.272,
"predicted_R": 0.3592,
"predicted_RBI": 0.2498,
"predicted_SLG": 0.3781,
"predicted_SO": 0.6618
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.133,
"after": 0.1404,
"delta": 0.0074,
"percent_delta": 0.0556,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0011,
"delta": 0.0011,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.5428,
"delta": 0.0428,
"percent_delta": 0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.247,
"delta": -0.02,
"percent_delta": -0.0749,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.233,
"after": 0.2278,
"delta": -0.0052,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.327,
"delta": 0.137,
"percent_delta": 0.7211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0549,
"delta": 0.0249,
"percent_delta": 0.83,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.267,
"after": 0.272,
"delta": 0.005,
"percent_delta": 0.0187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3,
"after": 0.3592,
"delta": 0.0592,
"percent_delta": 0.1973,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.2498,
"delta": 0.0998,
"percent_delta": 0.6653,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3781,
"delta": 0.0041,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.667,
"after": 0.6618,
"delta": -0.0052,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.19,
"after": 0.327,
"delta": 0.137,
"percent_delta": 0.7211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.247,
"delta": -0.02,
"percent_delta": -0.0749,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 33
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1404,
"predicted_3B": 0.0011,
"predicted_AB": 2.5428,
"predicted_AVG": 0.1335,
"predicted_BB": 0.232,
"predicted_H": 0.3396,
"predicted_HBP": 0.022,
"predicted_HR": 0.0567,
"predicted_OBP": 0.206,
"predicted_R": 0.3841,
"predicted_RBI": 0.2671,
"predicted_SLG": 0.2565,
"predicted_SO": 0.6496
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1404,
"after": 0.1404,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5428,
"after": 2.5428,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.1335,
"delta": -0.1135,
"percent_delta": -0.4595,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2278,
"after": 0.232,
"delta": 0.0042,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.327,
"after": 0.3396,
"delta": 0.0126,
"percent_delta": 0.0385,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.022,
"after": 0.022,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0549,
"after": 0.0567,
"delta": 0.0018,
"percent_delta": 0.0328,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.272,
"after": 0.206,
"delta": -0.066,
"percent_delta": -0.2426,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3592,
"after": 0.3841,
"delta": 0.0249,
"percent_delta": 0.0693,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2498,
"after": 0.2671,
"delta": 0.0173,
"percent_delta": 0.0693,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3781,
"after": 0.2565,
"delta": -0.1216,
"percent_delta": -0.3216,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6618,
"after": 0.6496,
"delta": -0.0122,
"percent_delta": -0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3781,
"after": 0.2565,
"delta": -0.1216,
"percent_delta": -0.3216,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.54), rates preserved: AVG=0.134 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1404,
"after": 0.0,
"delta": -0.1404,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0,
"delta": -0.0011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5428,
"after": 3.0,
"delta": 0.4572,
"percent_delta": 0.1798,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.232,
"after": 0.0,
"delta": -0.232,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3396,
"after": 0.0,
"delta": -0.3396,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.022,
"after": 0.0,
"delta": -0.022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0567,
"after": 0.0,
"delta": -0.0567,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2671,
"after": 0.0,
"delta": -0.2671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6496,
"after": 1.0,
"delta": 0.3504,
"percent_delta": 0.5394,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5428,
"after": 3.0,
"delta": 0.4572,
"percent_delta": 0.1798,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.3396,
"after": 0.0,
"delta": -0.3396,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3841,
"after": 0.0,
"delta": -0.3841,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3841,
"after": 0.0,
"delta": -0.3841,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1335,
"after": 0.333,
"delta": 0.1995,
"percent_delta": 1.4944,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.206,
"after": 0.333,
"delta": 0.127,
"percent_delta": 0.6165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2565,
"after": 0.333,
"delta": 0.0765,
"percent_delta": 0.2982,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1335,
"after": 0.333,
"delta": 0.1995,
"percent_delta": 1.4944,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1335,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.206,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2565,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1335,
"delta": -0.1995,
"percent_delta": -0.599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.206,
"delta": -0.127,
"percent_delta": -0.3814,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2565,
"delta": -0.0765,
"percent_delta": -0.2298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1335,
"delta": -0.1995,
"percent_delta": -0.599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.133,
"after": 0.0,
"delta": -0.133,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.1335,
"delta": -0.1335,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.233,
"after": 0.0,
"delta": -0.233,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.267,
"after": 0.206,
"delta": -0.061,
"percent_delta": -0.2285,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.2565,
"delta": -0.1175,
"percent_delta": -0.3142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.667,
"after": 0.0,
"delta": -0.667,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.667,
"after": 0.0,
"delta": -0.667,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.133 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.267 | - |
| predicted_BB | 0.233 | - |
| predicted_H | 0.190 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.267 | - |
| predicted_R | 0.300 | - |
| predicted_RBI | 0.150 | - |
| predicted_SLG | 0.374 | - |
| predicted_SO | 0.667 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.140 | 0.007 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.543 | 0.043 |
| predicted_AVG | 0.247 | -0.020 |
| predicted_BB | 0.228 | -0.005 |
| predicted_H | 0.327 | 0.137 |
| predicted_HBP | 0.022 | - |
| predicted_HR | 0.055 | 0.025 |
| predicted_OBP | 0.272 | 0.005 |
| predicted_R | 0.359 | 0.059 |
| predicted_RBI | 0.250 | 0.100 |
| predicted_SLG | 0.378 | 0.004 |
| predicted_SO | 0.662 | -0.005 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.140 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.543 | 0.000 |
| predicted_AVG | 0.134 | -0.113 |
| predicted_BB | 0.232 | 0.004 |
| predicted_H | 0.340 | 0.013 |
| predicted_HBP | 0.022 | 0.000 |
| predicted_HR | 0.057 | 0.002 |
| predicted_OBP | 0.206 | -0.066 |
| predicted_R | 0.384 | 0.025 |
| predicted_RBI | 0.267 | 0.017 |
| predicted_SLG | 0.257 | -0.122 |
| predicted_SO | 0.650 | -0.012 |
AB rounded to 3 (raw=2.54), rates preserved: AVG=0.134 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.140 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.457 |
| predicted_AVG | 0.333 | 0.200 |
| predicted_BB | 0.000 | -0.232 |
| predicted_H | 1.000 | 0.660 |
| predicted_HR | 0.000 | -0.057 |
| predicted_OBP | 0.333 | 0.127 |
| predicted_R | 0.000 | -0.384 |
| predicted_RBI | 0.000 | -0.267 |
| predicted_SLG | 0.333 | 0.077 |
| predicted_SO | 1.000 | 0.350 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 10.000 | 4.000 | 1.000 | 0.000 | 1.000 | 3.000 | 4.000 | 1.000 | 2.000 | 0.4000 | 0.4545 | 0.8000 | 0.4000 | 0.1000 | 0.3000 | 0.1000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 20.000 | 4.000 | 1.000 | 0.000 | 1.000 | 3.000 | 4.000 | 1.000 | 6.000 | 0.2000 | 0.2381 | 0.4000 | 0.2000 | 0.0500 | 0.1500 | 0.0500 | 0.3000 |
| season | 0.60 | 33 | - | 75.000 | 10.000 | 4.000 | 0.000 | 1.000 | 10.000 | 9.000 | 7.000 | 20.000 | 0.1333 | 0.2169 | 0.2267 | 0.1333 | 0.0133 | 0.1333 | 0.0933 | 0.2667 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1530 |
| predicted_3B | 0.0030 |
| predicted_AB | 2.6150 |
| predicted_AVG | 0.2134 |
| predicted_BB | 0.2190 |
| predicted_H | 0.5580 |
| predicted_HBP | 0.0220 |
| predicted_HR | 0.0970 |
| predicted_OBP | 0.2805 |
| predicted_R | 0.4590 |
| predicted_RBI | 0.4180 |
| predicted_SLG | 0.3850 |
| predicted_SO | 0.6530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1330 | 0.1530 | 0.1404 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 2.5000 | 2.6150 | 2.5428 | model_form_blend |
| predicted_AVG | 0.2670 | 0.2134 | 0.2470 | model_form_blend |
| predicted_BB | 0.2330 | 0.2190 | 0.2278 | model_form_blend |
| predicted_H | 0.1900 | 0.5580 | 0.3270 | model_form_blend |
| predicted_HBP | - | 0.0220 | 0.0220 | form_only |
| predicted_HR | 0.0300 | 0.0970 | 0.0549 | model_form_blend |
| predicted_OBP | 0.2670 | 0.2805 | 0.2720 | model_form_blend |
| predicted_R | 0.3000 | 0.4590 | 0.3592 | model_form_blend |
| predicted_RBI | 0.1500 | 0.4180 | 0.2498 | model_form_blend |
| predicted_SLG | 0.3740 | 0.3850 | 0.3781 | model_form_blend |
| predicted_SO | 0.6670 | 0.6530 | 0.6618 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 87 |
| Season rows before report date | 87 |
| Report year | 2026 |
| Profile rows used | 33 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.133 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 2 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PR-CF |
| gameID | 20260617_CLE@MIL |
| game_type | ph |
| mlbID | 663368 |
| note | Ran for Vaughn in the 8th. |
| playerID | 663368 |
| playerName | Blake Perkins |
| pos | CF |
| started | False |
| startingPosition | PR |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 10.5 |
| sl_woba | 0.219 |
| sl_xwoba | 0.268 |
| sl_xba | 0.194 |
| sl_xslg | 0.296 |
| sl_sweet_spot_percent | 21.4 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 35.7 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 13.4 |
| sl_whiff_percent | 23.4 |
| sl_swing_percent | 43.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.000 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.500 | 3.000 | 4.000 | Hitting_AB | 3.500 | 4.000 | -0.500 | -1.000 |
| predicted_AVG | 0.247 | 0.000 | 0.250 | Hitting_AVG | 0.286 | 0.500 | -0.286 | -0.500 |
| predicted_BB | 0.000 | 0.000 | 0.000 | Hitting_BB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.800 | 0.000 | 1.000 | Hitting_H | 1.000 | 2.000 | -1.000 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.309 | 0.000 | 0.250 | Hitting_OBP | 0.286 | 0.500 | -0.286 | -0.500 |
| predicted_R | 0.500 | 0.000 | 1.000 | Hitting_R | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_SLG | 0.380 | 0.000 | 0.250 | Hitting_SLG | 0.286 | 0.500 | -0.286 | -0.500 |
| predicted_SO | 1.000 | 3.000 | 1.000 | Hitting_SO | 1.000 | 2.000 | 2.000 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 7 |
| Better Metrics | 0 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) |
| Biggest Deboost | predicted_H: 0.8000 -> 0.0000 (deboost -0.8000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_AB: 3.5000 -> 3.5630 (boost 0.0630, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3088 -> 0.2548 (deboost -0.0540, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 3 | 2 | 3 | 2 | predicted_RBI: 0.4773 -> 1.0000 (boost 0.5227, better) | predicted_HR: 0.1044 -> 0.0000 (deboost -0.1044, worse) | AB rounded to 4 (raw=3.56), rates preserved: AVG=0.244 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5350 -> 1.0000 (boost 0.4650, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2441 -> 0.2500 (boost 0.0059, better) | predicted_SLG: 0.3424 -> 0.2500 (deboost -0.0924, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 1 | 4 | 0 | 5 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.3424 (boost 0.0924, better) | predicted_AVG: 0.2500 -> 0.2441 (deboost -0.0059, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "806198",
"player_name": "Cooper Pratt",
"position": "SS",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.5,
"predicted_AVG": 0.247,
"predicted_BB": 0.0,
"predicted_H": 0.8,
"predicted_HR": 0.1,
"predicted_OBP": 0.309,
"predicted_R": 0.5,
"predicted_RBI": 0.43,
"predicted_SLG": 0.38,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0319,
"predicted_3B": 0.0026,
"predicted_AB": 3.563,
"predicted_AVG": 0.2492,
"predicted_BB": 0.0502,
"predicted_H": 0.8375,
"predicted_HBP": 0.028,
"predicted_HR": 0.1011,
"predicted_OBP": 0.3088,
"predicted_R": 0.5004,
"predicted_RBI": 0.4464,
"predicted_SLG": 0.3813,
"predicted_SO": 0.9753
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0319,
"delta": 0.0319,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0026,
"delta": 0.0026,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5,
"after": 3.563,
"delta": 0.063,
"percent_delta": 0.018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2492,
"delta": 0.0022,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0502,
"delta": 0.0502,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.8375,
"delta": 0.0375,
"percent_delta": 0.0469,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1011,
"delta": 0.0011,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3088,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.5004,
"delta": 0.0004,
"percent_delta": 0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4464,
"delta": 0.0164,
"percent_delta": 0.0381,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3813,
"delta": 0.0013,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.9753,
"delta": -0.0247,
"percent_delta": -0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5,
"after": 3.563,
"delta": 0.063,
"percent_delta": 0.018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 2,
"last_10": 2,
"season": 2
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0319,
"predicted_3B": 0.0026,
"predicted_AB": 3.563,
"predicted_AVG": 0.2441,
"predicted_BB": 0.0511,
"predicted_H": 0.8697,
"predicted_HBP": 0.028,
"predicted_HR": 0.1044,
"predicted_OBP": 0.2548,
"predicted_R": 0.535,
"predicted_RBI": 0.4773,
"predicted_SLG": 0.3424,
"predicted_SO": 0.9573
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0319,
"after": 0.0319,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0026,
"after": 0.0026,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.563,
"after": 3.563,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2492,
"after": 0.2441,
"delta": -0.0051,
"percent_delta": -0.0205,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0502,
"after": 0.0511,
"delta": 0.0009,
"percent_delta": 0.0179,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8375,
"after": 0.8697,
"delta": 0.0322,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.028,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1011,
"after": 0.1044,
"delta": 0.0033,
"percent_delta": 0.0326,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3088,
"after": 0.2548,
"delta": -0.054,
"percent_delta": -0.1749,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5004,
"after": 0.535,
"delta": 0.0346,
"percent_delta": 0.0691,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4464,
"after": 0.4773,
"delta": 0.0309,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3813,
"after": 0.3424,
"delta": -0.0389,
"percent_delta": -0.102,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9753,
"after": 0.9573,
"delta": -0.018,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3088,
"after": 0.2548,
"delta": -0.054,
"percent_delta": -0.1749,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.56), rates preserved: AVG=0.244 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0319,
"after": 0.0,
"delta": -0.0319,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0026,
"after": 0.0,
"delta": -0.0026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.563,
"after": 4.0,
"delta": 0.437,
"percent_delta": 0.1226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0511,
"after": 0.0,
"delta": -0.0511,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8697,
"after": 1.0,
"delta": 0.1303,
"percent_delta": 0.1498,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1044,
"after": 0.0,
"delta": -0.1044,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4773,
"after": 1.0,
"delta": 0.5227,
"percent_delta": 1.0951,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9573,
"after": 1.0,
"delta": 0.0427,
"percent_delta": 0.0446,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4773,
"after": 1.0,
"delta": 0.5227,
"percent_delta": 1.0951,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.1044,
"after": 0.0,
"delta": -0.1044,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.535,
"after": 1.0,
"delta": 0.465,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.535,
"after": 1.0,
"delta": 0.465,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2441,
"after": 0.25,
"delta": 0.0059,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2548,
"after": 0.25,
"delta": -0.0048,
"percent_delta": -0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3424,
"after": 0.25,
"delta": -0.0924,
"percent_delta": -0.2699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2441,
"after": 0.25,
"delta": 0.0059,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3424,
"after": 0.25,
"delta": -0.0924,
"percent_delta": -0.2699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2441,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2548,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3424,
"predicted_SO": 3.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2441,
"delta": -0.0059,
"percent_delta": -0.0237,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2548,
"delta": 0.0048,
"percent_delta": 0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3424,
"delta": 0.0924,
"percent_delta": 0.3694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3424,
"delta": 0.0924,
"percent_delta": 0.3694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2441,
"delta": -0.0059,
"percent_delta": -0.0237,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5,
"after": 3.0,
"delta": -0.5,
"percent_delta": -0.1429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2441,
"delta": -0.0029,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.0,
"delta": -0.8,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.2548,
"delta": -0.0542,
"percent_delta": -0.1754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3424,
"delta": -0.0376,
"percent_delta": -0.0989,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 0,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.8,
"after": 0.0,
"delta": -0.8,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.500 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.380 | - |
| predicted_SO | 1.000 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.032 | 0.032 |
| predicted_3B | 0.003 | 0.003 |
| predicted_AB | 3.563 | 0.063 |
| predicted_AVG | 0.249 | 0.002 |
| predicted_BB | 0.050 | 0.050 |
| predicted_H | 0.838 | 0.037 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.101 | 0.001 |
| predicted_OBP | 0.309 | -0.000 |
| predicted_R | 0.500 | 0.000 |
| predicted_RBI | 0.446 | 0.016 |
| predicted_SLG | 0.381 | 0.001 |
| predicted_SO | 0.975 | -0.025 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.032 | 0.000 |
| predicted_3B | 0.003 | 0.000 |
| predicted_AB | 3.563 | 0.000 |
| predicted_AVG | 0.244 | -0.005 |
| predicted_BB | 0.051 | 0.001 |
| predicted_H | 0.870 | 0.032 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.104 | 0.003 |
| predicted_OBP | 0.255 | -0.054 |
| predicted_R | 0.535 | 0.035 |
| predicted_RBI | 0.477 | 0.031 |
| predicted_SLG | 0.342 | -0.039 |
| predicted_SO | 0.957 | -0.018 |
AB rounded to 4 (raw=3.56), rates preserved: AVG=0.244 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.032 |
| predicted_3B | 0.000 | -0.003 |
| predicted_AB | 4.000 | 0.437 |
| predicted_AVG | 0.250 | 0.006 |
| predicted_BB | 0.000 | -0.051 |
| predicted_H | 1.000 | 0.130 |
| predicted_HR | 0.000 | -0.104 |
| predicted_OBP | 0.250 | -0.005 |
| predicted_R | 1.000 | 0.465 |
| predicted_RBI | 1.000 | 0.523 |
| predicted_SLG | 0.250 | -0.092 |
| predicted_SO | 1.000 | 0.043 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 2 | - | 7.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 2.000 | 0.2857 | 0.2857 | 0.2857 | 0.2857 | 0.0000 | 0.1429 | 0.0000 | 0.2857 |
| last_10 | 0.20 | 2 | - | 7.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 2.000 | 0.2857 | 0.2857 | 0.2857 | 0.2857 | 0.0000 | 0.1429 | 0.0000 | 0.2857 |
| season | 0.60 | 2 | - | 7.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 2.000 | 0.2857 | 0.2857 | 0.2857 | 0.2857 | 0.0000 | 0.1429 | 0.0000 | 0.2857 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1500 |
| predicted_3B | 0.0120 |
| predicted_AB | 3.7960 |
| predicted_AVG | 0.2572 |
| predicted_BB | 0.2360 |
| predicted_H | 0.9760 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.1050 |
| predicted_OBP | 0.3082 |
| predicted_R | 0.5020 |
| predicted_RBI | 0.5070 |
| predicted_SLG | 0.3863 |
| predicted_SO | 0.8840 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1500 | 0.0319 | model_form_blend |
| predicted_3B | 0.0000 | 0.0120 | 0.0026 | model_form_blend |
| predicted_AB | 3.5000 | 3.7960 | 3.5630 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2572 | 0.2492 | model_form_blend |
| predicted_BB | 0.0000 | 0.2360 | 0.0502 | model_form_blend |
| predicted_H | 0.8000 | 0.9760 | 0.8375 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1000 | 0.1050 | 0.1011 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3082 | 0.3088 | model_form_blend |
| predicted_R | 0.5000 | 0.5020 | 0.5004 | model_form_blend |
| predicted_RBI | 0.4300 | 0.5070 | 0.4464 | model_form_blend |
| predicted_SLG | 0.3800 | 0.3863 | 0.3813 | model_form_blend |
| predicted_SO | 1.0000 | 0.8840 | 0.9753 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 2 |
| Season rows before report date | 2 |
| Report year | 2026 |
| Profile rows used | 2 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.286 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 806198 |
| playerID | 806198 |
| playerName | Cooper Pratt |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.6 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.255 |
| sl_xwoba | 0.188 |
| sl_xba | 0.202 |
| sl_xslg | 0.225 |
| sl_sweet_spot_percent | 20.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 40.0 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | -0.1 |
| sl_whiff_percent | 31.3 |
| sl_swing_percent | 53.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.066 | 0.000 | -0.066 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.900 | 3.000 | 3.000 | Hitting_AB | 2.914 | 0.000 | 0.086 | 3.000 |
| predicted_AVG | 0.271 | 0.000 | 0.333 | Hitting_AVG | 0.205 | - | -0.205 | - |
| predicted_BB | 0.380 | 0.000 | 0.000 | Hitting_BB | 0.401 | 0.000 | -0.401 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_H | 0.590 | 0.000 | 1.000 | Hitting_H | 0.599 | 0.000 | -0.599 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_OBP | 0.310 | 0.000 | 0.333 | Hitting_OBP | 0.297 | - | -0.297 | - |
| predicted_R | 0.340 | 0.000 | 0.000 | Hitting_R | 0.349 | 0.000 | -0.349 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.276 | 0.000 | -0.276 | 0.000 |
| predicted_SLG | 0.339 | 0.000 | 0.333 | Hitting_SLG | 0.255 | - | -0.255 | - |
| predicted_SO | 0.540 | 0.000 | 1.000 | Hitting_SO | 0.618 | 0.000 | -0.618 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 2.9000 -> 3.0000 (boost 0.1000, better) |
| Biggest Deboost | predicted_H: 0.5900 -> 0.0000 (deboost -0.5900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 2 | 2 | predicted_AB: 2.9000 -> 2.9806 (boost 0.0806, better) | predicted_AVG: 0.2710 -> 0.2597 (deboost -0.0113, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2597 -> 0.2286 (deboost -0.0311, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 2 | 3 | 1 | 4 | predicted_SO: 0.5081 -> 1.0000 (boost 0.4919, worse) | predicted_BB: 0.3528 -> 0.0000 (deboost -0.3528, worse) | AB rounded to 3 (raw=2.98), rates preserved: AVG=0.229 HR/AB=0.014 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3605 -> 0.0000 (deboost -0.3605, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2286 -> 0.3330 (boost 0.1044, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 1 | 1 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2286 (deboost -0.1044, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687401",
"player_name": "Joey Ortiz",
"position": "3B",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.0,
"predicted_AB": 2.9,
"predicted_AVG": 0.271,
"predicted_BB": 0.38,
"predicted_H": 0.59,
"predicted_HR": 0.05,
"predicted_OBP": 0.31,
"predicted_R": 0.34,
"predicted_RBI": 0.27,
"predicted_SLG": 0.339,
"predicted_SO": 0.54
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1263,
"predicted_3B": 0.0008,
"predicted_AB": 2.9806,
"predicted_AVG": 0.2597,
"predicted_BB": 0.3464,
"predicted_H": 0.6561,
"predicted_HBP": 0.004,
"predicted_HR": 0.0407,
"predicted_OBP": 0.3097,
"predicted_R": 0.3372,
"predicted_RBI": 0.2696,
"predicted_SLG": 0.3328,
"predicted_SO": 0.5177
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.1263,
"delta": 0.0263,
"percent_delta": 0.263,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9,
"after": 2.9806,
"delta": 0.0806,
"percent_delta": 0.0278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2597,
"delta": -0.0113,
"percent_delta": -0.0417,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.38,
"after": 0.3464,
"delta": -0.0336,
"percent_delta": -0.0884,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.59,
"after": 0.6561,
"delta": 0.0661,
"percent_delta": 0.112,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0407,
"delta": -0.0093,
"percent_delta": -0.186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.3097,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.34,
"after": 0.3372,
"delta": -0.0028,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2696,
"delta": -0.0004,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3328,
"delta": -0.0062,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.54,
"after": 0.5177,
"delta": -0.0223,
"percent_delta": -0.0413,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.9,
"after": 2.9806,
"delta": 0.0806,
"percent_delta": 0.0278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2597,
"delta": -0.0113,
"percent_delta": -0.0417,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 50
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1263,
"predicted_3B": 0.0008,
"predicted_AB": 2.9806,
"predicted_AVG": 0.2286,
"predicted_BB": 0.3528,
"predicted_H": 0.6813,
"predicted_HBP": 0.004,
"predicted_HR": 0.042,
"predicted_OBP": 0.3102,
"predicted_R": 0.3605,
"predicted_RBI": 0.2883,
"predicted_SLG": 0.3138,
"predicted_SO": 0.5081
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1263,
"after": 0.1263,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9806,
"after": 2.9806,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2597,
"after": 0.2286,
"delta": -0.0311,
"percent_delta": -0.1198,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3464,
"after": 0.3528,
"delta": 0.0064,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6561,
"after": 0.6813,
"delta": 0.0252,
"percent_delta": 0.0384,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0407,
"after": 0.042,
"delta": 0.0013,
"percent_delta": 0.0319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3097,
"after": 0.3102,
"delta": 0.0005,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3372,
"after": 0.3605,
"delta": 0.0233,
"percent_delta": 0.0691,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2696,
"after": 0.2883,
"delta": 0.0187,
"percent_delta": 0.0694,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3328,
"after": 0.3138,
"delta": -0.019,
"percent_delta": -0.0571,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5177,
"after": 0.5081,
"delta": -0.0096,
"percent_delta": -0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2597,
"after": 0.2286,
"delta": -0.0311,
"percent_delta": -0.1198,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.98), rates preserved: AVG=0.229 HR/AB=0.014",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1263,
"after": 0.0,
"delta": -0.1263,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9806,
"after": 3.0,
"delta": 0.0194,
"percent_delta": 0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3528,
"after": 0.0,
"delta": -0.3528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6813,
"after": 1.0,
"delta": 0.3187,
"percent_delta": 0.4678,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2883,
"after": 0.0,
"delta": -0.2883,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5081,
"after": 1.0,
"delta": 0.4919,
"percent_delta": 0.9681,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5081,
"after": 1.0,
"delta": 0.4919,
"percent_delta": 0.9681,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3528,
"after": 0.0,
"delta": -0.3528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3605,
"after": 0.0,
"delta": -0.3605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3605,
"after": 0.0,
"delta": -0.3605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2286,
"after": 0.333,
"delta": 0.1044,
"percent_delta": 0.4567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3102,
"after": 0.333,
"delta": 0.0228,
"percent_delta": 0.0735,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3138,
"after": 0.333,
"delta": 0.0192,
"percent_delta": 0.0612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2286,
"after": 0.333,
"delta": 0.1044,
"percent_delta": 0.4567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2286,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3102,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3138,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2286,
"delta": -0.1044,
"percent_delta": -0.3136,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3102,
"delta": -0.0228,
"percent_delta": -0.0684,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3138,
"delta": -0.0192,
"percent_delta": -0.0577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2286,
"delta": -0.1044,
"percent_delta": -0.3136,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9,
"after": 3.0,
"delta": 0.1,
"percent_delta": 0.0345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2286,
"delta": -0.0424,
"percent_delta": -0.1565,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.3102,
"delta": 0.0002,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3138,
"delta": -0.0252,
"percent_delta": -0.0743,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.54,
"after": 0.0,
"delta": -0.54,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.9,
"after": 3.0,
"delta": 0.1,
"percent_delta": 0.0345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.900 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.380 | - |
| predicted_H | 0.590 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.310 | - |
| predicted_R | 0.340 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.339 | - |
| predicted_SO | 0.540 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.126 | 0.026 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.981 | 0.081 |
| predicted_AVG | 0.260 | -0.011 |
| predicted_BB | 0.346 | -0.034 |
| predicted_H | 0.656 | 0.066 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.041 | -0.009 |
| predicted_OBP | 0.310 | -0.000 |
| predicted_R | 0.337 | -0.003 |
| predicted_RBI | 0.270 | -0.000 |
| predicted_SLG | 0.333 | -0.006 |
| predicted_SO | 0.518 | -0.022 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.126 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.981 | 0.000 |
| predicted_AVG | 0.229 | -0.031 |
| predicted_BB | 0.353 | 0.006 |
| predicted_H | 0.681 | 0.025 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.042 | 0.001 |
| predicted_OBP | 0.310 | 0.001 |
| predicted_R | 0.360 | 0.023 |
| predicted_RBI | 0.288 | 0.019 |
| predicted_SLG | 0.314 | -0.019 |
| predicted_SO | 0.508 | -0.010 |
AB rounded to 3 (raw=2.98), rates preserved: AVG=0.229 HR/AB=0.014
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.126 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.019 |
| predicted_AVG | 0.333 | 0.104 |
| predicted_BB | 0.000 | -0.353 |
| predicted_H | 1.000 | 0.319 |
| predicted_HR | 0.000 | -0.042 |
| predicted_OBP | 0.333 | 0.023 |
| predicted_R | 0.000 | -0.360 |
| predicted_RBI | 0.000 | -0.288 |
| predicted_SLG | 0.333 | 0.019 |
| predicted_SO | 1.000 | 0.492 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 5.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 0.3125 | 0.3125 | 0.3750 | 0.3125 | 0.0000 | 0.0000 | 0.0000 | 0.0625 |
| last_10 | 0.20 | 10 | - | 29.000 | 8.000 | 3.000 | 0.000 | 0.000 | 3.000 | 3.000 | 3.000 | 3.000 | 0.2759 | 0.3438 | 0.3793 | 0.2759 | 0.0000 | 0.1035 | 0.1035 | 0.1035 |
| season | 0.60 | 50 | - | 145.000 | 30.000 | 5.000 | 0.000 | 1.000 | 14.000 | 17.000 | 19.000 | 27.000 | 0.2069 | 0.2952 | 0.2621 | 0.2069 | 0.0069 | 0.0965 | 0.1310 | 0.1862 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1650 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.0990 |
| predicted_AVG | 0.2431 |
| predicted_BB | 0.2970 |
| predicted_H | 0.7530 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.0270 |
| predicted_OBP | 0.3092 |
| predicted_R | 0.3330 |
| predicted_RBI | 0.2690 |
| predicted_SLG | 0.3237 |
| predicted_SO | 0.4850 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.1650 | 0.1263 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9000 | 3.0990 | 2.9806 | model_form_blend |
| predicted_AVG | 0.2710 | 0.2431 | 0.2597 | model_form_blend |
| predicted_BB | 0.3800 | 0.2970 | 0.3464 | model_form_blend |
| predicted_H | 0.5900 | 0.7530 | 0.6561 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0500 | 0.0270 | 0.0407 | model_form_blend |
| predicted_OBP | 0.3100 | 0.3092 | 0.3097 | model_form_blend |
| predicted_R | 0.3400 | 0.3330 | 0.3372 | model_form_blend |
| predicted_RBI | 0.2700 | 0.2690 | 0.2696 | model_form_blend |
| predicted_SLG | 0.3390 | 0.3237 | 0.3328 | model_form_blend |
| predicted_SO | 0.5400 | 0.4850 | 0.5177 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 152 |
| Season rows before report date | 152 |
| Report year | 2026 |
| Profile rows used | 50 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.207 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 2 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_CLE@MIL |
| game_type | short |
| mlbID | 687401 |
| playerID | 687401 |
| playerName | Joey Ortiz |
| pos | SS |
| started | False |
| startingPosition | 3B |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 15.9 |
| sl_bb_percent | 11.8 |
| sl_woba | 0.263 |
| sl_xwoba | 0.297 |
| sl_xba | 0.231 |
| sl_xslg | 0.3 |
| sl_sweet_spot_percent | 22.0 |
| sl_barrel_batted_rate | 3.3 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 87.3 |
| sl_launch_angle_avg | 7.3 |
| sl_whiff_percent | 17.5 |
| sl_swing_percent | 43.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 0.786 | 0.000 | 2.214 | 3.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.214 | 4.000 | -0.214 | -3.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 2.786 | 8.000 | 1.214 | -4.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 2.914 | 5.000 | 2.086 | 0.000 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 3.143 | 7.000 | 1.857 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "675660",
"player_name": "Shane Drohan",
"position": "Starter",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_SO": 5.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_R": 1.0,
"predicted_SO": 5.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 5.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 20.100 | 11.000 | 20.000 | 3.000 | 22.000 | 3.000 | 4.8689 | 1.1311 | 0.5410 | 0.9836 | 0.1475 | 1.0820 | 0.1475 |
| last_10 | 0.35 | 10 | 31.000 | 12.000 | 27.000 | 6.000 | 35.000 | 3.000 | 3.4839 | 1.0645 | 0.3871 | 0.8710 | 0.1935 | 1.1290 | 0.0968 |
| season | 0.20 | 14 | 42.200 | 17.000 | 39.000 | 11.000 | 44.000 | 3.000 | 3.5859 | 1.1719 | 0.3984 | 0.9141 | 0.2578 | 1.0312 | 0.0703 |
| Metric | Value |
|---|---|
| predicted_BB | 0.8970 |
| predicted_ER | 1.8120 |
| predicted_ERA | 4.2277 |
| predicted_H | 3.6330 |
| predicted_HR | 0.4730 |
| predicted_IP | 4.0000 |
| predicted_SO | 4.0460 |
| predicted_WHIP | 1.1742 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 0.8970 | 1.8669 | model_form_blend |
| predicted_ER | 1.0000 | 1.8120 | 1.4375 | model_form_blend |
| predicted_ERA | - | 4.2277 | 4.2277 | form_only |
| predicted_H | 4.0000 | 3.6330 | 3.8023 | model_form_blend |
| predicted_HR | 0.0000 | 0.4730 | 0.2549 | model_form_blend |
| predicted_IP | 5.0000 | 4.0000 | 4.1000 | model_form_blend |
| predicted_SO | 5.0000 | 4.0460 | 4.4860 | model_form_blend |
| predicted_WHIP | - | 1.1742 | 1.1742 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.0 |
| H | 4 |
| R | 1 |
| ER | 1 |
| BB | 3 |
| SO | 5 |
| HR | 0 |
| BF | 22 |
| Pitches | 87 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 23 |
| Pitching_ER | 4 |
| Pitching_ERA | 3.59 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 3 |
| Pitching_H | 8 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 78 |
| Pitching_R | 4 |
| Pitching_SO | 7 |
| Pitching_Strikes | 51 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260613_PHI@MIL |
| game_type | full |
| mlbID | 675660 |
| playerID | 675660 |
| playerName | Shane Drohan |
| pos | P |
| started | True |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-13 |
| sl_k_percent | 24.9 |
| sl_bb_percent | 6.2 |
| sl_woba | 0.285 |
| sl_xwoba | 0.273 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 37.7 |
| sl_whiff_percent | 29.0 |
| sl_swing_percent | 50.3 |
| sl_avg_best_speed | 77.190034918 |
| sl_avg_hyper_speed | 93.791136529 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.667 | 0.000 | -0.667 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.424 | 0.000 | -0.424 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.152 | 0.000 | -1.152 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 1.236 | 1.000 | -0.136 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.848 | 0.000 | -1.848 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "676879",
"player_name": "Aaron Ashby",
"position": "Middle Reliever",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.3333,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.200 | 4.000 | 6.000 | 3.000 | 8.000 | 2.000 | 5.4000 | 1.3500 | 0.6000 | 0.9000 | 0.4500 | 1.2000 | 0.3000 |
| last_10 | 0.35 | 10 | 14.000 | 6.000 | 12.000 | 5.000 | 15.000 | 2.000 | 3.8571 | 1.2143 | 0.4286 | 0.8571 | 0.3571 | 1.0714 | 0.1429 |
| season | 0.20 | 33 | 45.000 | 14.000 | 38.000 | 22.000 | 61.000 | 3.000 | 2.8000 | 1.3333 | 0.3111 | 0.8444 | 0.4889 | 1.3556 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5370 |
| predicted_ER | 0.6520 |
| predicted_ERA | 4.4004 |
| predicted_H | 1.2130 |
| predicted_HR | 0.2390 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.4630 |
| predicted_WHIP | 1.3128 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5370 | 0.2676 | model_form_blend |
| predicted_ER | 0.0000 | 0.6520 | 0.3250 | model_form_blend |
| predicted_ERA | - | 4.4004 | 4.4004 | form_only |
| predicted_H | 0.0000 | 1.2130 | 0.6046 | model_form_blend |
| predicted_HR | 0.0000 | 0.2390 | 0.1191 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 0.0000 | 1.4630 | 0.7292 | model_form_blend |
| predicted_WHIP | - | 1.3128 | 1.3128 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 33 |
| Season rows before report date | 33 |
| Report year | 2026 |
| Profile rows used | 33 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.80 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 9 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 676879 |
| playerID | 676879 |
| playerName | Aaron Ashby |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 31.6 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.293 |
| sl_xwoba | 0.269 |
| sl_sweet_spot_percent | 26.9 |
| sl_barrel_batted_rate | 4.6 |
| sl_hard_hit_percent | 40.7 |
| sl_whiff_percent | 33.2 |
| sl_swing_percent | 40.8 |
| sl_avg_best_speed | 74.871604815 |
| sl_avg_hyper_speed | 94.413072804 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.407 | 1.000 | -0.407 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.370 | 0.000 | -0.370 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.741 | 0.000 | -0.741 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.881 | 1.000 | 0.119 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.000 | 2.000 | 1.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "682842",
"player_name": "Abner Uribe",
"position": "Middle Reliever",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 1.000 | 4.000 | 2.000 | 5.000 | 0.000 | 1.6875 | 1.1250 | 0.1875 | 0.7500 | 0.3750 | 0.9375 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 4.000 | 9.000 | 6.000 | 11.000 | 1.000 | 3.4839 | 1.4516 | 0.3871 | 0.8710 | 0.5806 | 1.0645 | 0.0968 |
| season | 0.20 | 27 | 25.200 | 10.000 | 20.000 | 11.000 | 27.000 | 2.000 | 3.5065 | 1.2078 | 0.3896 | 0.7792 | 0.4286 | 1.0519 | 0.0779 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4110 |
| predicted_ER | 0.3980 |
| predicted_ERA | 3.5854 |
| predicted_H | 0.8850 |
| predicted_HR | 0.0970 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9720 |
| predicted_WHIP | 1.2961 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4110 | 0.1812 | model_form_blend |
| predicted_ER | 0.0000 | 0.3980 | 0.1754 | model_form_blend |
| predicted_ERA | - | 3.5854 | 3.5854 | form_only |
| predicted_H | 0.0000 | 0.8850 | 0.3901 | model_form_blend |
| predicted_HR | 0.0000 | 0.0970 | 0.0428 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.9720 | 1.5469 | model_form_blend |
| predicted_WHIP | - | 1.2961 | 1.2961 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 27 |
| Season rows before report date | 27 |
| Report year | 2026 |
| Profile rows used | 27 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 3 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.51 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 18 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 2 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260616_CLE@MIL |
| game_type | full |
| mlbID | 682842 |
| playerID | 682842 |
| playerName | Abner Uribe |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-16 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.259 |
| sl_xwoba | 0.266 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 2.9 |
| sl_hard_hit_percent | 31.4 |
| sl_whiff_percent | 25.1 |
| sl_swing_percent | 42.8 |
| sl_avg_best_speed | 78.014525429 |
| sl_avg_hyper_speed | 92.792921884 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.296 | 0.000 | -0.296 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.444 | 0.000 | -0.444 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.778 | 0.000 | -0.778 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.963 | 1.000 | 0.037 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.333 | 2.000 | 0.667 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656730",
"player_name": "Trevor Megill",
"position": "Middle Reliever",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 2.000 | 5.000 | 2.000 | 9.000 | 0.000 | 3.6000 | 1.4000 | 0.4000 | 1.0000 | 0.4000 | 1.8000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 2.000 | 7.000 | 2.000 | 16.000 | 0.000 | 1.8000 | 0.9000 | 0.2000 | 0.7000 | 0.2000 | 1.6000 | 0.0000 |
| season | 0.20 | 26 | 26.000 | 8.000 | 19.000 | 8.000 | 36.000 | 0.000 | 2.7692 | 1.0385 | 0.3077 | 0.7308 | 0.3077 | 1.3846 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3370 |
| predicted_ER | 0.4050 |
| predicted_ERA | 3.6424 |
| predicted_H | 0.9070 |
| predicted_HR | 0.0720 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2980 |
| predicted_WHIP | 1.2435 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3370 | 0.1490 | model_form_blend |
| predicted_ER | 0.0000 | 0.4050 | 0.1791 | model_form_blend |
| predicted_ERA | - | 3.6424 | 3.6424 | form_only |
| predicted_H | 0.0000 | 0.9070 | 0.4010 | model_form_blend |
| predicted_HR | 0.0000 | 0.0720 | 0.0318 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.2980 | 1.6896 | model_form_blend |
| predicted_WHIP | - | 1.2435 | 1.2435 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 27 |
| Season rows before report date | 27 |
| Report year | 2026 |
| Profile rows used | 26 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 3 |
| Pitches | 14 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.15 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260616_CLE@MIL |
| game_type | full |
| mlbID | 656730 |
| playerID | 656730 |
| playerName | Trevor Megill |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-16 |
| sl_k_percent | 33.0 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.251 |
| sl_xwoba | 0.246 |
| sl_sweet_spot_percent | 29.7 |
| sl_barrel_batted_rate | 4.7 |
| sl_hard_hit_percent | 42.2 |
| sl_whiff_percent | 35.9 |
| sl_swing_percent | 51.0 |
| sl_avg_best_speed | 81.742076667 |
| sl_avg_hyper_speed | 94.448879667 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.357 | 0.000 | -0.357 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.321 | 0.000 | -0.321 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.679 | 0.000 | -0.679 | 0.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.900 | 1.000 | -0.700 | -0.800 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.821 | 0.000 | 1.179 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "681982",
"player_name": "Grant Anderson",
"position": "Middle Reliever",
"team": "MIL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 7.000 | 2.000 | 3.000 | 2.000 | 5.000 | 0.000 | 2.5714 | 0.7143 | 0.2857 | 0.4286 | 0.2857 | 0.7143 | 0.0000 |
| last_10 | 0.35 | 10 | 13.100 | 3.000 | 7.000 | 4.000 | 8.000 | 1.000 | 2.0250 | 0.8250 | 0.2250 | 0.5250 | 0.3000 | 0.6000 | 0.0750 |
| season | 0.20 | 28 | 30.100 | 9.000 | 19.000 | 10.000 | 23.000 | 3.000 | 2.6703 | 0.9560 | 0.2967 | 0.6264 | 0.3297 | 0.7582 | 0.0989 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3270 |
| predicted_ER | 0.3710 |
| predicted_ERA | 3.3563 |
| predicted_H | 0.7120 |
| predicted_HR | 0.0910 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7940 |
| predicted_WHIP | 1.0444 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3270 | 0.1499 | model_form_blend |
| predicted_ER | 0.0000 | 0.3710 | 0.1700 | model_form_blend |
| predicted_ERA | - | 3.3563 | 3.3563 | form_only |
| predicted_H | 0.0000 | 0.7120 | 0.3263 | model_form_blend |
| predicted_HR | 0.0000 | 0.0910 | 0.0417 | model_form_blend |
| predicted_IP | 0.2000 | 1.0000 | 0.2000 | model_form_blend |
| predicted_SO | 2.0000 | 0.7940 | 1.4472 | model_form_blend |
| predicted_WHIP | - | 1.0444 | 1.0444 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 28 |
| Season rows before report date | 28 |
| Report year | 2026 |
| Profile rows used | 28 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 2 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.67 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260617_CLE@MIL |
| game_type | full |
| mlbID | 681982 |
| playerID | 681982 |
| playerName | Grant Anderson |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIL |
| teamID | 16 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.5 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.268 |
| sl_xwoba | 0.26 |
| sl_sweet_spot_percent | 31.6 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 35.4 |
| sl_whiff_percent | 21.0 |
| sl_swing_percent | 50.0 |
| sl_avg_best_speed | 76.5031505 |
| sl_avg_hyper_speed | 93.296914304 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | LAA 3 - 4 OAK | OAK | 0.588 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | LAA 4 - 7 OAK | OAK | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.6000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5875 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 4.679 | 6.693 | - | Base ML historical model prediction |
| 2 | variance_applied | 4 | 7 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 4 | 0.5875 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 3 | 4 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 3 | 4 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 7 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4668039702233251,
"base_low_score_probability": 0.4160463192721257,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.050757650951199385,
"confidence": 0.661,
"factors": {
"environmental": 1.02,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.122
},
"prediction": "normal_scoring",
"expected_total_runs": 7,
"pre_simulation_expected_total_runs": 9.6,
"low_score_model_expected_total_runs": 9.6,
"final_simulation_total_runs": 11,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 41,
"near_bucket_sample_size": 41,
"medium_bucket_sample_size": 153,
"wide_bucket_sample_size": 242,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.6098,
"bayesian_hit_rate": 0.5763,
"sample_weight": 0.5907,
"prior_strength": 18.0,
"reliability": 0.6949,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6275,
"calibrated_pick_probability": 0.5875,
"predicted_side": "home"
}{
"applied": false,
"home": {
"team": "OAK",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4931506849315068,
"runs_scored": 336,
"runs_allowed": 379,
"run_differential": -43,
"run_differential_per_game": -0.589041095890411,
"available": true
},
"away": {
"team": "LAA",
"games": 75,
"wins": 30,
"losses": 45,
"win_pct": 0.4,
"runs_scored": 334,
"runs_allowed": 373,
"run_differential": -39,
"run_differential_per_game": -0.52,
"available": true
},
"run_differential_edge_per_game": -0.069,
"win_pct_edge": 0.0932,
"quality_edge": 0.0707,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "OAK",
"guardrail_predicted_team": "OAK",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "OAK",
"output_opponent_team": "LAA",
"final_score_winner": "OAK",
"pre_simulation_winner": "OAK",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 4,
"score_text": "LAA 3 - 4 OAK",
"winner": "OAK"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 7,
"score_text": "LAA 4 - 7 OAK",
"winner": "OAK"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 3,
"total_run_delta": 4,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "OAK",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4931506849315068,
"runs_scored": 336,
"runs_allowed": 379,
"run_differential": -43,
"run_differential_per_game": -0.589041095890411,
"available": true
},
"away": {
"team": "LAA",
"games": 75,
"wins": 30,
"losses": 45,
"win_pct": 0.4,
"runs_scored": 334,
"runs_allowed": 373,
"run_differential": -39,
"run_differential_per_game": -0.52,
"available": true
}
}
}{
"applied": true,
"raw_margin": 2.8933,
"final_margin": 1.5,
"margin_cap": 1.5,
"season_quality_edge": 0.0707,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 2.941,
"home_runs": 4.441
}
}{
"applied": false,
"raw_confidence": 0.587516,
"final_confidence": 0.587516,
"confidence_cap": 0.63,
"score_gap": 1.5,
"calibration_sample_size": 41,
"calibration_empirical_hit_rate": 0.6098,
"calibration_bayesian_hit_rate": 0.5763,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.0707,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"local calibration sample has at least 30 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 4,
"score_text": "LAA 3 - 4 OAK",
"winner": "OAK"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 7,
"score_text": "LAA 4 - 7 OAK",
"winner": "OAK"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 3,
"total_run_delta": 4,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 3,
"home_runs": 4,
"confidence": 0.587516,
"home_win_probability": 0.587516,
"away_win_probability": 0.41248399999999996,
"predicted_score_text": "LAA 3 - 4 OAK",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "LAA",
"original_runs": 3,
"run_delta": -0.0652,
"adjusted_runs": 3,
"lineup": {
"players_used": 8,
"total_weight": 28.0,
"quality": 0.06677945226852519,
"contact": -0.018962133356363337,
"power": 0.0828207902579758,
"discipline": -0.2522507775451836,
"xwoba": 0.3133214285714286,
"recent_xwoba": 0.3133214285714286,
"barrel": 8.160714285714286,
"ab_hard_contact": -0.2934889567452562,
"ab_bat_speed": 70.87356282850236,
"ab_strikeout_rate": 0.26191373972818066,
"available_players": 6,
"top_players": [
{
"player_id": "666176",
"player_name": "Jo Adell",
"position": "RF",
"weight": 4.0,
"quality": 0.4120482511863485,
"contact": 0.543619327167278,
"power": 0.5885470183948603,
"discipline": -0.8473995354239257,
"xwoba": 0.333,
"recent_xwoba": 0.333,
"barrel": 8.6,
"ab_hard_contact": 0.7256070345638618,
"ab_bat_speed": 75.8700483276644,
"ab_strikeout_rate": 0.2571428571428572,
"available": 1.0
},
{
"player_id": "687093",
"player_name": "Vaughn Grissom",
"position": "1B",
"weight": 4.0,
"quality": 0.3453188756386452,
"contact": 0.7922363852029917,
"power": 0.4170398171118828,
"discipline": 0.5375468931475031,
"xwoba": 0.344,
"recent_xwoba": 0.344,
"barrel": 7.3,
"ab_hard_contact": 1.071082056523362,
"ab_bat_speed": 69.57450148809524,
"ab_strikeout_rate": 0.153125,
"available": 1.0
},
{
"player_id": "663611",
"player_name": "Nick Madrigal",
"position": "2B",
"weight": 3.0,
"quality": -0.0,
"contact": -0.37477142857142814,
"power": -1.3751809523809515,
"discipline": 1.5878571428571429,
"xwoba": 0.292,
"recent_xwoba": 0.292,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26065568475452,
"ab_strikeout_rate": 0.22179487179487178,
"available": 0.0
},
{
"player_id": "642350",
"player_name": "Jose Siri",
"position": "CF",
"weight": 3.0,
"quality": 0.027814639492398093,
"contact": 0.5099399819291826,
"power": 1.1947239040909532,
"discipline": -0.7593571428571428,
"xwoba": 0.366,
"recent_xwoba": 0.366,
"barrel": 17.1,
"ab_hard_contact": 0.7843828437238143,
"ab_bat_speed": 71.58240740740742,
"ab_strikeout_rate": 0.4444444444444444,
"available": 1.0
},
{
"player_id": "694203",
"player_name": "Denzer Guzman",
"position": "3B",
"weight": 4.0,
"quality": -0.0,
"contact": -0.48619999999999947,
"power": -0.803466666666666,
"discipline": -0.8103571428571428,
"xwoba": 0.254,
"recent_xwoba": 0.254,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26065568475452,
"ab_strikeout_rate": 0.22179487179487178,
"available": 0.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "695611",
"player_name": "Gage Jump",
"quality": 0.038803122303877204,
"contact": 0.7633953284087303,
"command": -0.04128571428571445,
"movement": 0.47150724740258115,
"xwoba": 0.285,
"whiff": 24.2,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "OAK",
"original_runs": 4,
"run_delta": 0.4751,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": 0.2870728697521068,
"contact": 0.2969767627590197,
"power": 0.2942889225222656,
"discipline": 0.15237739372733516,
"xwoba": 0.3278787878787878,
"recent_xwoba": 0.3278787878787878,
"barrel": 8.81818181818182,
"ab_hard_contact": 0.23280875347560961,
"ab_bat_speed": 71.17085795920467,
"ab_strikeout_rate": 0.1998269669526354,
"available_players": 9,
"top_players": [
{
"player_id": "701762",
"player_name": "Nick Kurtz",
"position": "1B",
"weight": 4.0,
"quality": 1.336492473031443,
"contact": 1.2814758774318278,
"power": 1.9100705308056307,
"discipline": 0.6426957026713125,
"xwoba": 0.395,
"recent_xwoba": 0.395,
"barrel": 17.9,
"ab_hard_contact": 1.2726487113506997,
"ab_bat_speed": 76.35883401920438,
"ab_strikeout_rate": 0.3083333333333333,
"available": 1.0
},
{
"player_id": "669127",
"player_name": "Shea Langeliers",
"position": "C",
"weight": 5.0,
"quality": 1.0505788267785434,
"contact": 1.0935692590720392,
"power": 1.4652469060545346,
"discipline": -0.06432810685249703,
"xwoba": 0.375,
"recent_xwoba": 0.375,
"barrel": 14.4,
"ab_hard_contact": 1.2639857401383139,
"ab_bat_speed": 74.42080277777778,
"ab_strikeout_rate": 0.21600000000000003,
"available": 1.0
},
{
"player_id": "805779",
"player_name": "Jacob Wilson",
"position": "SS",
"weight": 4.0,
"quality": -0.5419549006710218,
"contact": -0.5356997940170938,
"power": -1.1541071865207604,
"discipline": 0.06462732660293669,
"xwoba": 0.271,
"recent_xwoba": 0.271,
"barrel": 1.8999999999999997,
"ab_hard_contact": -0.6078580161294928,
"ab_bat_speed": 62.39934035409035,
"ab_strikeout_rate": 0.1094017094017094,
"available": 1.0
},
{
"player_id": "666126",
"player_name": "Carlos Cortes",
"position": "RF",
"weight": 3.0,
"quality": 0.4852983017185786,
"contact": 1.0465012643967146,
"power": 0.48068565677133784,
"discipline": 0.7954792524548623,
"xwoba": 0.365,
"recent_xwoba": 0.365,
"barrel": 8.7,
"ab_hard_contact": 0.5493321830457941,
"ab_bat_speed": 69.50095057720058,
"ab_strikeout_rate": 0.09962121212121212,
"available": 1.0
},
{
"player_id": "643446",
"player_name": "Jeff McNeil",
"position": "2B",
"weight": 3.0,
"quality": -0.25968066384270844,
"contact": -0.04702785747324531,
"power": -0.9610550401549489,
"discipline": 0.5370397736330306,
"xwoba": 0.308,
"recent_xwoba": 0.308,
"barrel": 1.1,
"ab_hard_contact": -0.705291279289456,
"ab_bat_speed": 66.7119767351385,
"ab_strikeout_rate": 0.14934640522875817,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "696270",
"player_name": "Ryan Johnson",
"quality": -0.1735959684134636,
"contact": -1.7951794830362962,
"command": -0.8759682539682541,
"movement": -1.1217642365755185,
"xwoba": 0.386,
"whiff": 23.1,
"faced_est_woba": 0.21198146666666665,
"faced_launch_speed": 77.0474279835391,
"faced_strikeout_rate": 0.4666666666666666,
"faced_run_exp": 0.0011076631393297915
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 3,
"home_runs": 4,
"predicted_score_text": "LAA 3 - 4 OAK",
"confidence": 0.587516,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 4,
"score_text": "LAA 3 - 4 OAK",
"winner": "OAK"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 7,
"score_text": "LAA 4 - 7 OAK",
"winner": "OAK"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 3,
"total_run_delta": 4,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away LAA | True | 1.0100 | 1.0113 | 0.8889 | 8 | 1 |
| Home OAK | True | 1.0248 | 1.0248 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SS | Zach Neto | 53 | 1.0187 | 0.2490 | neutral | 0.3210 | 0.2060 | 0.4180 | 12.80 | 37.20 | 89.80 | 22.10 | 31.50 | 31.80 | 11.20 | -0.6000 |
| RF | Jo Adell | 284 | 1.0550 | 0.7331 | neutral | 0.3330 | 0.2700 | 0.4520 | 8.60 | 45.50 | 90.40 | 17.80 | 26.10 | 22.90 | 2.90 | 0.8000 |
| 1B | Vaughn Grissom | 380 | 1.0327 | 0.4360 | neutral | 0.3440 | 0.2610 | 0.4350 | 7.30 | 45.20 | 90.20 | 13.40 | 19.40 | 10.70 | 8.80 | 0.8000 |
| 2B | Nick Madrigal | 218 | 0.9759 | -0.3212 | negative_batter_regression | 0.2920 | 0.2310 | 0.2810 | 0 | 26.30 | 88.70 | 9.80 | 9.50 | 6.30 | 12.50 | -1.2000 |
| DH | Oswald Peraza | 76 | 1.0042 | 0.0556 | neutral | 0.3080 | 0.2540 | 0.3980 | 8.60 | 37.30 | 87.40 | 10.10 | 30.50 | 26.30 | 3.90 | -0.3429 |
| C | Logan O'Hoppe | 245 | 0.9930 | -0.0931 | neutral | 0.2890 | 0.2070 | 0.3630 | 12.20 | 39.10 | 87.50 | 17.10 | 28.40 | 23.40 | 7.60 | -0.1429 |
| 3B | Denzer Guzman | 440 | 0.9756 | -0.3259 | neutral | 0.2540 | 0.2450 | 0.3410 | 0 | 42.90 | 89.20 | 8.60 | 25.40 | 17.60 | 0 | -0.1143 |
| CF | Jose Siri | 147 | 1.0352 | 0.4697 | negative_batter_regression | 0.3660 | 0.2670 | 0.4990 | 17.10 | 42.90 | 87.40 | 20.40 | 36.10 | 27.60 | 8.60 | -0.8857 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| C | Shea Langeliers | 18 | 1.1069 | 1.4254 | neutral | 0.3750 | 0.2810 | 0.5320 | 14.40 | 43.70 | 91.60 | 21.20 | 25.40 | 18.80 | 7.80 | 0.0857 |
| 3B | Zack Gelof | 42 | 0.9819 | -0.2416 | negative_batter_regression | 0.2880 | 0.2220 | 0.3850 | 7.60 | 42.10 | 89.20 | 17.20 | 28.20 | 25 | 5.70 | -2 |
| 1B | Nick Kurtz | 5 | 1.1203 | 1.6036 | neutral | 0.3950 | 0.2580 | 0.5130 | 17.90 | 57.70 | 94.20 | 12.40 | 34.40 | 28.70 | 20.40 | -0.8571 |
| LF | Tyler Soderstrom | 60 | 1.0334 | 0.4452 | neutral | 0.3290 | 0.2410 | 0.4180 | 10.70 | 44.20 | 89.80 | 12.50 | 21.60 | 18.30 | 12.70 | -0.4000 |
| SS | Jacob Wilson | 264 | 0.9565 | -0.5806 | negative_batter_regression | 0.2710 | 0.2600 | 0.3290 | 1.90 | 27.50 | 84.10 | 8.30 | 15.20 | 11.60 | 3.70 | -0.9714 |
| DH | Jonah Heim | 216 | 0.9939 | -0.0807 | negative_batter_regression | 0.3070 | 0.2460 | 0.3910 | 6.40 | 29.50 | 87.20 | 15.20 | 20.70 | 17.10 | 8.60 | -1.1714 |
| RF | Carlos Cortes | 231 | 1.0480 | 0.6404 | neutral | 0.3650 | 0.2900 | 0.4530 | 8.70 | 40.40 | 89.90 | 8.50 | 19.70 | 11.10 | 10.60 | -0.0571 |
| CF | Henry Bolte | 145 | 0.9847 | -0.2045 | negative_batter_regression | 0.2910 | 0.2240 | 0.3400 | 6 | 50.70 | 91.70 | 0.20 | 34.80 | 29.20 | 6.20 | -1.9143 |
| 2B | Jeff McNeil | 392 | 0.9976 | -0.0317 | neutral | 0.3080 | 0.2700 | 0.3470 | 1.10 | 30.60 | 86.30 | 13 | 17.20 | 13.80 | 8.80 | 0.6571 |
{
"home": {
"applied": true,
"offense_factor": 1.0248,
"raw_average_factor": 1.0248,
"team_espn_average_rank": 152.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "C",
"player_id": "669127",
"player_name": "Shea Langeliers",
"offense_factor": 1.1069,
"quality_score": 1.4254,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669127",
"espn_id": 42598,
"player_name": "Shea Langeliers",
"team": "ATH",
"role": "batter",
"espn_rank": 18,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 18,
"gp_value": 67.0,
"gp_rank": 117,
"ab_value": 279.0,
"ab_rank": 26,
"r_value": 47.0,
"r_rank": 16,
"h_value": 77.0,
"h_rank": 20,
"avg_value": 0.2759856,
"avg_rank": 45.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 18.0,
"hr_rank": 10,
"rbi_value": 36.0,
"rbi_rank": 63,
"tb_value": 146.0,
"tb_rank": 465,
"bb_value": 24.0,
"bb_rank": 100,
"so_value": 58.0,
"so_rank": 91,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.340909,
"obp_rank": "66",
"slg_value": 0.5232974,
"slg_rank": "17",
"ops_value": 0.8642064,
"ops_rank": 49.0,
"war_value": 2.85,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 226.0,
"k_percent": 18.8,
"bb_percent": 7.8,
"woba": 0.372,
"xwoba": 0.375,
"xba": 0.281,
"xslg": 0.532,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 14.4,
"hard_hit_percent": 43.7,
"exit_velocity_avg": 91.6,
"launch_angle_avg": 21.2,
"whiff_percent": 25.4,
"swing_percent": 51.2
},
"components": {
"expected_quality": 1.6434,
"regression_edge": 0.0857,
"xwoba_edge": 2.0286,
"xba_edge": 1.2143,
"xslg_edge": 2.2857,
"barrel_edge": 1.6889,
"hard_hit_edge": 0.7429,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": 0.8333,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "3B",
"player_id": "680869",
"player_name": "Zack Gelof",
"offense_factor": 0.9819,
"quality_score": -0.2416,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "680869",
"espn_id": 4414531,
"player_name": "Zack Gelof",
"team": "ATH",
"role": "batter",
"espn_rank": 42,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 42,
"gp_value": 58.0,
"gp_rank": 185,
"ab_value": 196.0,
"ab_rank": 165,
"r_value": 35.0,
"r_rank": 73,
"h_value": 56.0,
"h_rank": 117,
"avg_value": 0.2857142,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 29.0,
"rbi_rank": 122,
"tb_value": 100.0,
"tb_rank": 580,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 53.0,
"so_rank": 120,
"sb_value": 8.0,
"sb_rank": 55,
"obp_value": 0.3333333,
"obp_rank": "-",
"slg_value": 0.510204,
"slg_rank": "-",
"ops_value": 0.8435373,
"ops_rank": null,
"war_value": 2.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 128.0,
"k_percent": 25.0,
"bb_percent": 5.7,
"woba": 0.365,
"xwoba": 0.288,
"xba": 0.222,
"xslg": 0.385,
"sweet_spot_percent": 28.3,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 42.1,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 17.2,
"whiff_percent": 28.2,
"swing_percent": 46.4
},
"components": {
"expected_quality": -0.1573,
"regression_edge": -2.0,
"xwoba_edge": -0.4571,
"xba_edge": -0.4714,
"xslg_edge": 0.1857,
"barrel_edge": 0.1778,
"hard_hit_edge": 0.5143,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": -0.8333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "701762",
"player_name": "Nick Kurtz",
"offense_factor": 1.1203,
"quality_score": 1.6036,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701762",
"espn_id": 4966637,
"player_name": "Nick Kurtz",
"team": "ATH",
"role": "batter",
"espn_rank": 5,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 5,
"gp_value": 73.0,
"gp_rank": 26,
"ab_value": 264.0,
"ab_rank": 57,
"r_value": 53.0,
"r_rank": 4,
"h_value": 77.0,
"h_rank": 20,
"avg_value": 0.2916666,
"avg_rank": 17.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 18.0,
"hr_rank": 10,
"rbi_value": 57.0,
"rbi_rank": 1,
"tb_value": 146.0,
"tb_rank": 255,
"bb_value": 68.0,
"bb_rank": 1,
"so_value": 96.0,
"so_rank": 6,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.4401197,
"obp_rank": "1",
"slg_value": 0.5530303,
"slg_rank": "7",
"ops_value": 0.99315,
"ops_rank": 8.0,
"war_value": 3.77,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 241.0,
"k_percent": 28.7,
"bb_percent": 20.4,
"woba": 0.425,
"xwoba": 0.395,
"xba": 0.258,
"xslg": 0.513,
"sweet_spot_percent": 38.1,
"barrel_batted_rate": 17.9,
"hard_hit_percent": 57.7,
"exit_velocity_avg": 94.2,
"launch_angle_avg": 12.4,
"whiff_percent": 34.4,
"swing_percent": 41.4
},
"components": {
"expected_quality": 2.0042,
"regression_edge": -0.8571,
"xwoba_edge": 2.5,
"xba_edge": 0.5571,
"xslg_edge": 2.0143,
"barrel_edge": 2.4667,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.16,
"sweet_spot_edge": 0.8,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "691016",
"player_name": "Tyler Soderstrom",
"offense_factor": 1.0334,
"quality_score": 0.4452,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691016",
"espn_id": 4686066,
"player_name": "Tyler Soderstrom",
"team": "ATH",
"role": "batter",
"espn_rank": 60,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 60,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 260.0,
"ab_rank": 70,
"r_value": 35.0,
"r_rank": 73,
"h_value": 62.0,
"h_rank": 89,
"avg_value": 0.2384615,
"avg_rank": 112.0,
"2b_value": 19.0,
"2b_rank": 4,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 12.0,
"hr_rank": 46,
"rbi_value": 39.0,
"rbi_rank": 46,
"tb_value": 121.0,
"tb_rank": 265,
"bb_value": 38.0,
"bb_rank": 28,
"so_value": 55.0,
"so_rank": 106,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3366666,
"obp_rank": "77",
"slg_value": 0.4653846,
"slg_rank": "48",
"ops_value": 0.8020512,
"ops_rank": 29.0,
"war_value": 1.85,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 216.0,
"k_percent": 18.3,
"bb_percent": 12.7,
"woba": 0.343,
"xwoba": 0.329,
"xba": 0.241,
"xslg": 0.418,
"sweet_spot_percent": 28.6,
"barrel_batted_rate": 10.7,
"hard_hit_percent": 44.2,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 12.5,
"whiff_percent": 21.6,
"swing_percent": 46.5
},
"components": {
"expected_quality": 0.5924,
"regression_edge": -0.4,
"xwoba_edge": 0.7143,
"xba_edge": 0.0714,
"xslg_edge": 0.6571,
"barrel_edge": 0.8667,
"hard_hit_edge": 0.8143,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": -0.7833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "805779",
"player_name": "Jacob Wilson",
"offense_factor": 0.9565,
"quality_score": -0.5806,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "805779",
"espn_id": 4719300,
"player_name": "Jacob Wilson",
"team": "ATH",
"role": "batter",
"espn_rank": 264,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 264,
"gp_value": 44.0,
"gp_rank": 272,
"ab_value": 180.0,
"ab_rank": 188,
"r_value": 20.0,
"r_rank": 213,
"h_value": 51.0,
"h_rank": 142,
"avg_value": 0.2833333,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 23.0,
"rbi_rank": 182,
"tb_value": 69.0,
"tb_rank": 1413,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 22.0,
"so_rank": 331,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3085106,
"obp_rank": "-",
"slg_value": 0.3833333,
"slg_rank": "-",
"ops_value": 0.6918439,
"ops_rank": null,
"war_value": 0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 165.0,
"k_percent": 11.6,
"bb_percent": 3.7,
"woba": 0.305,
"xwoba": 0.271,
"xba": 0.26,
"xslg": 0.329,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 1.9,
"hard_hit_percent": 27.5,
"exit_velocity_avg": 84.1,
"launch_angle_avg": 8.3,
"whiff_percent": 15.2,
"swing_percent": 57.3
},
"components": {
"expected_quality": -0.742,
"regression_edge": -0.9714,
"xwoba_edge": -0.9429,
"xba_edge": 0.6143,
"xslg_edge": -0.6143,
"barrel_edge": -1.0889,
"hard_hit_edge": -1.5714,
"exit_velocity_edge": -1.88,
"sweet_spot_edge": -0.3333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "641680",
"player_name": "Jonah Heim",
"offense_factor": 0.9939,
"quality_score": -0.0807,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "641680",
"espn_id": 33842,
"player_name": "Jonah Heim",
"team": "ATH",
"role": "batter",
"espn_rank": 216,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 216,
"gp_value": 31.0,
"gp_rank": 353,
"ab_value": 95.0,
"ab_rank": 334,
"r_value": 13.0,
"r_rank": 302,
"h_value": 24.0,
"h_rank": 306,
"avg_value": 0.2526315,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 14.0,
"rbi_rank": 266,
"tb_value": 47.0,
"tb_rank": 1434,
"bb_value": 9.0,
"bb_rank": 295,
"so_value": 18.0,
"so_rank": 370,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3142857,
"obp_rank": "-",
"slg_value": 0.4947368,
"slg_rank": "-",
"ops_value": 0.8090225,
"ops_rank": null,
"war_value": 0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 74.0,
"k_percent": 17.1,
"bb_percent": 8.6,
"woba": 0.348,
"xwoba": 0.307,
"xba": 0.246,
"xslg": 0.391,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 6.4,
"hard_hit_percent": 29.5,
"exit_velocity_avg": 87.2,
"launch_angle_avg": 15.2,
"whiff_percent": 20.7,
"swing_percent": 46.5
},
"components": {
"expected_quality": -0.0178,
"regression_edge": -1.1714,
"xwoba_edge": 0.0857,
"xba_edge": 0.2143,
"xslg_edge": 0.2714,
"barrel_edge": -0.0889,
"hard_hit_edge": -1.2857,
"exit_velocity_edge": -0.64,
"sweet_spot_edge": 0.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "666126",
"player_name": "Carlos Cortes",
"offense_factor": 1.048,
"quality_score": 0.6404,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666126",
"espn_id": 41595,
"player_name": "Carlos Cortes",
"team": "ATH",
"role": "batter",
"espn_rank": 231,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 231,
"gp_value": 59.0,
"gp_rank": 181,
"ab_value": 173.0,
"ab_rank": 202,
"r_value": 17.0,
"r_rank": 240,
"h_value": 50.0,
"h_rank": 147,
"avg_value": 0.2890173,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 21.0,
"rbi_rank": 194,
"tb_value": 79.0,
"tb_rank": 913,
"bb_value": 21.0,
"bb_rank": 138,
"so_value": 22.0,
"so_rank": 331,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3737373,
"obp_rank": "-",
"slg_value": 0.4566473,
"slg_rank": "-",
"ops_value": 0.8303846,
"ops_rank": null,
"war_value": 0.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 146.0,
"k_percent": 11.1,
"bb_percent": 10.6,
"woba": 0.367,
"xwoba": 0.365,
"xba": 0.29,
"xslg": 0.453,
"sweet_spot_percent": 35.5,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 40.4,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 8.5,
"whiff_percent": 19.7,
"swing_percent": 43.3
},
"components": {
"expected_quality": 1.1314,
"regression_edge": -0.0571,
"xwoba_edge": 1.7429,
"xba_edge": 1.4714,
"xslg_edge": 1.1571,
"barrel_edge": 0.4222,
"hard_hit_edge": 0.2714,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": 0.3667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "703607",
"player_name": "Henry Bolte",
"offense_factor": 0.9847,
"quality_score": -0.2045,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "703607",
"espn_id": 5080756,
"player_name": "Henry Bolte",
"team": "ATH",
"role": "batter",
"espn_rank": 145,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 145,
"gp_value": 32.0,
"gp_rank": 347,
"ab_value": 100.0,
"ab_rank": 318,
"r_value": 11.0,
"r_rank": 327,
"h_value": 31.0,
"h_rank": 262,
"avg_value": 0.31,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 8.0,
"rbi_rank": 346,
"tb_value": 42.0,
"tb_rank": 1812,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 33.0,
"so_rank": 250,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.3805309,
"obp_rank": "-",
"slg_value": 0.42,
"slg_rank": "-",
"ops_value": 0.8005309,
"ops_rank": null,
"war_value": 0.9,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 41.0,
"k_percent": 29.2,
"bb_percent": 6.2,
"woba": 0.358,
"xwoba": 0.291,
"xba": 0.224,
"xslg": 0.34,
"sweet_spot_percent": 20.6,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 50.7,
"exit_velocity_avg": 91.7,
"launch_angle_avg": 0.2,
"whiff_percent": 34.8,
"swing_percent": 53.2
},
"components": {
"expected_quality": -0.2169,
"regression_edge": -1.9143,
"xwoba_edge": -0.3714,
"xba_edge": -0.4143,
"xslg_edge": -0.4571,
"barrel_edge": -0.1778,
"hard_hit_edge": 1.7429,
"exit_velocity_edge": 1.16,
"sweet_spot_edge": -2.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "643446",
"player_name": "Jeff McNeil",
"offense_factor": 0.9976,
"quality_score": -0.0317,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643446",
"espn_id": 33900,
"player_name": "Jeff McNeil",
"team": "ATH",
"role": "batter",
"espn_rank": 392,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 392,
"gp_value": 67.0,
"gp_rank": 117,
"ab_value": 213.0,
"ab_rank": 138,
"r_value": 19.0,
"r_rank": 225,
"h_value": 50.0,
"h_rank": 147,
"avg_value": 0.2347417,
"avg_rank": 116.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 19.0,
"rbi_rank": 216,
"tb_value": 68.0,
"tb_rank": 1418,
"bb_value": 21.0,
"bb_rank": 138,
"so_value": 33.0,
"so_rank": 250,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3096234,
"obp_rank": "120",
"slg_value": 0.3192488,
"slg_rank": "151",
"ops_value": 0.6288722,
"ops_rank": 31.0,
"war_value": -0.09,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 185.0,
"k_percent": 13.8,
"bb_percent": 8.8,
"woba": 0.285,
"xwoba": 0.308,
"xba": 0.27,
"xslg": 0.347,
"sweet_spot_percent": 38.8,
"barrel_batted_rate": 1.1,
"hard_hit_percent": 30.6,
"exit_velocity_avg": 86.3,
"launch_angle_avg": 13.0,
"whiff_percent": 17.2,
"swing_percent": 54.3
},
"components": {
"expected_quality": -0.1507,
"regression_edge": 0.6571,
"xwoba_edge": 0.1143,
"xba_edge": 0.9,
"xslg_edge": -0.3571,
"barrel_edge": -1.2667,
"hard_hit_edge": -1.1286,
"exit_velocity_edge": -1.0,
"sweet_spot_edge": 0.9167,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.01,
"raw_average_factor": 1.0113,
"team_espn_average_rank": 230.38,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "SS",
"player_id": "687263",
"player_name": "Zach Neto",
"offense_factor": 1.0187,
"quality_score": 0.249,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687263",
"espn_id": 4666100,
"player_name": "Zach Neto",
"team": "LAA",
"role": "batter",
"espn_rank": 53,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 53,
"gp_value": 72.0,
"gp_rank": 37,
"ab_value": 285.0,
"ab_rank": 15,
"r_value": 51.0,
"r_rank": 7,
"h_value": 65.0,
"h_rank": 75,
"avg_value": 0.2280701,
"avg_rank": 131.0,
"2b_value": 14.0,
"2b_rank": 45,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 15.0,
"hr_rank": 23,
"rbi_value": 34.0,
"rbi_rank": 81,
"tb_value": 128.0,
"tb_rank": 223,
"bb_value": 37.0,
"bb_rank": 32,
"so_value": 105.0,
"so_rank": 2,
"sb_value": 11.0,
"sb_rank": 28,
"obp_value": 0.330303,
"obp_rank": "86",
"slg_value": 0.4491228,
"slg_rank": "56",
"ops_value": 0.7794258,
"ops_rank": 30.0,
"war_value": 1.97,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 253.0,
"k_percent": 31.8,
"bb_percent": 11.2,
"woba": 0.342,
"xwoba": 0.321,
"xba": 0.206,
"xslg": 0.418,
"sweet_spot_percent": 36.5,
"barrel_batted_rate": 12.8,
"hard_hit_percent": 37.2,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 22.1,
"whiff_percent": 31.5,
"swing_percent": 50.1
},
"components": {
"expected_quality": 0.3872,
"regression_edge": -0.6,
"xwoba_edge": 0.4857,
"xba_edge": -0.9286,
"xslg_edge": 0.6571,
"barrel_edge": 1.3333,
"hard_hit_edge": -0.1857,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.5333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "666176",
"player_name": "Jo Adell",
"offense_factor": 1.055,
"quality_score": 0.7331,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666176",
"espn_id": 40854,
"player_name": "Jo Adell",
"team": "LAA",
"role": "batter",
"espn_rank": 284,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 284,
"gp_value": 75.0,
"gp_rank": 1,
"ab_value": 293.0,
"ab_rank": 6,
"r_value": 35.0,
"r_rank": 73,
"h_value": 74.0,
"h_rank": 36,
"avg_value": 0.2525597,
"avg_rank": 81.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 41.0,
"rbi_rank": 36,
"tb_value": 116.0,
"tb_rank": 639,
"bb_value": 9.0,
"bb_rank": 295,
"so_value": 72.0,
"so_rank": 42,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.2961783,
"obp_rank": "137",
"slg_value": 0.3959044,
"slg_rank": "108",
"ops_value": 0.6920827,
"ops_rank": 245.0,
"war_value": 0.16,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 228.0,
"k_percent": 22.9,
"bb_percent": 2.9,
"woba": 0.305,
"xwoba": 0.333,
"xba": 0.27,
"xslg": 0.452,
"sweet_spot_percent": 33.6,
"barrel_batted_rate": 8.6,
"hard_hit_percent": 45.5,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 17.8,
"whiff_percent": 26.1,
"swing_percent": 56.5
},
"components": {
"expected_quality": 0.7222,
"regression_edge": 0.8,
"xwoba_edge": 0.8286,
"xba_edge": 0.9,
"xslg_edge": 1.1429,
"barrel_edge": 0.4,
"hard_hit_edge": 1.0,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": 0.05,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "687093",
"player_name": "Vaughn Grissom",
"offense_factor": 1.0327,
"quality_score": 0.436,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687093",
"espn_id": 42503,
"player_name": "Vaughn Grissom",
"team": "LAA",
"role": "batter",
"espn_rank": 380,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 380,
"gp_value": 41.0,
"gp_rank": 296,
"ab_value": 138.0,
"ab_rank": 257,
"r_value": 14.0,
"r_rank": 287,
"h_value": 33.0,
"h_rank": 246,
"avg_value": 0.2391304,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 27.0,
"rbi_rank": 139,
"tb_value": 55.0,
"tb_rank": 1368,
"bb_value": 14.0,
"bb_rank": 215,
"so_value": 17.0,
"so_rank": 383,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3164556,
"obp_rank": "-",
"slg_value": 0.3985507,
"slg_rank": "-",
"ops_value": 0.7150063,
"ops_rank": null,
"war_value": -0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 121.0,
"k_percent": 10.7,
"bb_percent": 8.8,
"woba": 0.316,
"xwoba": 0.344,
"xba": 0.261,
"xslg": 0.435,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 45.2,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 13.4,
"whiff_percent": 19.4,
"swing_percent": 45.6
},
"components": {
"expected_quality": 0.7915,
"regression_edge": 0.8,
"xwoba_edge": 1.1429,
"xba_edge": 0.6429,
"xslg_edge": 0.9,
"barrel_edge": 0.1111,
"hard_hit_edge": 0.9571,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": -0.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "663611",
"player_name": "Nick Madrigal",
"offense_factor": 0.9759,
"quality_score": -0.3212,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "663611",
"espn_id": 41170,
"player_name": "Nick Madrigal",
"team": "LAA",
"role": "batter",
"espn_rank": 218,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 218,
"gp_value": 14.0,
"gp_rank": 448,
"ab_value": 41.0,
"ab_rank": 431,
"r_value": 7.0,
"r_rank": 385,
"h_value": 12.0,
"h_rank": 397,
"avg_value": 0.2926829,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 2.0,
"rbi_rank": 466,
"tb_value": 13.0,
"tb_rank": 2538,
"bb_value": 6.0,
"bb_rank": 359,
"so_value": 3.0,
"so_rank": 517,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3958333,
"obp_rank": "-",
"slg_value": 0.3170731,
"slg_rank": "-",
"ops_value": 0.7129064,
"ops_rank": null,
"war_value": 0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 6.3,
"bb_percent": 12.5,
"woba": 0.334,
"xwoba": 0.292,
"xba": 0.231,
"xslg": 0.281,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 26.3,
"exit_velocity_avg": 88.7,
"launch_angle_avg": 9.8,
"whiff_percent": 9.5,
"swing_percent": 51.1
},
"components": {
"expected_quality": -0.6347,
"regression_edge": -1.2,
"xwoba_edge": -0.3429,
"xba_edge": -0.2143,
"xslg_edge": -1.3,
"barrel_edge": -1.5111,
"hard_hit_edge": -1.7429,
"exit_velocity_edge": -0.04,
"sweet_spot_edge": -0.7333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "672724",
"player_name": "Oswald Peraza",
"offense_factor": 1.0042,
"quality_score": 0.0556,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672724",
"espn_id": 42479,
"player_name": "Oswald Peraza",
"team": "LAA",
"role": "batter",
"espn_rank": 76,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 76,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 212.0,
"ab_rank": 142,
"r_value": 20.0,
"r_rank": 213,
"h_value": 55.0,
"h_rank": 121,
"avg_value": 0.2594339,
"avg_rank": 67.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 21.0,
"rbi_rank": 194,
"tb_value": 89.0,
"tb_rank": 666,
"bb_value": 9.0,
"bb_rank": 295,
"so_value": 60.0,
"so_rank": 85,
"sb_value": 9.0,
"sb_rank": 45,
"obp_value": 0.30837,
"obp_rank": "123",
"slg_value": 0.4198113,
"slg_rank": "83",
"ops_value": 0.7281813,
"ops_rank": 206.0,
"war_value": 1.59,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 152.0,
"k_percent": 26.3,
"bb_percent": 3.9,
"woba": 0.32,
"xwoba": 0.308,
"xba": 0.254,
"xslg": 0.398,
"sweet_spot_percent": 38.6,
"barrel_batted_rate": 8.6,
"hard_hit_percent": 37.3,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 10.1,
"whiff_percent": 30.5,
"swing_percent": 55.7
},
"components": {
"expected_quality": 0.1493,
"regression_edge": -0.3429,
"xwoba_edge": 0.1143,
"xba_edge": 0.4429,
"xslg_edge": 0.3714,
"barrel_edge": 0.4,
"hard_hit_edge": -0.1714,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": 0.8833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "681351",
"player_name": "Logan O'Hoppe",
"offense_factor": 0.993,
"quality_score": -0.0931,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681351",
"espn_id": 42047,
"player_name": "Logan O'Hoppe",
"team": "LAA",
"role": "batter",
"espn_rank": 245,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 245,
"gp_value": 50.0,
"gp_rank": 239,
"ab_value": 153.0,
"ab_rank": 238,
"r_value": 17.0,
"r_rank": 240,
"h_value": 36.0,
"h_rank": 224,
"avg_value": 0.2352941,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 17.0,
"rbi_rank": 244,
"tb_value": 53.0,
"tb_rank": 1529,
"bb_value": 13.0,
"bb_rank": 237,
"so_value": 40.0,
"so_rank": 193,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3058823,
"obp_rank": "-",
"slg_value": 0.3464052,
"slg_rank": "-",
"ops_value": 0.6522875,
"ops_rank": null,
"war_value": 0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 119.0,
"k_percent": 23.4,
"bb_percent": 7.6,
"woba": 0.294,
"xwoba": 0.289,
"xba": 0.207,
"xslg": 0.363,
"sweet_spot_percent": 29.6,
"barrel_batted_rate": 12.2,
"hard_hit_percent": 39.1,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 17.1,
"whiff_percent": 28.4,
"swing_percent": 49.8
},
"components": {
"expected_quality": -0.1769,
"regression_edge": -0.1429,
"xwoba_edge": -0.4286,
"xba_edge": -0.9,
"xslg_edge": -0.1286,
"barrel_edge": 1.2,
"hard_hit_edge": 0.0857,
"exit_velocity_edge": -0.52,
"sweet_spot_edge": -0.6167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "694203",
"player_name": "Denzer Guzman",
"offense_factor": 0.9756,
"quality_score": -0.3259,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694203",
"espn_id": 4917822,
"player_name": "Denzer Guzman",
"team": "LAA",
"role": "batter",
"espn_rank": 440,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 440,
"gp_value": 8.0,
"gp_rank": 507,
"ab_value": 34.0,
"ab_rank": 453,
"r_value": 3.0,
"r_rank": 447,
"h_value": 9.0,
"h_rank": 421,
"avg_value": 0.2647058,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 5.0,
"rbi_rank": 401,
"tb_value": 11.0,
"tb_rank": 2519,
"bb_value": 0.0,
"bb_rank": 521,
"so_value": 6.0,
"so_rank": 488,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2647058,
"obp_rank": "-",
"slg_value": 0.3235294,
"slg_rank": "-",
"ops_value": 0.5882352,
"ops_rank": null,
"war_value": -0.16,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 17.6,
"bb_percent": 0.0,
"woba": 0.258,
"xwoba": 0.254,
"xba": 0.245,
"xslg": 0.341,
"sweet_spot_percent": 21.4,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 42.9,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 8.6,
"whiff_percent": 25.4,
"swing_percent": 60.4
},
"components": {
"expected_quality": -0.8236,
"regression_edge": -0.1143,
"xwoba_edge": -1.4286,
"xba_edge": 0.1857,
"xslg_edge": -0.4429,
"barrel_edge": -1.5111,
"hard_hit_edge": 0.6286,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": -1.9833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "642350",
"player_name": "Jose Siri",
"offense_factor": 1.0352,
"quality_score": 0.4697,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "642350",
"espn_id": 33954,
"player_name": "Jose Siri",
"team": "LAA",
"role": "batter",
"espn_rank": 147,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 147,
"gp_value": 26.0,
"gp_rank": 382,
"ab_value": 50.0,
"ab_rank": 412,
"r_value": 12.0,
"r_rank": 310,
"h_value": 15.0,
"h_rank": 370,
"avg_value": 0.3,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 356,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 12.0,
"rbi_rank": 292,
"tb_value": 27.0,
"tb_rank": 1843,
"bb_value": 5.0,
"bb_rank": 382,
"so_value": 16.0,
"so_rank": 393,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.375,
"obp_rank": "-",
"slg_value": 0.54,
"slg_rank": "-",
"ops_value": 0.915,
"ops_rank": null,
"war_value": 0.89,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 11.0,
"k_percent": 27.6,
"bb_percent": 8.6,
"woba": 0.397,
"xwoba": 0.366,
"xba": 0.267,
"xslg": 0.499,
"sweet_spot_percent": 41.7,
"barrel_batted_rate": 17.1,
"hard_hit_percent": 42.9,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 20.4,
"whiff_percent": 36.1,
"swing_percent": 56.5
},
"components": {
"expected_quality": 1.3578,
"regression_edge": -0.8857,
"xwoba_edge": 1.7714,
"xba_edge": 0.8143,
"xslg_edge": 1.8143,
"barrel_edge": 2.2889,
"hard_hit_edge": 0.6286,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": 1.4,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away LAA | True | 644 | -0.4160 | 0.4500 | 1.0354 | 0.9627 | 1.0513 | 1.0496 | positive_pitcher_regression | 0.3860 | 0.4870 | 10.60 | 14.90 | 23.10 | 8.60 | 42.90 | |
| Home OAK | True | 144 | 0.1870 | 0.4500 | 0.9841 | 0.9902 | 0.9748 | 0.9324 | neutral | 0.2850 | 0.2580 | 20.20 | 6.40 | 24.20 | 3 | 29.90 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away LAA | True | None | 45 | 85.72 | 2224 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2246 | |
| Home OAK | True | None | 88 | 91.48 | 2286 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0978 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 0.9928 |
| home_runs_vs_away_pitcher | 1.0159 |
| home_pitcher_quality_edge | 0.6030 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "695611",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 25.0,
"k_percent": 20.2,
"bb_percent": 6.4,
"woba": 0.258,
"xwoba": 0.285,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 29.9,
"avg_best_speed": 77.1636,
"avg_hyper_speed": 93.5788,
"whiff_percent": 24.2,
"swing_percent": 52.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.9044,
"command_and_miss": -0.0829,
"regression_edge": -0.7714,
"xwoba_edge": 0.8571,
"barrel_edge": 0.9556,
"hard_hit_edge": 1.2,
"whiff_edge": -0.2143,
"bb_edge": 0.7,
"pitch_design_score": 0.0978
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "695611",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 88,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 88,
"pitch_usage": 0.0,
"release_speed": 91.47613636363636,
"release_spin_rate": 2286.431818181818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 88,
"pitch_usage": 0.0,
"release_speed": 91.47613636363636,
"release_spin_rate": 2286.431818181818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 91.4761,
"release_spin_rate": 2286.4318,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0978,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6989,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.187,
"sample_weight": 0.45,
"run_prevention_factor": 0.9841,
"strikeout_factor": 0.9902,
"walk_factor": 0.9748,
"homer_factor": 0.9324,
"woba_minus_xwoba": -0.027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695611",
"espn_id": 5023852,
"player_name": "Gage Jump",
"team": "ATH",
"role": "pitcher",
"espn_rank": 144,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 144,
"gp_value": 4.0,
"gp_rank": 512,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 2.0,
"qs_rank": 109,
"era_value": 3.0857,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 23.1,
"ip_rank": 341,
"h_value": 20.0,
"h_rank": 330,
"er_value": 8.0,
"er_rank": 396,
"hr_value": 0.0,
"hr_rank": 578,
"bb_value": 6.0,
"bb_rank": 436,
"k_value": 19.0,
"k_rank": 363,
"k_per_9_value": 7.328572,
"k_per_9_rank": 28,
"whip_value": 1.1142,
"whip_rank": null,
"war_value": 0.73,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "696270",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 36.0,
"k_percent": 10.6,
"bb_percent": 14.9,
"woba": 0.487,
"xwoba": 0.386,
"sweet_spot_percent": 31.4,
"barrel_batted_rate": 8.6,
"hard_hit_percent": 42.9,
"avg_best_speed": 79.9323,
"avg_hyper_speed": 95.0739,
"whiff_percent": 23.1,
"swing_percent": 53.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.428,
"command_and_miss": -1.18,
"regression_edge": 2.0,
"xwoba_edge": -2.0286,
"barrel_edge": -0.2889,
"hard_hit_edge": -0.6571,
"whiff_edge": -0.3714,
"bb_edge": -1.425,
"pitch_design_score": -0.2246
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "696270",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 45,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 85.71825396825398,
"release_spin_rate": 2224.492261904762,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 85.71825396825398,
"release_spin_rate": 2224.492261904762,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.7183,
"release_spin_rate": 2224.4923,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2246,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.6043,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.416,
"sample_weight": 0.45,
"run_prevention_factor": 1.0354,
"strikeout_factor": 0.9627,
"walk_factor": 1.0513,
"homer_factor": 1.0496,
"woba_minus_xwoba": 0.101,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "696270",
"espn_id": 5007859,
"player_name": "Ryan Johnson",
"team": "LAA",
"role": "pitcher",
"espn_rank": 644,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 644,
"gp_value": 4.0,
"gp_rank": 512,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 15.12,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 8.1,
"ip_rank": 504,
"h_value": 15.0,
"h_rank": 412,
"er_value": 14.0,
"er_rank": 225,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 5.0,
"k_rank": 536,
"k_per_9_value": 5.4,
"k_per_9_rank": 28,
"whip_value": 2.64,
"whip_rank": null,
"war_value": -0.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 0.9928,
"home_runs_vs_away_pitcher": 1.0159,
"home_pitcher_quality_edge": 0.603
},
"score_before": {
"away_runs": 2.2604,
"home_runs": 5.057
},
"score_after": {
"away_runs": 2.2442,
"home_runs": 5.1375,
"home_win_probability": 0.7568
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away LAA | 22-43 | 0.338 | 1.40 | 3.90 | -160 | cold | average | |
| Home OAK | 19-45 | 0.297 | 1.50 | 4.10 | -165 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away LAA | 30-45 | 0.400 | -39 | -0.520 | True |
| Home OAK | 36-37 | 0.493 | -43 | -0.589 | True |
| Signal | - | - | -0.069 | 0.071 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target LAA | - | - | 3 | - | - | - | - |
| Game target OAK | - | - | 4 | - | - | - | - |
| Player finalized LAA | 31 | 9 | 4 | 0 | 4 | 0 | 8 |
| Player finalized OAK | 33 | 9 | 4 | 0 | 4 | 2 | 6 |
| Player model fractional LAA | 32.35 | 8.20 | 4.36 | 1.08 | 4.27 | 2.36 | 7.55 |
| Player model fractional OAK | 32.71 | 7.91 | 4.79 | 1.48 | 4.60 | 3.38 | 7.03 |
| Simulation box LAA | 33 | 6 | 4 | 2 | 4 | 3 | 7 |
| Simulation box OAK | 35 | 11 | 7 | 1 | 7 | 2 | 9 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away LAA | Starter | Ryan Johnson | 3 | 5 | 4 | 10 | 0 | 7.15 | 1.66 | True |
| Away LAA | Middle Reliever | Chase Silseth | 1.20 | 0 | 2 | 0 | 1 | 2.99 | 1.26 | True |
| Away LAA | Middle Reliever | Kirby Yates | 1.10 | 2 | 2 | 1 | 1 | 3.80 | 1.20 | True |
| Away LAA | Middle Reliever | Sam Bachman | 1 | 0 | 1 | 0 | 0 | 5.84 | 1.59 | True |
| Away LAA | Middle Reliever | Ryan Zeferjahn | 1 | 0 | 0 | 0 | 0 | 3.62 | 1.35 | True |
| Home OAK | Starter | Gage Jump | 5.20 | 2 | 3 | 2 | 2 | 3.88 | 1.24 | True |
| Home OAK | Middle Reliever | Elvis Alvarado | 1.10 | 0 | 0 | 2 | 0 | 4.02 | 1.08 | True |
| Home OAK | Middle Reliever | Hogan Harris | 1 | 0 | 2 | 0 | 1 | 4.62 | 1.37 | True |
| Home OAK | Middle Reliever | Mark Leiter Jr. | 1 | 2 | 2 | 2 | 0 | 3.29 | 1.23 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | OAK | batter | RF | Carlos Cortes | better | 11 | 5 | 6 | 6 | 5 | predicted_RBI | 2.8100 | boost | better |
| home | OAK | batter | 1B | Nick Kurtz | worse | 9 | 4 | 5 | 3 | 6 | predicted_SO | 1.6850 | boost | worse |
| away | LAA | batter | CF | Jose Siri | worse | 11 | 6 | 5 | 5 | 6 | predicted_RBI | 1.6300 | boost | better |
| away | LAA | batter | LF | Christian Moore | better | 8 | 5 | 3 | 6 | 2 | predicted_RBI | 1.5680 | boost | better |
| home | OAK | batter | DH | Jonah Heim | worse | 10 | 5 | 5 | 4 | 6 | predicted_SO | 1.4190 | boost | worse |
| home | OAK | batter | 3B | Zack Gelof | worse | 11 | 6 | 5 | 5 | 6 | predicted_AB | 1.3700 | boost | better |
| home | OAK | batter | SS | Jacob Wilson | worse | 10 | 4 | 6 | 3 | 7 | predicted_AB | -1.3100 | deboost | worse |
| home | OAK | batter | 2B | Jeff McNeil | worse | 11 | 4 | 7 | 5 | 6 | predicted_H | 1.3000 | boost | better |
| away | LAA | batter | 2B | Nick Madrigal | worse | 11 | 3 | 8 | 4 | 7 | predicted_AB | -1.2500 | deboost | worse |
| away | LAA | batter | 3B | Denzer Guzman | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | -1.2500 | deboost | worse |
| away | LAA | pitcher | Starter | Ryan Johnson | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -1.0000 | deboost | worse |
| away | LAA | batter | SS | Zach Neto | worse | 11 | 4 | 7 | 3 | 8 | predicted_H | -0.9900 | deboost | worse |
| away | LAA | pitcher | Middle Reliever | Ryan Zeferjahn | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.9000 | boost | better |
| home | OAK | batter | LF | Tyler Soderstrom | better | 10 | 5 | 5 | 6 | 4 | predicted_AB | -0.8900 | deboost | worse |
| away | LAA | batter | 1B | Vaughn Grissom | worse | 11 | 4 | 7 | 3 | 8 | predicted_H | -0.8800 | deboost | worse |
| away | LAA | batter | DH | Oswald Peraza | worse | 10 | 3 | 7 | 2 | 8 | predicted_BB | 0.8750 | boost | better |
| home | OAK | batter | C | Shea Langeliers | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_SO | -0.8660 | deboost | better |
| away | LAA | batter | C | Logan O'Hoppe | worse | 10 | 3 | 7 | 4 | 6 | predicted_SO | -0.8510 | deboost | better |
| home | OAK | batter | CF | Henry Bolte | worse | 11 | 4 | 7 | 5 | 6 | predicted_RBI | 0.6800 | boost | better |
| away | LAA | batter | RF | Jo Adell | worse | 10 | 2 | 8 | 2 | 8 | predicted_R | 0.5330 | boost | better |
| home | OAK | pitcher | Starter | Gage Jump | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | OAK | pitcher | Middle Reliever | Elvis Alvarado | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | LAA | pitcher | Middle Reliever | Chase Silseth | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
| away | LAA | pitcher | Middle Reliever | Kirby Yates | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Ryan Johnson |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.4160 |
| ESPN Rank | 644 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2246 |
| Avg Velo | 85.7183 |
| Avg Spin | 2224.4923 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 3 |
| Pre ER | 5 |
| Pre H | 10 |
| Pre BB | 0 |
| Pre SO | 4 |
| Season ERA | 15.1200 |
| Season WHIP | 2.6400 |
| Role Avg IP | 3.3330 |
| Recent Avg IP | 3.3330 |
| Last Start IP | 3.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"opponent": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"edges": {
"quality_edge": -0.0269,
"offense_edge": -0.0052,
"opponent_offense_edge": 0.0382,
"defense_strength": -0.0889,
"opponent_defense_weakness": 0.1495,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0163,
"strikeout": 0.9961
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "696270",
"profile": {
"available": true,
"pitcher_id": "696270",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 36.0,
"k_percent": 10.6,
"bb_percent": 14.9,
"woba": 0.487,
"xwoba": 0.386,
"sweet_spot_percent": 31.4,
"barrel_batted_rate": 8.6,
"hard_hit_percent": 42.9,
"avg_best_speed": 79.9323,
"avg_hyper_speed": 95.0739,
"whiff_percent": 23.1,
"swing_percent": 53.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.428,
"command_and_miss": -1.18,
"regression_edge": 2.0,
"xwoba_edge": -2.0286,
"barrel_edge": -0.2889,
"hard_hit_edge": -0.6571,
"whiff_edge": -0.3714,
"bb_edge": -1.425,
"pitch_design_score": -0.2246
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "696270",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 45,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 85.71825396825398,
"release_spin_rate": 2224.492261904762,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 85.71825396825398,
"release_spin_rate": 2224.492261904762,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.7183,
"release_spin_rate": 2224.4923,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2246,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.6043,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.416,
"sample_weight": 0.45,
"run_prevention_factor": 1.0354,
"strikeout_factor": 0.9627,
"walk_factor": 1.0513,
"homer_factor": 1.0496,
"woba_minus_xwoba": 0.101,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "696270",
"espn_id": 5007859,
"player_name": "Ryan Johnson",
"team": "LAA",
"role": "pitcher",
"espn_rank": 644,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 644,
"gp_value": 4.0,
"gp_rank": 512,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 15.12,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 8.1,
"ip_rank": 504,
"h_value": 15.0,
"h_rank": 412,
"er_value": 14.0,
"er_rank": 225,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 5.0,
"k_rank": 536,
"k_per_9_value": 5.4,
"k_per_9_rank": 28,
"whip_value": 2.64,
"whip_rank": null,
"war_value": -0.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 6.0,
"factor": 1.0159,
"adjusted": 6
},
"predicted_H": {
"original": 7.0,
"factor": 1.0159,
"adjusted": 7
},
"predicted_BB": {
"original": 4.0,
"factor": 1.0231,
"adjusted": 4
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0223,
"adjusted": 1
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9832,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 8.1,
"ER": 14,
"H": 15,
"BB": 7,
"SO": 5,
"HR": 3,
"ERA": 15.12,
"WHIP": 2.6399999999999997,
"K9": 5.3999999999999995,
"HR9": 3.2399999999999998,
"games_pitched": 4,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 4,
"error_prone": false
},
"games_count": 4,
"latest_game_date": "2026-05-19T00:00:00"
}{
"available": true,
"pitcher_id": "696270",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 45,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 85.71825396825398,
"release_spin_rate": 2224.492261904762,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 85.71825396825398,
"release_spin_rate": 2224.492261904762,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.7183,
"release_spin_rate": 2224.4923,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2246,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.6043,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.655,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2487,
"prior_weight": 0.7513
},
"role": "pitcher",
"player_id": "696270",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 4,
"reference_playing_time": 4.0,
"windows": {
"last_5": {
"games": 4,
"totals": {
"IP": 8.1,
"ER": 14.0,
"R": 14.0,
"H": 15.0,
"BB": 7.0,
"SO": 5.0,
"HR": 3.0,
"BF": 47.0,
"Pitches": 170.0
},
"per_game": {
"IP": 2.0,
"ER": 3.5,
"R": 3.5,
"H": 3.75,
"BB": 1.75,
"SO": 1.25,
"HR": 0.75,
"BF": 11.75,
"Pitches": 42.5
},
"rates": {
"ERA": 15.12,
"WHIP": 2.64,
"ER_per_IP": 1.68,
"H_per_IP": 1.8,
"BB_per_IP": 0.84,
"SO_per_IP": 0.6,
"HR_per_IP": 0.36
}
},
"last_10": {
"games": 4,
"totals": {
"IP": 8.1,
"ER": 14.0,
"R": 14.0,
"H": 15.0,
"BB": 7.0,
"SO": 5.0,
"HR": 3.0,
"BF": 47.0,
"Pitches": 170.0
},
"per_game": {
"IP": 2.0,
"ER": 3.5,
"R": 3.5,
"H": 3.75,
"BB": 1.75,
"SO": 1.25,
"HR": 0.75,
"BF": 11.75,
"Pitches": 42.5
},
"rates": {
"ERA": 15.12,
"WHIP": 2.64,
"ER_per_IP": 1.68,
"H_per_IP": 1.8,
"BB_per_IP": 0.84,
"SO_per_IP": 0.6,
"HR_per_IP": 0.36
}
},
"season": {
"games": 4,
"totals": {
"IP": 8.1,
"ER": 14.0,
"R": 14.0,
"H": 15.0,
"BB": 7.0,
"SO": 5.0,
"HR": 3.0,
"BF": 47.0,
"Pitches": 170.0
},
"per_game": {
"IP": 2.0,
"ER": 3.5,
"R": 3.5,
"H": 3.75,
"BB": 1.75,
"SO": 1.25,
"HR": 0.75,
"BF": 11.75,
"Pitches": 42.5
},
"rates": {
"ERA": 15.12,
"WHIP": 2.64,
"ER_per_IP": 1.68,
"H_per_IP": 1.8,
"BB_per_IP": 0.84,
"SO_per_IP": 0.6,
"HR_per_IP": 0.36
}
}
},
"weighted_prediction": {
"predicted_IP": 3.2,
"predicted_ER": 2.782,
"predicted_H": 4.131,
"predicted_BB": 1.687,
"predicted_SO": 2.99,
"predicted_HR": 0.698,
"predicted_ERA": 7.1474,
"predicted_WHIP": 1.6612
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6674,
"form_weight": 0.3326,
"form_reliability": 0.2487,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.655,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2487,
"prior_weight": 0.7513
},
"applied_metrics": {
"predicted_IP": {
"model": 4.0,
"form": 3.2,
"final": 4.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 5.0,
"form": 2.782,
"final": 4.2623,
"source": "model_form_blend"
},
"predicted_H": {
"model": 10.0,
"form": 4.131,
"final": 8.0481,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 1.687,
"final": 0.5611,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 2.99,
"final": 3.6641,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.698,
"final": 0.2321,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 7.1474,
"final": 7.1474,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.6612,
"final": 1.6612,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Chase Silseth |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1328 |
| ESPN Rank | 83 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 1.7089 |
| Season WHIP | 1.3671 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"opponent": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"edges": {
"quality_edge": -0.0269,
"offense_edge": -0.0052,
"opponent_offense_edge": 0.0382,
"defense_strength": -0.0889,
"opponent_defense_weakness": 0.1495,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0163,
"strikeout": 0.9961
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681217",
"profile": {
"available": true,
"pitcher_id": "681217",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 75.0,
"k_percent": 25.4,
"bb_percent": 13.2,
"woba": 0.302,
"xwoba": 0.298,
"sweet_spot_percent": 39.1,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 30.4,
"avg_best_speed": 75.0588,
"avg_hyper_speed": 93.1661,
"whiff_percent": 34.1,
"swing_percent": 46.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3179,
"command_and_miss": 0.4064,
"regression_edge": 0.1143,
"xwoba_edge": 0.4857,
"barrel_edge": -0.3111,
"hard_hit_edge": 1.1286,
"whiff_edge": 1.2,
"bb_edge": -1.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "681217",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.1328,
"sample_weight": 0.45,
"run_prevention_factor": 0.9887,
"strikeout_factor": 1.0291,
"walk_factor": 1.036,
"homer_factor": 0.9843,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681217",
"espn_id": 4413990,
"player_name": "Chase Silseth",
"team": "LAA",
"role": "pitcher",
"espn_rank": 83,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 83,
"gp_value": 32.0,
"gp_rank": 31,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.7088,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 6.0,
"hld_rank": 68,
"ip_value": 26.1,
"ip_rank": 307,
"h_value": 21.0,
"h_rank": 312,
"er_value": 5.0,
"er_rank": 496,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 15.0,
"bb_rank": 191,
"k_value": 29.0,
"k_rank": 264,
"k_per_9_value": 9.911392,
"k_per_9_rank": 23,
"whip_value": 1.367,
"whip_rank": null,
"war_value": 1.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9949,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9949,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0162,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9929,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0131,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 1,
"H": 7,
"BB": 2,
"SO": 13,
"HR": 1,
"ERA": 0.9642857142857142,
"WHIP": 0.9642857142857142,
"K9": 12.535714285714285,
"HR9": 0.9642857142857142,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "681217",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.229,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5112,
"prior_weight": 0.4888
},
"role": "pitcher",
"player_id": "681217",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 1.0,
"SO": 8.0,
"HR": 1.0,
"BF": 20.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.2,
"SO": 1.6,
"HR": 0.2,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.2857,
"ER_per_IP": 0.21429,
"H_per_IP": 1.07143,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.71429,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 1.0,
"R": 1.0,
"H": 7.0,
"BB": 2.0,
"SO": 13.0,
"HR": 1.0,
"BF": 37.0,
"Pitches": 159.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.7,
"BB": 0.2,
"SO": 1.3,
"HR": 0.1,
"BF": 3.7,
"Pitches": 15.9
},
"rates": {
"ERA": 0.9643,
"WHIP": 0.9643,
"ER_per_IP": 0.10714,
"H_per_IP": 0.75,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.39286,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 32,
"totals": {
"IP": 26.1,
"ER": 5.0,
"R": 6.0,
"H": 21.0,
"BB": 15.0,
"SO": 29.0,
"HR": 2.0,
"BF": 114.0,
"Pitches": 468.0
},
"per_game": {
"IP": 0.2,
"ER": 0.1562,
"R": 0.1875,
"H": 0.6562,
"BB": 0.4688,
"SO": 0.9062,
"HR": 0.0625,
"BF": 3.5625,
"Pitches": 14.625
},
"rates": {
"ERA": 1.7089,
"WHIP": 1.3671,
"ER_per_IP": 0.18987,
"H_per_IP": 0.79747,
"BB_per_IP": 0.56962,
"SO_per_IP": 1.10127,
"HR_per_IP": 0.07595
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.321,
"predicted_H": 0.906,
"predicted_BB": 0.312,
"predicted_SO": 1.173,
"predicted_HR": 0.143,
"predicted_ERA": 2.9945,
"predicted_WHIP": 1.2617
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5565,
"form_weight": 0.4435,
"form_reliability": 0.5112,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.229,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5112,
"prior_weight": 0.4888
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.321,
"final": 0.1424,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.906,
"final": 0.4018,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.312,
"final": 0.6949,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.173,
"final": 1.6332,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.143,
"final": 0.0634,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.9945,
"final": 2.9945,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2617,
"final": 1.2617,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Kirby Yates |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1115 |
| ESPN Rank | 306 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 2 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 3.3750 |
| Season WHIP | 1.0500 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"opponent": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"edges": {
"quality_edge": -0.0269,
"offense_edge": -0.0052,
"opponent_offense_edge": 0.0382,
"defense_strength": -0.0889,
"opponent_defense_weakness": 0.1495,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0163,
"strikeout": 0.9961
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "489446",
"profile": {
"available": true,
"pitcher_id": "489446",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 27.0,
"k_percent": 29.8,
"bb_percent": 10.5,
"woba": 0.288,
"xwoba": 0.314,
"sweet_spot_percent": 42.4,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 60.6,
"avg_best_speed": 84.3276,
"avg_hyper_speed": 97.2114,
"whiff_percent": 30.1,
"swing_percent": 49.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.5997,
"command_and_miss": 0.6243,
"regression_edge": -0.7429,
"xwoba_edge": 0.0286,
"barrel_edge": -1.0667,
"hard_hit_edge": -2.5,
"whiff_edge": 0.6286,
"bb_edge": -0.325,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "489446",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.1115,
"sample_weight": 0.45,
"run_prevention_factor": 1.0095,
"strikeout_factor": 1.0301,
"walk_factor": 1.0117,
"homer_factor": 1.083,
"woba_minus_xwoba": -0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "489446",
"espn_id": 32623,
"player_name": "Kirby Yates",
"team": "LAA",
"role": "pitcher",
"espn_rank": 306,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 306,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.05,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 13.1,
"ip_rank": 448,
"h_value": 9.0,
"h_rank": 498,
"er_value": 6.0,
"er_rank": 464,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 6.0,
"bb_rank": 436,
"k_value": 17.0,
"k_rank": 386,
"k_per_9_value": 11.475,
"k_per_9_rank": 23,
"whip_value": 1.125,
"whip_rank": null,
"war_value": 0.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0043,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0043,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0053,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0373,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0135,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 2,
"H": 4,
"BB": 4,
"SO": 10,
"HR": 0,
"ERA": 2.0,
"WHIP": 0.8888888888888888,
"K9": 10.0,
"HR9": 0.0,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "489446",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.648,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3462,
"prior_weight": 0.6538
},
"role": "pitcher",
"player_id": "489446",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 2.0,
"SO": 7.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 78.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.4,
"SO": 1.4,
"HR": 0.0,
"BF": 3.8,
"Pitches": 15.6
},
"rates": {
"ERA": 1.8,
"WHIP": 0.8,
"ER_per_IP": 0.2,
"H_per_IP": 0.4,
"BB_per_IP": 0.4,
"SO_per_IP": 1.4,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 3.0,
"R": 3.0,
"H": 5.0,
"BB": 5.0,
"SO": 11.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 156.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.5,
"BB": 0.5,
"SO": 1.1,
"HR": 0.1,
"BF": 4.1,
"Pitches": 15.6
},
"rates": {
"ERA": 2.7931,
"WHIP": 1.0345,
"ER_per_IP": 0.31034,
"H_per_IP": 0.51724,
"BB_per_IP": 0.51724,
"SO_per_IP": 1.13793,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 14,
"totals": {
"IP": 13.1,
"ER": 5.0,
"R": 5.0,
"H": 8.0,
"BB": 6.0,
"SO": 17.0,
"HR": 1.0,
"BF": 56.0,
"Pitches": 223.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3571,
"R": 0.3571,
"H": 0.5714,
"BB": 0.4286,
"SO": 1.2143,
"HR": 0.0714,
"BF": 4.0,
"Pitches": 15.9286
},
"rates": {
"ERA": 3.375,
"WHIP": 1.05,
"ER_per_IP": 0.375,
"H_per_IP": 0.6,
"BB_per_IP": 0.45,
"SO_per_IP": 1.275,
"HR_per_IP": 0.075
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.422,
"predicted_H": 0.803,
"predicted_BB": 0.394,
"predicted_SO": 1.057,
"predicted_HR": 0.113,
"predicted_ERA": 3.8,
"predicted_WHIP": 1.1969
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6262,
"form_weight": 0.3738,
"form_reliability": 0.3462,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.648,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3462,
"prior_weight": 0.6538
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 0.422,
"final": 1.4102,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.803,
"final": 0.9264,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.394,
"final": 0.7735,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.057,
"final": 1.6475,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.113,
"final": 0.6685,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8,
"final": 3.8,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1969,
"final": 1.1969,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Sam Bachman |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2567 |
| ESPN Rank | 132 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 3.3061 |
| Season WHIP | 1.2245 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"opponent": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"edges": {
"quality_edge": -0.0269,
"offense_edge": -0.0052,
"opponent_offense_edge": 0.0382,
"defense_strength": -0.0889,
"opponent_defense_weakness": 0.1495,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0163,
"strikeout": 0.9961
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "696147",
"profile": {
"available": true,
"pitcher_id": "696147",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 98.0,
"k_percent": 25.7,
"bb_percent": 12.5,
"woba": 0.3,
"xwoba": 0.282,
"sweet_spot_percent": 30.5,
"barrel_batted_rate": 5.0,
"hard_hit_percent": 32.9,
"avg_best_speed": 75.7202,
"avg_hyper_speed": 93.0253,
"whiff_percent": 35.0,
"swing_percent": 43.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6922,
"command_and_miss": 0.5057,
"regression_edge": 0.5143,
"xwoba_edge": 0.9429,
"barrel_edge": 0.5111,
"hard_hit_edge": 0.7714,
"whiff_edge": 1.3286,
"bb_edge": -0.825,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "696147",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2567,
"sample_weight": 0.45,
"run_prevention_factor": 0.9782,
"strikeout_factor": 1.0321,
"walk_factor": 1.0297,
"homer_factor": 0.955,
"woba_minus_xwoba": 0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "696147",
"espn_id": 4621489,
"player_name": "Sam Bachman",
"team": "LAA",
"role": "pitcher",
"espn_rank": 132,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 132,
"gp_value": 26.0,
"gp_rank": 116,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.3061,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 11.0,
"hld_rank": 12,
"ip_value": 32.2,
"ip_rank": 213,
"h_value": 23.0,
"h_rank": 290,
"er_value": 12.0,
"er_rank": 266,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 35.0,
"k_rank": 199,
"k_per_9_value": 9.642858,
"k_per_9_rank": 25,
"whip_value": 1.2244,
"whip_rank": null,
"war_value": 0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9902,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9902,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0134,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9798,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0144,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 5,
"H": 11,
"BB": 7,
"SO": 11,
"HR": 2,
"ERA": 4.35483870967742,
"WHIP": 1.741935483870968,
"K9": 9.580645161290324,
"HR9": 1.741935483870968,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "696147",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.487,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5647,
"prior_weight": 0.4353
},
"role": "pitcher",
"player_id": "696147",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 5.0,
"R": 5.0,
"H": 6.0,
"BB": 3.0,
"SO": 6.0,
"HR": 2.0,
"BF": 22.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 1.2,
"BB": 0.6,
"SO": 1.2,
"HR": 0.4,
"BF": 4.4,
"Pitches": 16.0
},
"rates": {
"ERA": 10.3846,
"WHIP": 2.0769,
"ER_per_IP": 1.15385,
"H_per_IP": 1.38462,
"BB_per_IP": 0.69231,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.46154
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 5.0,
"R": 5.0,
"H": 11.0,
"BB": 7.0,
"SO": 11.0,
"HR": 2.0,
"BF": 49.0,
"Pitches": 175.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 1.1,
"BB": 0.7,
"SO": 1.1,
"HR": 0.2,
"BF": 4.9,
"Pitches": 17.5
},
"rates": {
"ERA": 4.3548,
"WHIP": 1.7419,
"ER_per_IP": 0.48387,
"H_per_IP": 1.06452,
"BB_per_IP": 0.67742,
"SO_per_IP": 1.06452,
"HR_per_IP": 0.19355
}
},
"season": {
"games": 26,
"totals": {
"IP": 32.2,
"ER": 12.0,
"R": 12.0,
"H": 23.0,
"BB": 17.0,
"SO": 35.0,
"HR": 4.0,
"BF": 136.0,
"Pitches": 511.0
},
"per_game": {
"IP": 1.1,
"ER": 0.4615,
"R": 0.4615,
"H": 0.8846,
"BB": 0.6538,
"SO": 1.3462,
"HR": 0.1538,
"BF": 5.2308,
"Pitches": 19.6538
},
"rates": {
"ERA": 3.3061,
"WHIP": 1.2245,
"ER_per_IP": 0.36735,
"H_per_IP": 0.70408,
"BB_per_IP": 0.52041,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.12245
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.673,
"predicted_H": 1.106,
"predicted_BB": 0.547,
"predicted_SO": 1.133,
"predicted_HR": 0.242,
"predicted_ERA": 5.8354,
"predicted_WHIP": 1.5924
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5339,
"form_weight": 0.4661,
"form_reliability": 0.5647,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.487,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5647,
"prior_weight": 0.4353
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.673,
"final": 0.3137,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.106,
"final": 0.5155,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.547,
"final": 0.2549,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.133,
"final": 1.062,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.242,
"final": 0.1128,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.8354,
"final": 5.8354,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5924,
"final": 1.5924,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Ryan Zeferjahn |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1050 |
| ESPN Rank | 497 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 4.9091 |
| Season WHIP | 1.3636 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"opponent": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"edges": {
"quality_edge": -0.0269,
"offense_edge": -0.0052,
"opponent_offense_edge": 0.0382,
"defense_strength": -0.0889,
"opponent_defense_weakness": 0.1495,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9947,
"run_prevention": 1.0163,
"strikeout": 0.9961
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "666171",
"profile": {
"available": true,
"pitcher_id": "666171",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 107.0,
"k_percent": 28.2,
"bb_percent": 16.1,
"woba": 0.297,
"xwoba": 0.302,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 36.8,
"avg_best_speed": 79.7571,
"avg_hyper_speed": 93.407,
"whiff_percent": 30.5,
"swing_percent": 38.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3209,
"command_and_miss": 0.2614,
"regression_edge": -0.1429,
"xwoba_edge": 0.3714,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.2143,
"whiff_edge": 0.6857,
"bb_edge": -1.725,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "666171",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.105,
"sample_weight": 0.45,
"run_prevention_factor": 0.9911,
"strikeout_factor": 1.027,
"walk_factor": 1.0621,
"homer_factor": 0.9751,
"woba_minus_xwoba": -0.005,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "666171",
"espn_id": 4722057,
"player_name": "Ryan Zeferjahn",
"team": "LAA",
"role": "pitcher",
"espn_rank": 497,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 497,
"gp_value": 28.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.909,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 33.0,
"ip_rank": 208,
"h_value": 20.0,
"h_rank": 330,
"er_value": 18.0,
"er_rank": 171,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 25.0,
"bb_rank": 54,
"k_value": 42.0,
"k_rank": 146,
"k_per_9_value": 11.454545,
"k_per_9_rank": 18,
"whip_value": 1.3636,
"whip_rank": null,
"war_value": -0.11,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0279,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9888,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0121,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.2,
"ER": 6,
"H": 6,
"BB": 10,
"SO": 13,
"HR": 3,
"ERA": 5.586206896551724,
"WHIP": 1.6551724137931036,
"K9": 12.10344827586207,
"HR9": 2.793103448275862,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "666171",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.553,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5672,
"prior_weight": 0.4328
},
"role": "pitcher",
"player_id": "666171",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 6.0,
"SO": 10.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 99.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 1.2,
"SO": 2.0,
"HR": 0.0,
"BF": 4.4,
"Pitches": 19.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.125,
"ER_per_IP": 0.0,
"H_per_IP": 0.0,
"BB_per_IP": 1.125,
"SO_per_IP": 1.875,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 6.0,
"R": 6.0,
"H": 6.0,
"BB": 10.0,
"SO": 13.0,
"HR": 3.0,
"BF": 45.0,
"Pitches": 195.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.6,
"BB": 1.0,
"SO": 1.3,
"HR": 0.3,
"BF": 4.5,
"Pitches": 19.5
},
"rates": {
"ERA": 5.5862,
"WHIP": 1.6552,
"ER_per_IP": 0.62069,
"H_per_IP": 0.62069,
"BB_per_IP": 1.03448,
"SO_per_IP": 1.34483,
"HR_per_IP": 0.31034
}
},
"season": {
"games": 28,
"totals": {
"IP": 33.0,
"ER": 18.0,
"R": 20.0,
"H": 20.0,
"BB": 25.0,
"SO": 42.0,
"HR": 3.0,
"BF": 150.0,
"Pitches": 635.0
},
"per_game": {
"IP": 1.1,
"ER": 0.6429,
"R": 0.7143,
"H": 0.7143,
"BB": 0.8929,
"SO": 1.5,
"HR": 0.1071,
"BF": 5.3571,
"Pitches": 22.6786
},
"rates": {
"ERA": 4.9091,
"WHIP": 1.3636,
"ER_per_IP": 0.54545,
"H_per_IP": 0.60606,
"BB_per_IP": 0.75758,
"SO_per_IP": 1.27273,
"HR_per_IP": 0.09091
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.301,
"predicted_H": 0.46,
"predicted_BB": 0.551,
"predicted_SO": 0.971,
"predicted_HR": 0.101,
"predicted_ERA": 3.617,
"predicted_WHIP": 1.3492
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5329,
"form_weight": 0.4671,
"form_reliability": 0.5672,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.553,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5672,
"prior_weight": 0.4328
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.301,
"final": 0.1406,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.46,
"final": 0.2149,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.551,
"final": 0.2574,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.971,
"final": 0.4536,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.101,
"final": 0.0472,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.617,
"final": 3.617,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3492,
"final": 1.3492,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.194 | 0.000 | 0.000 | Hitting_2B | 0.239 | 0.000 | -0.239 | 0.000 |
| predicted_3B | 0.028 | 0.000 | 0.000 | Hitting_3B | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_AB | 4.470 | 5.000 | 4.000 | Hitting_AB | 3.960 | 3.000 | 1.040 | 2.000 |
| predicted_AVG | 0.220 | 0.000 | 0.250 | Hitting_AVG | 0.239 | 0.667 | -0.239 | -0.667 |
| predicted_BB | 0.514 | 0.000 | 0.000 | Hitting_BB | 0.585 | 1.000 | -0.585 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.096 | 0.000 | -0.096 | 0.000 |
| predicted_H | 0.990 | 0.000 | 1.000 | Hitting_H | 0.945 | 2.000 | -0.945 | -2.000 |
| predicted_HR | 0.230 | 0.000 | 0.000 | Hitting_HR | 0.184 | 1.000 | -0.184 | -1.000 |
| predicted_OBP | 0.308 | 0.000 | 0.250 | Hitting_OBP | 0.347 | 0.750 | -0.347 | -0.750 |
| predicted_R | 0.708 | 0.000 | 1.000 | Hitting_R | 0.728 | 1.000 | -0.728 | -1.000 |
| predicted_RBI | 0.500 | 0.000 | 0.000 | Hitting_RBI | 0.489 | 1.000 | -0.489 | -1.000 |
| predicted_SLG | 0.447 | 0.000 | 0.250 | Hitting_SLG | 0.449 | 1.667 | -0.449 | -1.667 |
| predicted_SO | 1.458 | 2.000 | 1.000 | Hitting_SO | 1.412 | 1.000 | 0.588 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.4580 -> 2.0000 (boost 0.5420, worse) |
| Biggest Deboost | predicted_H: 0.9900 -> 0.0000 (deboost -0.9900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 1 | 2 | predicted_SO: 1.4580 -> 1.5159 (boost 0.0579, worse) | predicted_AB: 4.4700 -> 4.3180 (deboost -0.1520, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3069 -> 0.3011 (deboost -0.0058, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 0 | 7 | 1 | 6 | - | predicted_SO: 1.5174 -> 1.0000 (deboost -0.5174, better) | AB rounded to 4 (raw=4.47), rates preserved: AVG=0.218 HR/AB=0.056 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7251 -> 1.0000 (boost 0.2749, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2254 -> 0.2500 (boost 0.0246, better) | predicted_SLG: 0.4582 -> 0.2500 (deboost -0.2082, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 1 | 3 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4582 (boost 0.2082, better) | predicted_AVG: 0.2500 -> 0.2254 (deboost -0.0246, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687263",
"player_name": "Zach Neto",
"position": "SS",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.194,
"predicted_3B": 0.028,
"predicted_AB": 4.47,
"predicted_AVG": 0.22,
"predicted_BB": 0.514,
"predicted_H": 0.99,
"predicted_HR": 0.23,
"predicted_OBP": 0.308,
"predicted_R": 0.708,
"predicted_RBI": 0.5,
"predicted_SLG": 0.447,
"predicted_SO": 1.458
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1659,
"predicted_3B": 0.0455,
"predicted_AB": 4.318,
"predicted_AVG": 0.2223,
"predicted_BB": 0.468,
"predicted_H": 0.9632,
"predicted_HBP": 0.076,
"predicted_HR": 0.2462,
"predicted_OBP": 0.3069,
"predicted_R": 0.7144,
"predicted_RBI": 0.494,
"predicted_SLG": 0.4633,
"predicted_SO": 1.5159
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.1659,
"delta": -0.0281,
"percent_delta": -0.1448,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0455,
"delta": 0.0175,
"percent_delta": 0.625,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 4.318,
"delta": -0.152,
"percent_delta": -0.034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2223,
"delta": 0.0023,
"percent_delta": 0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.514,
"after": 0.468,
"delta": -0.046,
"percent_delta": -0.0895,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9632,
"delta": -0.0268,
"percent_delta": -0.0271,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.2462,
"delta": 0.0162,
"percent_delta": 0.0704,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3069,
"delta": -0.0011,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.708,
"after": 0.7144,
"delta": 0.0064,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.494,
"delta": -0.006,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4633,
"delta": 0.0163,
"percent_delta": 0.0365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.458,
"after": 1.5159,
"delta": 0.0579,
"percent_delta": 0.0397,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.458,
"after": 1.5159,
"delta": 0.0579,
"percent_delta": 0.0397,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.47,
"after": 4.318,
"delta": -0.152,
"percent_delta": -0.034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 72
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1659,
"predicted_3B": 0.0455,
"predicted_AB": 4.318,
"predicted_AVG": 0.2254,
"predicted_BB": 0.4675,
"predicted_H": 0.9732,
"predicted_HBP": 0.076,
"predicted_HR": 0.2494,
"predicted_OBP": 0.3011,
"predicted_R": 0.7251,
"predicted_RBI": 0.5014,
"predicted_SLG": 0.4582,
"predicted_SO": 1.5174
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1659,
"after": 0.1659,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0455,
"after": 0.0455,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.318,
"after": 4.318,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2223,
"after": 0.2254,
"delta": 0.0031,
"percent_delta": 0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.468,
"after": 0.4675,
"delta": -0.0005,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9632,
"after": 0.9732,
"delta": 0.01,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.076,
"after": 0.076,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2462,
"after": 0.2494,
"delta": 0.0032,
"percent_delta": 0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3069,
"after": 0.3011,
"delta": -0.0058,
"percent_delta": -0.0189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7144,
"after": 0.7251,
"delta": 0.0107,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.494,
"after": 0.5014,
"delta": 0.0074,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4633,
"after": 0.4582,
"delta": -0.0051,
"percent_delta": -0.011,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5159,
"after": 1.5174,
"delta": 0.0015,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3069,
"after": 0.3011,
"delta": -0.0058,
"percent_delta": -0.0189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.47), rates preserved: AVG=0.218 HR/AB=0.056",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1659,
"after": 0.0,
"delta": -0.1659,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0455,
"after": 0.0,
"delta": -0.0455,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.318,
"after": 4.0,
"delta": -0.318,
"percent_delta": -0.0736,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4675,
"after": 0.0,
"delta": -0.4675,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9732,
"after": 1.0,
"delta": 0.0268,
"percent_delta": 0.0275,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.076,
"after": 0.0,
"delta": -0.076,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2494,
"after": 0.0,
"delta": -0.2494,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5014,
"after": 0.0,
"delta": -0.5014,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5174,
"after": 1.0,
"delta": -0.5174,
"percent_delta": -0.341,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 0,
"deboosted_metrics": 7,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5174,
"after": 1.0,
"delta": -0.5174,
"percent_delta": -0.341,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7251,
"after": 1.0,
"delta": 0.2749,
"percent_delta": 0.3791,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7251,
"after": 1.0,
"delta": 0.2749,
"percent_delta": 0.3791,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2254,
"after": 0.25,
"delta": 0.0246,
"percent_delta": 0.1091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3011,
"after": 0.25,
"delta": -0.0511,
"percent_delta": -0.1697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4582,
"after": 0.25,
"delta": -0.2082,
"percent_delta": -0.4544,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2254,
"after": 0.25,
"delta": 0.0246,
"percent_delta": 0.1091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4582,
"after": 0.25,
"delta": -0.2082,
"percent_delta": -0.4544,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2254,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3011,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4582,
"predicted_SO": 2.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2254,
"delta": -0.0246,
"percent_delta": -0.0985,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3011,
"delta": 0.0511,
"percent_delta": 0.2043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4582,
"delta": 0.2082,
"percent_delta": 0.8326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4582,
"delta": 0.2082,
"percent_delta": 0.8326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2254,
"delta": -0.0246,
"percent_delta": -0.0985,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 5.0,
"delta": 0.53,
"percent_delta": 0.1186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2254,
"delta": 0.0054,
"percent_delta": 0.0245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.514,
"after": 0.0,
"delta": -0.514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.0,
"delta": -0.23,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3011,
"delta": -0.0069,
"percent_delta": -0.0224,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.708,
"after": 0.0,
"delta": -0.708,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4582,
"delta": 0.0112,
"percent_delta": 0.0251,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.458,
"after": 2.0,
"delta": 0.542,
"percent_delta": 0.3717,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.458,
"after": 2.0,
"delta": 0.542,
"percent_delta": 0.3717,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.194 | - |
| predicted_3B | 0.028 | - |
| predicted_AB | 4.470 | - |
| predicted_AVG | 0.220 | - |
| predicted_BB | 0.514 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.230 | - |
| predicted_OBP | 0.308 | - |
| predicted_R | 0.708 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.447 | - |
| predicted_SO | 1.458 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.166 | -0.028 |
| predicted_3B | 0.045 | 0.017 |
| predicted_AB | 4.318 | -0.152 |
| predicted_AVG | 0.222 | 0.002 |
| predicted_BB | 0.468 | -0.046 |
| predicted_H | 0.963 | -0.027 |
| predicted_HBP | 0.076 | - |
| predicted_HR | 0.246 | 0.016 |
| predicted_OBP | 0.307 | -0.001 |
| predicted_R | 0.714 | 0.006 |
| predicted_RBI | 0.494 | -0.006 |
| predicted_SLG | 0.463 | 0.016 |
| predicted_SO | 1.516 | 0.058 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.166 | 0.000 |
| predicted_3B | 0.045 | 0.000 |
| predicted_AB | 4.318 | 0.000 |
| predicted_AVG | 0.225 | 0.003 |
| predicted_BB | 0.468 | -0.001 |
| predicted_H | 0.973 | 0.010 |
| predicted_HBP | 0.076 | 0.000 |
| predicted_HR | 0.249 | 0.003 |
| predicted_OBP | 0.301 | -0.006 |
| predicted_R | 0.725 | 0.011 |
| predicted_RBI | 0.501 | 0.007 |
| predicted_SLG | 0.458 | -0.005 |
| predicted_SO | 1.517 | 0.002 |
AB rounded to 4 (raw=4.47), rates preserved: AVG=0.218 HR/AB=0.056
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.166 |
| predicted_3B | 0.000 | -0.045 |
| predicted_AB | 4.000 | -0.318 |
| predicted_AVG | 0.250 | 0.025 |
| predicted_BB | 0.000 | -0.468 |
| predicted_H | 1.000 | 0.027 |
| predicted_HR | 0.000 | -0.249 |
| predicted_OBP | 0.250 | -0.051 |
| predicted_R | 1.000 | 0.275 |
| predicted_RBI | 0.000 | -0.501 |
| predicted_SLG | 0.250 | -0.208 |
| predicted_SO | 1.000 | -0.517 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 5.000 | 0.000 | 1.000 | 2.000 | 2.000 | 4.000 | 1.000 | 9.000 | 0.2273 | 0.2609 | 0.5909 | 0.2273 | 0.0909 | 0.0909 | 0.0454 | 0.4091 |
| last_10 | 0.20 | 10 | - | 44.000 | 9.000 | 0.000 | 1.000 | 4.000 | 6.000 | 8.000 | 3.000 | 22.000 | 0.2045 | 0.2708 | 0.5227 | 0.2046 | 0.0909 | 0.1364 | 0.0682 | 0.5000 |
| season | 0.60 | 72 | - | 285.000 | 65.000 | 14.000 | 2.000 | 15.000 | 34.000 | 51.000 | 37.000 | 105.000 | 0.2281 | 0.3303 | 0.4491 | 0.2281 | 0.0526 | 0.1193 | 0.1298 | 0.3684 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1280 |
| predicted_3B | 0.0690 |
| predicted_AB | 4.1130 |
| predicted_AVG | 0.2255 |
| predicted_BB | 0.4060 |
| predicted_H | 0.9270 |
| predicted_HBP | 0.0760 |
| predicted_HR | 0.2680 |
| predicted_OBP | 0.3053 |
| predicted_R | 0.7230 |
| predicted_RBI | 0.4860 |
| predicted_SLG | 0.4853 |
| predicted_SO | 1.5940 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1940 | 0.1280 | 0.1659 | model_form_blend |
| predicted_3B | 0.0280 | 0.0690 | 0.0455 | model_form_blend |
| predicted_AB | 4.4700 | 4.1130 | 4.3180 | model_form_blend |
| predicted_AVG | 0.2200 | 0.2255 | 0.2223 | model_form_blend |
| predicted_BB | 0.5140 | 0.4060 | 0.4680 | model_form_blend |
| predicted_H | 0.9900 | 0.9270 | 0.9632 | model_form_blend |
| predicted_HBP | - | 0.0760 | 0.0760 | form_only |
| predicted_HR | 0.2300 | 0.2680 | 0.2462 | model_form_blend |
| predicted_OBP | 0.3080 | 0.3053 | 0.3069 | model_form_blend |
| predicted_R | 0.7080 | 0.7230 | 0.7144 | model_form_blend |
| predicted_RBI | 0.5000 | 0.4860 | 0.4940 | model_form_blend |
| predicted_SLG | 0.4470 | 0.4853 | 0.4633 | model_form_blend |
| predicted_SO | 1.4580 | 1.5940 | 1.5159 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 272 |
| Season rows before report date | 272 |
| Report year | 2026 |
| Profile rows used | 72 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.228 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_LAA@ARI |
| game_type | full |
| mlbID | 687263 |
| playerID | 687263 |
| playerName | Zach Neto |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-17 |
| sl_k_percent | 31.8 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.342 |
| sl_xwoba | 0.321 |
| sl_xba | 0.206 |
| sl_xslg | 0.418 |
| sl_sweet_spot_percent | 36.5 |
| sl_barrel_batted_rate | 12.8 |
| sl_hard_hit_percent | 37.2 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 22.1 |
| sl_whiff_percent | 31.5 |
| sl_swing_percent | 50.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.160 | 0.000 | 0.000 | Hitting_2B | 0.135 | 0.000 | -0.135 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.250 | 4.000 | 4.000 | Hitting_AB | 3.944 | 4.000 | 0.056 | 0.000 |
| predicted_AVG | 0.257 | 0.250 | 0.250 | Hitting_AVG | 0.247 | 0.000 | 0.003 | 0.250 |
| predicted_BB | 0.120 | 0.000 | 0.000 | Hitting_BB | 0.131 | 0.000 | -0.131 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.090 | 1.000 | 1.000 | Hitting_H | 0.976 | 0.000 | 0.024 | 1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.135 | 0.000 | -0.135 | 0.000 |
| predicted_OBP | 0.341 | 0.250 | 0.250 | Hitting_OBP | 0.295 | 0.000 | -0.045 | 0.250 |
| predicted_R | 0.467 | 1.000 | 1.000 | Hitting_R | 0.417 | 0.000 | 0.583 | 1.000 |
| predicted_RBI | 0.530 | 0.000 | 1.000 | Hitting_RBI | 0.556 | 0.000 | -0.556 | 0.000 |
| predicted_SLG | 0.435 | 0.250 | 0.250 | Hitting_SLG | 0.384 | 0.000 | -0.134 | 0.250 |
| predicted_SO | 0.960 | 1.000 | 1.000 | Hitting_SO | 0.984 | 1.000 | 0.016 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_R: 0.4670 -> 1.0000 (boost 0.5330, better) |
| Biggest Deboost | predicted_RBI: 0.5300 -> 0.0000 (deboost -0.5300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 6 | 1 | 6 | 1 | predicted_R: 0.4670 -> 0.5689 (boost 0.1019, better) | predicted_AB: 4.2500 -> 4.1558 (deboost -0.0942, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3468 -> 0.3031 (deboost -0.0437, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_RBI: 0.5371 -> 1.0000 (boost 0.4629, better) | predicted_2B: 0.2114 -> 0.0000 (deboost -0.2114, worse) | AB rounded to 4 (raw=4.25), rates preserved: AVG=0.274 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5774 -> 1.0000 (boost 0.4226, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4179 -> 0.2500 (deboost -0.1679, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4179 (boost 0.1679, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666176",
"player_name": "Jo Adell",
"position": "RF",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.16,
"predicted_3B": 0.0,
"predicted_AB": 4.25,
"predicted_AVG": 0.257,
"predicted_BB": 0.12,
"predicted_H": 1.09,
"predicted_HR": 0.13,
"predicted_OBP": 0.341,
"predicted_R": 0.467,
"predicted_RBI": 0.53,
"predicted_SLG": 0.435,
"predicted_SO": 0.96
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2114,
"predicted_3B": 0.0004,
"predicted_AB": 4.1558,
"predicted_AVG": 0.278,
"predicted_BB": 0.1387,
"predicted_H": 1.1511,
"predicted_HBP": 0.148,
"predicted_HR": 0.119,
"predicted_OBP": 0.3468,
"predicted_R": 0.5689,
"predicted_RBI": 0.5292,
"predicted_SLG": 0.4433,
"predicted_SO": 0.9256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.16,
"after": 0.2114,
"delta": 0.0514,
"percent_delta": 0.3212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 4.1558,
"delta": -0.0942,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.278,
"delta": 0.021,
"percent_delta": 0.0817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.12,
"after": 0.1387,
"delta": 0.0187,
"percent_delta": 0.1558,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.1511,
"delta": 0.0611,
"percent_delta": 0.0561,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.119,
"delta": -0.011,
"percent_delta": -0.0846,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3468,
"delta": 0.0058,
"percent_delta": 0.017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.467,
"after": 0.5689,
"delta": 0.1019,
"percent_delta": 0.2182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.5292,
"delta": -0.0008,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.435,
"after": 0.4433,
"delta": 0.0083,
"percent_delta": 0.0191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.96,
"after": 0.9256,
"delta": -0.0344,
"percent_delta": -0.0358,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.467,
"after": 0.5689,
"delta": 0.1019,
"percent_delta": 0.2182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.25,
"after": 4.1558,
"delta": -0.0942,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 75
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2114,
"predicted_3B": 0.0004,
"predicted_AB": 4.1558,
"predicted_AVG": 0.2799,
"predicted_BB": 0.1386,
"predicted_H": 1.1631,
"predicted_HBP": 0.148,
"predicted_HR": 0.1205,
"predicted_OBP": 0.3031,
"predicted_R": 0.5774,
"predicted_RBI": 0.5371,
"predicted_SLG": 0.4179,
"predicted_SO": 0.9265
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2114,
"after": 0.2114,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1558,
"after": 4.1558,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.278,
"after": 0.2799,
"delta": 0.0019,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1387,
"after": 0.1386,
"delta": -0.0001,
"percent_delta": -0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1511,
"after": 1.1631,
"delta": 0.012,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.148,
"after": 0.148,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.119,
"after": 0.1205,
"delta": 0.0015,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3468,
"after": 0.3031,
"delta": -0.0437,
"percent_delta": -0.126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5689,
"after": 0.5774,
"delta": 0.0085,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5292,
"after": 0.5371,
"delta": 0.0079,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4433,
"after": 0.4179,
"delta": -0.0254,
"percent_delta": -0.0573,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9256,
"after": 0.9265,
"delta": 0.0009,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3468,
"after": 0.3031,
"delta": -0.0437,
"percent_delta": -0.126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.25), rates preserved: AVG=0.274 HR/AB=0.028",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2114,
"after": 0.0,
"delta": -0.2114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1558,
"after": 4.0,
"delta": -0.1558,
"percent_delta": -0.0375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1386,
"after": 0.0,
"delta": -0.1386,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1631,
"after": 1.0,
"delta": -0.1631,
"percent_delta": -0.1402,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.148,
"after": 0.0,
"delta": -0.148,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1205,
"after": 0.0,
"delta": -0.1205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5371,
"after": 1.0,
"delta": 0.4629,
"percent_delta": 0.8619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9265,
"after": 1.0,
"delta": 0.0735,
"percent_delta": 0.0793,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5371,
"after": 1.0,
"delta": 0.4629,
"percent_delta": 0.8619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2114,
"after": 0.0,
"delta": -0.2114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5774,
"after": 1.0,
"delta": 0.4226,
"percent_delta": 0.7319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5774,
"after": 1.0,
"delta": 0.4226,
"percent_delta": 0.7319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2799,
"after": 0.25,
"delta": -0.0299,
"percent_delta": -0.1068,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3031,
"after": 0.25,
"delta": -0.0531,
"percent_delta": -0.1752,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4179,
"after": 0.25,
"delta": -0.1679,
"percent_delta": -0.4018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4179,
"after": 0.25,
"delta": -0.1679,
"percent_delta": -0.4018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2799,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3031,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4179,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2799,
"delta": 0.0299,
"percent_delta": 0.1195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3031,
"delta": 0.0531,
"percent_delta": 0.2124,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4179,
"delta": 0.1679,
"percent_delta": 0.6718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4179,
"delta": 0.1679,
"percent_delta": 0.6718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 4.0,
"delta": -0.25,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2799,
"delta": 0.0229,
"percent_delta": 0.0891,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.0,
"delta": -0.09,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3031,
"delta": -0.0379,
"percent_delta": -0.1111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.467,
"after": 1.0,
"delta": 0.533,
"percent_delta": 1.1413,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.435,
"after": 0.4179,
"delta": -0.0171,
"percent_delta": -0.0393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.96,
"after": 1.0,
"delta": 0.04,
"percent_delta": 0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.467,
"after": 1.0,
"delta": 0.533,
"percent_delta": 1.1413,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.160 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.250 | - |
| predicted_AVG | 0.257 | - |
| predicted_BB | 0.120 | - |
| predicted_H | 1.090 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.341 | - |
| predicted_R | 0.467 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.435 | - |
| predicted_SO | 0.960 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.211 | 0.051 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.156 | -0.094 |
| predicted_AVG | 0.278 | 0.021 |
| predicted_BB | 0.139 | 0.019 |
| predicted_H | 1.151 | 0.061 |
| predicted_HBP | 0.148 | - |
| predicted_HR | 0.119 | -0.011 |
| predicted_OBP | 0.347 | 0.006 |
| predicted_R | 0.569 | 0.102 |
| predicted_RBI | 0.529 | -0.001 |
| predicted_SLG | 0.443 | 0.008 |
| predicted_SO | 0.926 | -0.034 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.211 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.156 | 0.000 |
| predicted_AVG | 0.280 | 0.002 |
| predicted_BB | 0.139 | -0.000 |
| predicted_H | 1.163 | 0.012 |
| predicted_HBP | 0.148 | 0.000 |
| predicted_HR | 0.120 | 0.002 |
| predicted_OBP | 0.303 | -0.044 |
| predicted_R | 0.577 | 0.009 |
| predicted_RBI | 0.537 | 0.008 |
| predicted_SLG | 0.418 | -0.025 |
| predicted_SO | 0.926 | 0.001 |
AB rounded to 4 (raw=4.25), rates preserved: AVG=0.274 HR/AB=0.028
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.211 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.156 |
| predicted_AVG | 0.250 | -0.030 |
| predicted_BB | 0.000 | -0.139 |
| predicted_H | 1.000 | -0.163 |
| predicted_HR | 0.000 | -0.120 |
| predicted_OBP | 0.250 | -0.053 |
| predicted_R | 1.000 | 0.423 |
| predicted_RBI | 1.000 | 0.463 |
| predicted_SLG | 0.250 | -0.168 |
| predicted_SO | 1.000 | 0.074 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 9.000 | 3.000 | 0.000 | 0.000 | 2.000 | 5.000 | 1.000 | 3.000 | 0.4286 | 0.4783 | 0.5714 | 0.4286 | 0.0000 | 0.0952 | 0.0476 | 0.1429 |
| last_10 | 0.20 | 10 | - | 43.000 | 16.000 | 4.000 | 0.000 | 1.000 | 6.000 | 13.000 | 2.000 | 9.000 | 0.3721 | 0.4255 | 0.5349 | 0.3721 | 0.0233 | 0.1395 | 0.0465 | 0.2093 |
| season | 0.60 | 75 | - | 293.000 | 74.000 | 12.000 | 0.000 | 10.000 | 41.000 | 35.000 | 9.000 | 72.000 | 0.2526 | 0.2962 | 0.3959 | 0.2526 | 0.0341 | 0.1399 | 0.0307 | 0.2457 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2810 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.0280 |
| predicted_AVG | 0.3064 |
| predicted_BB | 0.1640 |
| predicted_H | 1.2340 |
| predicted_HBP | 0.1480 |
| predicted_HR | 0.1040 |
| predicted_OBP | 0.3546 |
| predicted_R | 0.7070 |
| predicted_RBI | 0.5280 |
| predicted_SLG | 0.4545 |
| predicted_SO | 0.8790 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1600 | 0.2810 | 0.2114 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2500 | 4.0280 | 4.1558 | model_form_blend |
| predicted_AVG | 0.2570 | 0.3064 | 0.2780 | model_form_blend |
| predicted_BB | 0.1200 | 0.1640 | 0.1387 | model_form_blend |
| predicted_H | 1.0900 | 1.2340 | 1.1511 | model_form_blend |
| predicted_HBP | - | 0.1480 | 0.1480 | form_only |
| predicted_HR | 0.1300 | 0.1040 | 0.1190 | model_form_blend |
| predicted_OBP | 0.3410 | 0.3546 | 0.3468 | model_form_blend |
| predicted_R | 0.4670 | 0.7070 | 0.5689 | model_form_blend |
| predicted_RBI | 0.5300 | 0.5280 | 0.5292 | model_form_blend |
| predicted_SLG | 0.4350 | 0.4545 | 0.4433 | model_form_blend |
| predicted_SO | 0.9600 | 0.8790 | 0.9256 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 252 |
| Season rows before report date | 252 |
| Report year | 2026 |
| Profile rows used | 75 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.253 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_LAA@ARI |
| game_type | full |
| mlbID | 666176 |
| playerID | 666176 |
| playerName | Jo Adell |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.9 |
| sl_bb_percent | 2.9 |
| sl_woba | 0.305 |
| sl_xwoba | 0.333 |
| sl_xba | 0.27 |
| sl_xslg | 0.452 |
| sl_sweet_spot_percent | 33.6 |
| sl_barrel_batted_rate | 8.6 |
| sl_hard_hit_percent | 45.5 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 17.8 |
| sl_whiff_percent | 26.1 |
| sl_swing_percent | 56.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.165 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.366 | 4.000 | 3.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.251 | 0.500 | 0.333 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.361 | 0.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.845 | 2.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.110 | 1.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.323 | 0.500 | 0.333 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.461 | 1.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.432 | 2.000 | 0.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.409 | 1.250 | 0.333 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.879 | 0.000 | 1.000 | Hitting_SO | - | - | - | - |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 8 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 3 |
| Better Metrics | 6 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_RBI: 0.4320 -> 2.0000 (boost 1.5680, better) |
| Biggest Deboost | predicted_SO: 0.8790 -> 0.0000 (deboost -0.8790, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.3660 -> 3.4446 (boost 0.0786, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.8734 -> 1.0000 (boost 0.1266, better) | predicted_RBI: 0.4507 -> 0.0000 (deboost -0.4507, worse) | AB rounded to 3 (raw=3.44), rates preserved: AVG=0.254 HR/AB=0.033 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4743 -> 0.0000 (deboost -0.4743, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2536 -> 0.3330 (boost 0.0794, better) | predicted_SLG: 0.4129 -> 0.3330 (deboost -0.0799, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 5 | 1 | 6 | 0 | predicted_RBI: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4129 (boost 0.0799, better) | predicted_AVG: 0.3330 -> 0.2536 (deboost -0.0794, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695681",
"player_name": "Christian Moore",
"position": "LF",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.165,
"predicted_3B": 0.018,
"predicted_AB": 3.366,
"predicted_AVG": 0.251,
"predicted_BB": 0.361,
"predicted_H": 0.845,
"predicted_HR": 0.11,
"predicted_OBP": 0.323,
"predicted_R": 0.461,
"predicted_RBI": 0.432,
"predicted_SLG": 0.409,
"predicted_SO": 0.879
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1688,
"predicted_3B": 0.0175,
"predicted_AB": 3.4446,
"predicted_AVG": 0.2509,
"predicted_BB": 0.3509,
"predicted_H": 0.8644,
"predicted_HBP": 0.035,
"predicted_HR": 0.1135,
"predicted_OBP": 0.3215,
"predicted_R": 0.4673,
"predicted_RBI": 0.444,
"predicted_SLG": 0.4091,
"predicted_SO": 0.8747
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.1688,
"delta": 0.0038,
"percent_delta": 0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0175,
"delta": -0.0005,
"percent_delta": -0.0278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.366,
"after": 3.4446,
"delta": 0.0786,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2509,
"delta": -0.0001,
"percent_delta": -0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.361,
"after": 0.3509,
"delta": -0.0101,
"percent_delta": -0.028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.845,
"after": 0.8644,
"delta": 0.0194,
"percent_delta": 0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1135,
"delta": 0.0035,
"percent_delta": 0.0318,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3215,
"delta": -0.0015,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 0.4673,
"delta": 0.0063,
"percent_delta": 0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.432,
"after": 0.444,
"delta": 0.012,
"percent_delta": 0.0278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.409,
"after": 0.4091,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.879,
"after": 0.8747,
"delta": -0.0043,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.366,
"after": 3.4446,
"delta": 0.0786,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 0,
"last_10": 0,
"season": 0
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1688,
"predicted_3B": 0.0175,
"predicted_AB": 3.4446,
"predicted_AVG": 0.2536,
"predicted_BB": 0.3505,
"predicted_H": 0.8734,
"predicted_HBP": 0.035,
"predicted_HR": 0.115,
"predicted_OBP": 0.3225,
"predicted_R": 0.4743,
"predicted_RBI": 0.4507,
"predicted_SLG": 0.4129,
"predicted_SO": 0.8756
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1688,
"after": 0.1688,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0175,
"after": 0.0175,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4446,
"after": 3.4446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2509,
"after": 0.2536,
"delta": 0.0027,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3509,
"after": 0.3505,
"delta": -0.0004,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8644,
"after": 0.8734,
"delta": 0.009,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.035,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1135,
"after": 0.115,
"delta": 0.0015,
"percent_delta": 0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3215,
"after": 0.3225,
"delta": 0.001,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4673,
"after": 0.4743,
"delta": 0.007,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.444,
"after": 0.4507,
"delta": 0.0067,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4091,
"after": 0.4129,
"delta": 0.0038,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8747,
"after": 0.8756,
"delta": 0.0009,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.44), rates preserved: AVG=0.254 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1688,
"after": 0.0,
"delta": -0.1688,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0175,
"after": 0.0,
"delta": -0.0175,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4446,
"after": 3.0,
"delta": -0.4446,
"percent_delta": -0.1291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3505,
"after": 0.0,
"delta": -0.3505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8734,
"after": 1.0,
"delta": 0.1266,
"percent_delta": 0.145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.035,
"after": 0.0,
"delta": -0.035,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.115,
"after": 0.0,
"delta": -0.115,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4507,
"after": 0.0,
"delta": -0.4507,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8756,
"after": 1.0,
"delta": 0.1244,
"percent_delta": 0.1421,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8734,
"after": 1.0,
"delta": 0.1266,
"percent_delta": 0.145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4507,
"after": 0.0,
"delta": -0.4507,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4743,
"after": 0.0,
"delta": -0.4743,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4743,
"after": 0.0,
"delta": -0.4743,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2536,
"after": 0.333,
"delta": 0.0794,
"percent_delta": 0.3131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3225,
"after": 0.333,
"delta": 0.0105,
"percent_delta": 0.0326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4129,
"after": 0.333,
"delta": -0.0799,
"percent_delta": -0.1935,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2536,
"after": 0.333,
"delta": 0.0794,
"percent_delta": 0.3131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4129,
"after": 0.333,
"delta": -0.0799,
"percent_delta": -0.1935,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2536,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3225,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4129,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2536,
"delta": -0.0794,
"percent_delta": -0.2386,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3225,
"delta": -0.0105,
"percent_delta": -0.0315,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4129,
"delta": 0.0799,
"percent_delta": 0.2398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4129,
"delta": 0.0799,
"percent_delta": 0.2398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2536,
"delta": -0.0794,
"percent_delta": -0.2386,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.0,
"delta": -0.165,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.366,
"after": 4.0,
"delta": 0.634,
"percent_delta": 0.1884,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2536,
"delta": 0.0026,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.361,
"after": 0.0,
"delta": -0.361,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.845,
"after": 2.0,
"delta": 1.155,
"percent_delta": 1.3669,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 1.0,
"delta": 0.89,
"percent_delta": 8.0909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3225,
"delta": -0.0005,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 1.0,
"delta": 0.539,
"percent_delta": 1.1692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.432,
"after": 2.0,
"delta": 1.568,
"percent_delta": 3.6296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.409,
"after": 0.4129,
"delta": 0.0039,
"percent_delta": 0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.879,
"after": 0.0,
"delta": -0.879,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.432,
"after": 2.0,
"delta": 1.568,
"percent_delta": 3.6296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.879,
"after": 0.0,
"delta": -0.879,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.165 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.366 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.361 | - |
| predicted_H | 0.845 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.323 | - |
| predicted_R | 0.461 | - |
| predicted_RBI | 0.432 | - |
| predicted_SLG | 0.409 | - |
| predicted_SO | 0.879 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.169 | 0.004 |
| predicted_3B | 0.018 | -0.000 |
| predicted_AB | 3.445 | 0.079 |
| predicted_AVG | 0.251 | -0.000 |
| predicted_BB | 0.351 | -0.010 |
| predicted_H | 0.864 | 0.019 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.114 | 0.004 |
| predicted_OBP | 0.322 | -0.002 |
| predicted_R | 0.467 | 0.006 |
| predicted_RBI | 0.444 | 0.012 |
| predicted_SLG | 0.409 | 0.000 |
| predicted_SO | 0.875 | -0.004 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.169 | 0.000 |
| predicted_3B | 0.018 | 0.000 |
| predicted_AB | 3.445 | 0.000 |
| predicted_AVG | 0.254 | 0.003 |
| predicted_BB | 0.350 | -0.000 |
| predicted_H | 0.873 | 0.009 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.115 | 0.002 |
| predicted_OBP | 0.323 | 0.001 |
| predicted_R | 0.474 | 0.007 |
| predicted_RBI | 0.451 | 0.007 |
| predicted_SLG | 0.413 | 0.004 |
| predicted_SO | 0.876 | 0.001 |
AB rounded to 3 (raw=3.44), rates preserved: AVG=0.254 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.169 |
| predicted_3B | 0.000 | -0.018 |
| predicted_AB | 3.000 | -0.445 |
| predicted_AVG | 0.333 | 0.079 |
| predicted_BB | 0.000 | -0.350 |
| predicted_H | 1.000 | 0.127 |
| predicted_HR | 0.000 | -0.115 |
| predicted_OBP | 0.333 | 0.011 |
| predicted_R | 0.000 | -0.474 |
| predicted_RBI | 0.000 | -0.451 |
| predicted_SLG | 0.333 | -0.080 |
| predicted_SO | 1.000 | 0.124 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.000 | 2.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| last_10 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| season | 0.60 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| Metric | Value |
|---|---|
| predicted_2B | 0.1890 |
| predicted_3B | 0.0150 |
| predicted_AB | 3.8650 |
| predicted_AVG | 0.2505 |
| predicted_BB | 0.2970 |
| predicted_H | 0.9680 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1320 |
| predicted_OBP | 0.3134 |
| predicted_R | 0.5010 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.4098 |
| predicted_SO | 0.8520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1650 | 0.1890 | 0.1688 | model_form_blend |
| predicted_3B | 0.0180 | 0.0150 | 0.0175 | model_form_blend |
| predicted_AB | 3.3660 | 3.8650 | 3.4446 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2505 | 0.2509 | model_form_blend |
| predicted_BB | 0.3610 | 0.2970 | 0.3509 | model_form_blend |
| predicted_H | 0.8450 | 0.9680 | 0.8644 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1100 | 0.1320 | 0.1135 | model_form_blend |
| predicted_OBP | 0.3230 | 0.3134 | 0.3215 | model_form_blend |
| predicted_R | 0.4610 | 0.5010 | 0.4673 | model_form_blend |
| predicted_RBI | 0.4320 | 0.5080 | 0.4440 | model_form_blend |
| predicted_SLG | 0.4090 | 0.4098 | 0.4091 | model_form_blend |
| predicted_SO | 0.8790 | 0.8520 | 0.8747 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 0 |
| Season rows before report date | 0 |
| Report year | 2026 |
| Profile rows used | 0 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.0 |
No historical data found for this player before report date.
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.250 | 0.000 | 0.000 | Hitting_2B | 0.229 | 0.000 | -0.229 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.590 | 4.000 | 4.000 | Hitting_AB | 3.679 | 4.000 | 0.321 | 0.000 |
| predicted_AVG | 0.245 | 0.000 | 0.250 | Hitting_AVG | 0.247 | 0.000 | -0.247 | 0.000 |
| predicted_BB | 0.325 | 0.000 | 0.000 | Hitting_BB | 0.374 | 0.000 | -0.374 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.880 | 0.000 | 1.000 | Hitting_H | 0.908 | 0.000 | -0.908 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.107 | 0.000 | -0.107 | 0.000 |
| predicted_OBP | 0.320 | 0.000 | 0.250 | Hitting_OBP | 0.313 | 0.000 | -0.313 | 0.000 |
| predicted_R | 0.350 | 0.000 | 0.000 | Hitting_R | 0.359 | 0.000 | -0.359 | 0.000 |
| predicted_RBI | 0.630 | 0.000 | 1.000 | Hitting_RBI | 0.786 | 0.000 | -0.786 | 0.000 |
| predicted_SLG | 0.427 | 0.000 | 0.250 | Hitting_SLG | 0.396 | 0.000 | -0.396 | 0.000 |
| predicted_SO | 0.425 | 1.000 | 1.000 | Hitting_SO | 0.382 | 0.000 | 0.618 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.4250 -> 1.0000 (boost 0.5750, worse) |
| Biggest Deboost | predicted_H: 0.8800 -> 0.0000 (deboost -0.8800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.4270 -> 0.4334 (boost 0.0064, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3216 -> 0.3105 (deboost -0.0111, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_SO: 0.4746 -> 1.0000 (boost 0.5254, worse) | predicted_BB: 0.3142 -> 0.0000 (deboost -0.3142, worse) | AB rounded to 4 (raw=3.63), rates preserved: AVG=0.251 HR/AB=0.037 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4035 -> 0.0000 (deboost -0.4035, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4354 -> 0.2500 (deboost -0.1854, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 0 | 2 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4354 (boost 0.1854, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687093",
"player_name": "Vaughn Grissom",
"position": "1B",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.25,
"predicted_3B": 0.0,
"predicted_AB": 3.59,
"predicted_AVG": 0.245,
"predicted_BB": 0.325,
"predicted_H": 0.88,
"predicted_HR": 0.13,
"predicted_OBP": 0.32,
"predicted_R": 0.35,
"predicted_RBI": 0.63,
"predicted_SLG": 0.427,
"predicted_SO": 0.425
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2653,
"predicted_3B": 0.0008,
"predicted_AB": 3.6347,
"predicted_AVG": 0.2482,
"predicted_BB": 0.3145,
"predicted_H": 0.9026,
"predicted_HBP": 0.108,
"predicted_HR": 0.1328,
"predicted_OBP": 0.3216,
"predicted_R": 0.3975,
"predicted_RBI": 0.6743,
"predicted_SLG": 0.4334,
"predicted_SO": 0.4741
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.2653,
"delta": 0.0153,
"percent_delta": 0.0612,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.59,
"after": 3.6347,
"delta": 0.0447,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2482,
"delta": 0.0032,
"percent_delta": 0.0131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.325,
"after": 0.3145,
"delta": -0.0105,
"percent_delta": -0.0323,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.9026,
"delta": 0.0226,
"percent_delta": 0.0257,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1328,
"delta": 0.0028,
"percent_delta": 0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3216,
"delta": 0.0016,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.35,
"after": 0.3975,
"delta": 0.0475,
"percent_delta": 0.1357,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 0.6743,
"delta": 0.0443,
"percent_delta": 0.0703,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4334,
"delta": 0.0064,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.425,
"after": 0.4741,
"delta": 0.0491,
"percent_delta": 0.1155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4334,
"delta": 0.0064,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2653,
"predicted_3B": 0.0008,
"predicted_AB": 3.6347,
"predicted_AVG": 0.2509,
"predicted_BB": 0.3142,
"predicted_H": 0.912,
"predicted_HBP": 0.108,
"predicted_HR": 0.1345,
"predicted_OBP": 0.3105,
"predicted_R": 0.4035,
"predicted_RBI": 0.6844,
"predicted_SLG": 0.4354,
"predicted_SO": 0.4746
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2653,
"after": 0.2653,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6347,
"after": 3.6347,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2482,
"after": 0.2509,
"delta": 0.0027,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3145,
"after": 0.3142,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9026,
"after": 0.912,
"delta": 0.0094,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.108,
"after": 0.108,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1328,
"after": 0.1345,
"delta": 0.0017,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3216,
"after": 0.3105,
"delta": -0.0111,
"percent_delta": -0.0345,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3975,
"after": 0.4035,
"delta": 0.006,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6743,
"after": 0.6844,
"delta": 0.0101,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4334,
"after": 0.4354,
"delta": 0.002,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.4741,
"after": 0.4746,
"delta": 0.0005,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3216,
"after": 0.3105,
"delta": -0.0111,
"percent_delta": -0.0345,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.63), rates preserved: AVG=0.251 HR/AB=0.037",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2653,
"after": 0.0,
"delta": -0.2653,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6347,
"after": 4.0,
"delta": 0.3653,
"percent_delta": 0.1005,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3142,
"after": 0.0,
"delta": -0.3142,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.912,
"after": 1.0,
"delta": 0.088,
"percent_delta": 0.0965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.108,
"after": 0.0,
"delta": -0.108,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1345,
"after": 0.0,
"delta": -0.1345,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6844,
"after": 1.0,
"delta": 0.3156,
"percent_delta": 0.4611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4746,
"after": 1.0,
"delta": 0.5254,
"percent_delta": 1.107,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.4746,
"after": 1.0,
"delta": 0.5254,
"percent_delta": 1.107,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3142,
"after": 0.0,
"delta": -0.3142,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4035,
"after": 0.0,
"delta": -0.4035,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4035,
"after": 0.0,
"delta": -0.4035,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2509,
"after": 0.25,
"delta": -0.0009,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3105,
"after": 0.25,
"delta": -0.0605,
"percent_delta": -0.1948,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4354,
"after": 0.25,
"delta": -0.1854,
"percent_delta": -0.4258,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4354,
"after": 0.25,
"delta": -0.1854,
"percent_delta": -0.4258,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2509,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3105,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4354,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2509,
"delta": 0.0009,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3105,
"delta": 0.0605,
"percent_delta": 0.242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4354,
"delta": 0.1854,
"percent_delta": 0.7415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4354,
"delta": 0.1854,
"percent_delta": 0.7415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.59,
"after": 4.0,
"delta": 0.41,
"percent_delta": 0.1142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2509,
"delta": 0.0059,
"percent_delta": 0.0241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.325,
"after": 0.0,
"delta": -0.325,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3105,
"delta": -0.0095,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4354,
"delta": 0.0084,
"percent_delta": 0.0197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.425,
"after": 1.0,
"delta": 0.575,
"percent_delta": 1.3529,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.425,
"after": 1.0,
"delta": 0.575,
"percent_delta": 1.3529,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.250 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.590 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.325 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.320 | - |
| predicted_R | 0.350 | - |
| predicted_RBI | 0.630 | - |
| predicted_SLG | 0.427 | - |
| predicted_SO | 0.425 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.265 | 0.015 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.635 | 0.045 |
| predicted_AVG | 0.248 | 0.003 |
| predicted_BB | 0.315 | -0.011 |
| predicted_H | 0.903 | 0.023 |
| predicted_HBP | 0.108 | - |
| predicted_HR | 0.133 | 0.003 |
| predicted_OBP | 0.322 | 0.002 |
| predicted_R | 0.398 | 0.048 |
| predicted_RBI | 0.674 | 0.044 |
| predicted_SLG | 0.433 | 0.006 |
| predicted_SO | 0.474 | 0.049 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.265 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.635 | 0.000 |
| predicted_AVG | 0.251 | 0.003 |
| predicted_BB | 0.314 | -0.000 |
| predicted_H | 0.912 | 0.009 |
| predicted_HBP | 0.108 | 0.000 |
| predicted_HR | 0.135 | 0.002 |
| predicted_OBP | 0.310 | -0.011 |
| predicted_R | 0.404 | 0.006 |
| predicted_RBI | 0.684 | 0.010 |
| predicted_SLG | 0.435 | 0.002 |
| predicted_SO | 0.475 | 0.001 |
AB rounded to 4 (raw=3.63), rates preserved: AVG=0.251 HR/AB=0.037
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.265 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.365 |
| predicted_AVG | 0.250 | -0.001 |
| predicted_BB | 0.000 | -0.314 |
| predicted_H | 1.000 | 0.088 |
| predicted_HR | 0.000 | -0.135 |
| predicted_OBP | 0.250 | -0.060 |
| predicted_R | 0.000 | -0.404 |
| predicted_RBI | 1.000 | 0.316 |
| predicted_SLG | 0.250 | -0.185 |
| predicted_SO | 1.000 | 0.525 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 5.000 | 2.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 3.000 | 0.2500 | 0.3182 | 0.5000 | 0.2500 | 0.0500 | 0.1500 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 10 | - | 40.000 | 12.000 | 4.000 | 0.000 | 2.000 | 14.000 | 7.000 | 3.000 | 6.000 | 0.3000 | 0.3696 | 0.5500 | 0.3000 | 0.0500 | 0.3500 | 0.0750 | 0.1500 |
| season | 0.60 | 40 | - | 138.000 | 33.000 | 10.000 | 0.000 | 4.000 | 26.000 | 14.000 | 13.000 | 17.000 | 0.2391 | 0.3141 | 0.3986 | 0.2391 | 0.0290 | 0.1884 | 0.0942 | 0.1232 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2880 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.7010 |
| predicted_AVG | 0.2530 |
| predicted_BB | 0.2990 |
| predicted_H | 0.9360 |
| predicted_HBP | 0.1080 |
| predicted_HR | 0.1370 |
| predicted_OBP | 0.3240 |
| predicted_R | 0.4680 |
| predicted_RBI | 0.7400 |
| predicted_SLG | 0.4428 |
| predicted_SO | 0.5470 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.2880 | 0.2653 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.5900 | 3.7010 | 3.6347 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2530 | 0.2482 | model_form_blend |
| predicted_BB | 0.3250 | 0.2990 | 0.3145 | model_form_blend |
| predicted_H | 0.8800 | 0.9360 | 0.9026 | model_form_blend |
| predicted_HBP | - | 0.1080 | 0.1080 | form_only |
| predicted_HR | 0.1300 | 0.1370 | 0.1328 | model_form_blend |
| predicted_OBP | 0.3200 | 0.3240 | 0.3216 | model_form_blend |
| predicted_R | 0.3500 | 0.4680 | 0.3975 | model_form_blend |
| predicted_RBI | 0.6300 | 0.7400 | 0.6743 | model_form_blend |
| predicted_SLG | 0.4270 | 0.4428 | 0.4334 | model_form_blend |
| predicted_SO | 0.4250 | 0.5470 | 0.4741 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 131 |
| Season rows before report date | 131 |
| Report year | 2026 |
| Profile rows used | 40 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.239 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_LAA@ARI |
| game_type | full |
| mlbID | 687093 |
| playerID | 687093 |
| playerName | Vaughn Grissom |
| pos | 2B |
| started | True |
| startingPosition | 1B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-17 |
| sl_k_percent | 10.7 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.316 |
| sl_xwoba | 0.344 |
| sl_xba | 0.261 |
| sl_xslg | 0.435 |
| sl_sweet_spot_percent | 32.3 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 45.2 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 13.4 |
| sl_whiff_percent | 19.4 |
| sl_swing_percent | 45.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.077 | 0.000 | 0.000 | Hitting_2B | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.250 | 2.000 | 3.000 | Hitting_AB | 2.929 | 5.000 | -0.929 | -3.000 |
| predicted_AVG | 0.259 | 0.000 | 0.333 | Hitting_AVG | 0.293 | 0.000 | -0.293 | 0.000 |
| predicted_BB | 0.462 | 1.000 | 0.000 | Hitting_BB | 0.429 | 0.000 | 0.571 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_H | 0.840 | 0.000 | 1.000 | Hitting_H | 0.857 | 0.000 | -0.857 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.342 | 0.500 | 0.333 | Hitting_OBP | 0.396 | 0.000 | 0.104 | 0.500 |
| predicted_R | 0.538 | 0.000 | 1.000 | Hitting_R | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_SLG | 0.357 | 0.000 | 0.333 | Hitting_SLG | 0.317 | 0.000 | -0.317 | 0.000 |
| predicted_SO | 0.231 | 0.000 | 0.000 | Hitting_SO | 0.214 | 1.000 | -0.214 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.4620 -> 1.0000 (boost 0.5380, better) |
| Biggest Deboost | predicted_AB: 3.2500 -> 2.0000 (deboost -1.2500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 1 | 1 | predicted_AB: 3.2500 -> 3.3310 (boost 0.0810, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_OBP: 0.3462 -> 0.3536 (boost 0.0074, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.8837 -> 1.0000 (boost 0.1163, better) | predicted_BB: 0.4551 -> 0.0000 (deboost -0.4551, worse) | AB rounded to 3 (raw=3.33), rates preserved: AVG=0.265 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5533 -> 1.0000 (boost 0.4467, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2653 -> 0.3330 (boost 0.0677, better) | predicted_OBP: 0.3536 -> 0.3330 (deboost -0.0206, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 2 | 3 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 3.0000 -> 2.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3330 -> 0.3536 (boost 0.0206, better) | predicted_AVG: 0.3330 -> 0.2653 (deboost -0.0677, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663611",
"player_name": "Nick Madrigal",
"position": "2B",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.077,
"predicted_3B": 0.0,
"predicted_AB": 3.25,
"predicted_AVG": 0.259,
"predicted_BB": 0.462,
"predicted_H": 0.84,
"predicted_HR": 0.07,
"predicted_OBP": 0.342,
"predicted_R": 0.538,
"predicted_RBI": 0.33,
"predicted_SLG": 0.357,
"predicted_SO": 0.231
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0884,
"predicted_3B": 0.0017,
"predicted_AB": 3.331,
"predicted_AVG": 0.2627,
"predicted_BB": 0.4556,
"predicted_H": 0.8746,
"predicted_HBP": 0.012,
"predicted_HR": 0.0623,
"predicted_OBP": 0.3462,
"predicted_R": 0.5451,
"predicted_RBI": 0.3169,
"predicted_SLG": 0.3529,
"predicted_SO": 0.3026
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.077,
"after": 0.0884,
"delta": 0.0114,
"percent_delta": 0.1481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0017,
"delta": 0.0017,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.25,
"after": 3.331,
"delta": 0.081,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2627,
"delta": 0.0037,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 0.4556,
"delta": -0.0064,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.8746,
"delta": 0.0346,
"percent_delta": 0.0412,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0623,
"delta": -0.0077,
"percent_delta": -0.11,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3462,
"delta": 0.0042,
"percent_delta": 0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.538,
"after": 0.5451,
"delta": 0.0071,
"percent_delta": 0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.3169,
"delta": -0.0131,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3529,
"delta": -0.0041,
"percent_delta": -0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.231,
"after": 0.3026,
"delta": 0.0716,
"percent_delta": 0.31,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.25,
"after": 3.331,
"delta": 0.081,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 13
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0884,
"predicted_3B": 0.0017,
"predicted_AB": 3.331,
"predicted_AVG": 0.2653,
"predicted_BB": 0.4551,
"predicted_H": 0.8837,
"predicted_HBP": 0.012,
"predicted_HR": 0.0631,
"predicted_OBP": 0.3536,
"predicted_R": 0.5533,
"predicted_RBI": 0.3217,
"predicted_SLG": 0.3497,
"predicted_SO": 0.3029
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0884,
"after": 0.0884,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0017,
"after": 0.0017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.331,
"after": 3.331,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2627,
"after": 0.2653,
"delta": 0.0026,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4556,
"after": 0.4551,
"delta": -0.0005,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8746,
"after": 0.8837,
"delta": 0.0091,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.012,
"after": 0.012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0623,
"after": 0.0631,
"delta": 0.0008,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3462,
"after": 0.3536,
"delta": 0.0074,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5451,
"after": 0.5533,
"delta": 0.0082,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3169,
"after": 0.3217,
"delta": 0.0048,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3529,
"after": 0.3497,
"delta": -0.0032,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.3026,
"after": 0.3029,
"delta": 0.0003,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3462,
"after": 0.3536,
"delta": 0.0074,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.33), rates preserved: AVG=0.265 HR/AB=0.019",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0884,
"after": 0.0,
"delta": -0.0884,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0017,
"after": 0.0,
"delta": -0.0017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.331,
"after": 3.0,
"delta": -0.331,
"percent_delta": -0.0994,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4551,
"after": 0.0,
"delta": -0.4551,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8837,
"after": 1.0,
"delta": 0.1163,
"percent_delta": 0.1316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.012,
"after": 0.0,
"delta": -0.012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0631,
"after": 0.0,
"delta": -0.0631,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3217,
"after": 0.0,
"delta": -0.3217,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3029,
"after": 0.0,
"delta": -0.3029,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8837,
"after": 1.0,
"delta": 0.1163,
"percent_delta": 0.1316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4551,
"after": 0.0,
"delta": -0.4551,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5533,
"after": 1.0,
"delta": 0.4467,
"percent_delta": 0.8073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5533,
"after": 1.0,
"delta": 0.4467,
"percent_delta": 0.8073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2653,
"after": 0.333,
"delta": 0.0677,
"percent_delta": 0.2552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3536,
"after": 0.333,
"delta": -0.0206,
"percent_delta": -0.0583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3497,
"after": 0.333,
"delta": -0.0167,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2653,
"after": 0.333,
"delta": 0.0677,
"percent_delta": 0.2552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3536,
"after": 0.333,
"delta": -0.0206,
"percent_delta": -0.0583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_AVG": 0.2653,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3536,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3497,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2653,
"delta": -0.0677,
"percent_delta": -0.2033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3536,
"delta": 0.0206,
"percent_delta": 0.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3497,
"delta": 0.0167,
"percent_delta": 0.0501,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3536,
"delta": 0.0206,
"percent_delta": 0.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2653,
"delta": -0.0677,
"percent_delta": -0.2033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.077,
"after": 0.0,
"delta": -0.077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.25,
"after": 2.0,
"delta": -1.25,
"percent_delta": -0.3846,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2653,
"delta": 0.0063,
"percent_delta": 0.0243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.462,
"after": 1.0,
"delta": 0.538,
"percent_delta": 1.1645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.0,
"delta": -0.84,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3536,
"delta": 0.0116,
"percent_delta": 0.0339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.538,
"after": 0.0,
"delta": -0.538,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3497,
"delta": -0.0073,
"percent_delta": -0.0204,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.231,
"after": 0.0,
"delta": -0.231,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.462,
"after": 1.0,
"delta": 0.538,
"percent_delta": 1.1645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.25,
"after": 2.0,
"delta": -1.25,
"percent_delta": -0.3846,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.077 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.250 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.462 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.342 | - |
| predicted_R | 0.538 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.357 | - |
| predicted_SO | 0.231 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.088 | 0.011 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.331 | 0.081 |
| predicted_AVG | 0.263 | 0.004 |
| predicted_BB | 0.456 | -0.006 |
| predicted_H | 0.875 | 0.035 |
| predicted_HBP | 0.012 | - |
| predicted_HR | 0.062 | -0.008 |
| predicted_OBP | 0.346 | 0.004 |
| predicted_R | 0.545 | 0.007 |
| predicted_RBI | 0.317 | -0.013 |
| predicted_SLG | 0.353 | -0.004 |
| predicted_SO | 0.303 | 0.072 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.088 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.331 | 0.000 |
| predicted_AVG | 0.265 | 0.003 |
| predicted_BB | 0.455 | -0.001 |
| predicted_H | 0.884 | 0.009 |
| predicted_HBP | 0.012 | 0.000 |
| predicted_HR | 0.063 | 0.001 |
| predicted_OBP | 0.354 | 0.007 |
| predicted_R | 0.553 | 0.008 |
| predicted_RBI | 0.322 | 0.005 |
| predicted_SLG | 0.350 | -0.003 |
| predicted_SO | 0.303 | 0.000 |
AB rounded to 3 (raw=3.33), rates preserved: AVG=0.265 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.088 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.331 |
| predicted_AVG | 0.333 | 0.068 |
| predicted_BB | 0.000 | -0.455 |
| predicted_H | 1.000 | 0.116 |
| predicted_HR | 0.000 | -0.063 |
| predicted_OBP | 0.333 | -0.021 |
| predicted_R | 1.000 | 0.447 |
| predicted_RBI | 0.000 | -0.322 |
| predicted_SLG | 0.333 | -0.017 |
| predicted_SO | 0.000 | -0.303 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 2.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 0.2222 | 0.3333 | 0.2222 | 0.2222 | 0.0000 | 0.0556 | 0.1667 | 0.0556 |
| last_10 | 0.20 | 10 | - | 32.000 | 10.000 | 1.000 | 0.000 | 0.000 | 2.000 | 7.000 | 6.000 | 2.000 | 0.3125 | 0.4211 | 0.3438 | 0.3125 | 0.0000 | 0.0625 | 0.1875 | 0.0625 |
| season | 0.60 | 13 | - | 41.000 | 12.000 | 1.000 | 0.000 | 0.000 | 2.000 | 7.000 | 6.000 | 3.000 | 0.2927 | 0.3830 | 0.3171 | 0.2927 | 0.0000 | 0.0488 | 0.1463 | 0.0732 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1110 |
| predicted_3B | 0.0050 |
| predicted_AB | 3.4910 |
| predicted_AVG | 0.2701 |
| predicted_BB | 0.4430 |
| predicted_H | 0.9430 |
| predicted_HBP | 0.0120 |
| predicted_HR | 0.0470 |
| predicted_OBP | 0.3545 |
| predicted_R | 0.5590 |
| predicted_RBI | 0.2910 |
| predicted_SLG | 0.3449 |
| predicted_SO | 0.4440 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0770 | 0.1110 | 0.0884 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0017 | model_form_blend |
| predicted_AB | 3.2500 | 3.4910 | 3.3310 | model_form_blend |
| predicted_AVG | 0.2590 | 0.2701 | 0.2627 | model_form_blend |
| predicted_BB | 0.4620 | 0.4430 | 0.4556 | model_form_blend |
| predicted_H | 0.8400 | 0.9430 | 0.8746 | model_form_blend |
| predicted_HBP | - | 0.0120 | 0.0120 | form_only |
| predicted_HR | 0.0700 | 0.0470 | 0.0623 | model_form_blend |
| predicted_OBP | 0.3420 | 0.3545 | 0.3462 | model_form_blend |
| predicted_R | 0.5380 | 0.5590 | 0.5451 | model_form_blend |
| predicted_RBI | 0.3300 | 0.2910 | 0.3169 | model_form_blend |
| predicted_SLG | 0.3570 | 0.3449 | 0.3529 | model_form_blend |
| predicted_SO | 0.2310 | 0.4440 | 0.3026 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 13 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 2 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.293 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260616_LAA@ARI |
| game_type | full |
| mlbID | 663611 |
| playerID | 663611 |
| playerName | Nick Madrigal |
| pos | 3B |
| started | True |
| startingPosition | 2B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-16 |
| sl_k_percent | 6.3 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.334 |
| sl_xwoba | 0.292 |
| sl_xba | 0.231 |
| sl_xslg | 0.281 |
| sl_sweet_spot_percent | 28.9 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 26.3 |
| sl_exit_velocity_avg | 88.7 |
| sl_launch_angle_avg | 9.8 |
| sl_whiff_percent | 9.5 |
| sl_swing_percent | 51.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.141 | 0.000 | 0.000 | Hitting_2B | 0.135 | 0.000 | -0.135 | 0.000 |
| predicted_3B | 0.031 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.312 | 3.000 | 3.000 | Hitting_AB | 3.399 | 4.000 | -0.399 | -1.000 |
| predicted_AVG | 0.241 | 0.000 | 0.333 | Hitting_AVG | 0.276 | 0.250 | -0.276 | -0.250 |
| predicted_BB | 0.125 | 1.000 | 0.000 | Hitting_BB | 0.185 | 0.000 | 0.815 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.790 | 0.000 | 1.000 | Hitting_H | 0.938 | 1.000 | -0.938 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.152 | 0.000 | -0.152 | 0.000 |
| predicted_OBP | 0.275 | 0.250 | 0.333 | Hitting_OBP | 0.343 | 0.250 | -0.093 | 0.000 |
| predicted_R | 0.312 | 0.000 | 0.000 | Hitting_R | 0.371 | 0.000 | -0.371 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 0.000 | Hitting_RBI | 0.388 | 0.000 | -0.388 | 0.000 |
| predicted_SLG | 0.372 | 0.000 | 0.333 | Hitting_SLG | 0.460 | 0.250 | -0.460 | -0.250 |
| predicted_SO | 0.938 | 1.000 | 1.000 | Hitting_SO | 0.961 | 1.000 | 0.039 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.1250 -> 1.0000 (boost 0.8750, better) |
| Biggest Deboost | predicted_H: 0.7900 -> 0.0000 (deboost -0.7900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 0 | 4 | predicted_SO: 0.9380 -> 1.0320 (boost 0.0940, worse) | predicted_OBP: 0.2750 -> 0.2687 (deboost -0.0063, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3659 -> 0.3801 (boost 0.0142, better) | predicted_OBP: 0.2687 -> 0.2617 (deboost -0.0070, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 1 | 6 | predicted_H: 0.7949 -> 1.0000 (boost 0.2051, better) | predicted_AB: 3.3594 -> 3.0000 (deboost -0.3594, worse) | AB rounded to 3 (raw=3.36), rates preserved: AVG=0.237 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3015 -> 0.0000 (deboost -0.3015, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2366 -> 0.3330 (boost 0.0964, better) | predicted_SLG: 0.3801 -> 0.3330 (deboost -0.0471, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3801 (boost 0.0471, better) | predicted_AVG: 0.3330 -> 0.2366 (deboost -0.0964, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672724",
"player_name": "Oswald Peraza",
"position": "DH",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.141,
"predicted_3B": 0.031,
"predicted_AB": 3.312,
"predicted_AVG": 0.241,
"predicted_BB": 0.125,
"predicted_H": 0.79,
"predicted_HR": 0.1,
"predicted_OBP": 0.275,
"predicted_R": 0.312,
"predicted_RBI": 0.35,
"predicted_SLG": 0.372,
"predicted_SO": 0.938
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1447,
"predicted_3B": 0.0331,
"predicted_AB": 3.3594,
"predicted_AVG": 0.2357,
"predicted_BB": 0.1142,
"predicted_H": 0.7867,
"predicted_HBP": 0.055,
"predicted_HR": 0.0892,
"predicted_OBP": 0.2687,
"predicted_R": 0.297,
"predicted_RBI": 0.33,
"predicted_SLG": 0.3659,
"predicted_SO": 1.032
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.141,
"after": 0.1447,
"delta": 0.0037,
"percent_delta": 0.0262,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0331,
"delta": 0.0021,
"percent_delta": 0.0677,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.312,
"after": 3.3594,
"delta": 0.0474,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2357,
"delta": -0.0053,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.125,
"after": 0.1142,
"delta": -0.0108,
"percent_delta": -0.0864,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.7867,
"delta": -0.0033,
"percent_delta": -0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0892,
"delta": -0.0108,
"percent_delta": -0.108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.275,
"after": 0.2687,
"delta": -0.0063,
"percent_delta": -0.0229,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.312,
"after": 0.297,
"delta": -0.015,
"percent_delta": -0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.33,
"delta": -0.02,
"percent_delta": -0.0571,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3659,
"delta": -0.0061,
"percent_delta": -0.0164,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.938,
"after": 1.032,
"delta": 0.094,
"percent_delta": 0.1002,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.938,
"after": 1.032,
"delta": 0.094,
"percent_delta": 0.1002,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.275,
"after": 0.2687,
"delta": -0.0063,
"percent_delta": -0.0229,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 64
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1447,
"predicted_3B": 0.0331,
"predicted_AB": 3.3594,
"predicted_AVG": 0.2366,
"predicted_BB": 0.1141,
"predicted_H": 0.7949,
"predicted_HBP": 0.055,
"predicted_HR": 0.0904,
"predicted_OBP": 0.2617,
"predicted_R": 0.3015,
"predicted_RBI": 0.3349,
"predicted_SLG": 0.3801,
"predicted_SO": 1.033
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1447,
"after": 0.1447,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0331,
"after": 0.0331,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3594,
"after": 3.3594,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2357,
"after": 0.2366,
"delta": 0.0009,
"percent_delta": 0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1142,
"after": 0.1141,
"delta": -0.0001,
"percent_delta": -0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7867,
"after": 0.7949,
"delta": 0.0082,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.055,
"after": 0.055,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0892,
"after": 0.0904,
"delta": 0.0012,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2687,
"after": 0.2617,
"delta": -0.007,
"percent_delta": -0.0261,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.297,
"after": 0.3015,
"delta": 0.0045,
"percent_delta": 0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.3349,
"delta": 0.0049,
"percent_delta": 0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3659,
"after": 0.3801,
"delta": 0.0142,
"percent_delta": 0.0388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.032,
"after": 1.033,
"delta": 0.001,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3659,
"after": 0.3801,
"delta": 0.0142,
"percent_delta": 0.0388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2687,
"after": 0.2617,
"delta": -0.007,
"percent_delta": -0.0261,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.36), rates preserved: AVG=0.237 HR/AB=0.027",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1447,
"after": 0.0,
"delta": -0.1447,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0331,
"after": 0.0,
"delta": -0.0331,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3594,
"after": 3.0,
"delta": -0.3594,
"percent_delta": -0.107,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1141,
"after": 0.0,
"delta": -0.1141,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7949,
"after": 1.0,
"delta": 0.2051,
"percent_delta": 0.258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.055,
"after": 0.0,
"delta": -0.055,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0904,
"after": 0.0,
"delta": -0.0904,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3349,
"after": 0.0,
"delta": -0.3349,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.033,
"after": 1.0,
"delta": -0.033,
"percent_delta": -0.0319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7949,
"after": 1.0,
"delta": 0.2051,
"percent_delta": 0.258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.3594,
"after": 3.0,
"delta": -0.3594,
"percent_delta": -0.107,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3015,
"after": 0.0,
"delta": -0.3015,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3015,
"after": 0.0,
"delta": -0.3015,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2366,
"after": 0.333,
"delta": 0.0964,
"percent_delta": 0.4074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2617,
"after": 0.333,
"delta": 0.0713,
"percent_delta": 0.2724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3801,
"after": 0.333,
"delta": -0.0471,
"percent_delta": -0.1239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2366,
"after": 0.333,
"delta": 0.0964,
"percent_delta": 0.4074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3801,
"after": 0.333,
"delta": -0.0471,
"percent_delta": -0.1239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2366,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2617,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3801,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2366,
"delta": -0.0964,
"percent_delta": -0.2894,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2617,
"delta": -0.0713,
"percent_delta": -0.2142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3801,
"delta": 0.0471,
"percent_delta": 0.1414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3801,
"delta": 0.0471,
"percent_delta": 0.1414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2366,
"delta": -0.0964,
"percent_delta": -0.2894,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.141,
"after": 0.0,
"delta": -0.141,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0,
"delta": -0.031,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.312,
"after": 3.0,
"delta": -0.312,
"percent_delta": -0.0942,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2366,
"delta": -0.0044,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.125,
"after": 1.0,
"delta": 0.875,
"percent_delta": 7.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.275,
"after": 0.2617,
"delta": -0.0133,
"percent_delta": -0.0484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.312,
"after": 0.0,
"delta": -0.312,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3801,
"delta": 0.0081,
"percent_delta": 0.0218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.938,
"after": 1.0,
"delta": 0.062,
"percent_delta": 0.0661,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.125,
"after": 1.0,
"delta": 0.875,
"percent_delta": 7.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | - |
| predicted_3B | 0.031 | - |
| predicted_AB | 3.312 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.125 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.275 | - |
| predicted_R | 0.312 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 0.938 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.145 | 0.004 |
| predicted_3B | 0.033 | 0.002 |
| predicted_AB | 3.359 | 0.047 |
| predicted_AVG | 0.236 | -0.005 |
| predicted_BB | 0.114 | -0.011 |
| predicted_H | 0.787 | -0.003 |
| predicted_HBP | 0.055 | - |
| predicted_HR | 0.089 | -0.011 |
| predicted_OBP | 0.269 | -0.006 |
| predicted_R | 0.297 | -0.015 |
| predicted_RBI | 0.330 | -0.020 |
| predicted_SLG | 0.366 | -0.006 |
| predicted_SO | 1.032 | 0.094 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.145 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 3.359 | 0.000 |
| predicted_AVG | 0.237 | 0.001 |
| predicted_BB | 0.114 | -0.000 |
| predicted_H | 0.795 | 0.008 |
| predicted_HBP | 0.055 | 0.000 |
| predicted_HR | 0.090 | 0.001 |
| predicted_OBP | 0.262 | -0.007 |
| predicted_R | 0.301 | 0.005 |
| predicted_RBI | 0.335 | 0.005 |
| predicted_SLG | 0.380 | 0.014 |
| predicted_SO | 1.033 | 0.001 |
AB rounded to 3 (raw=3.36), rates preserved: AVG=0.237 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.145 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 3.000 | -0.359 |
| predicted_AVG | 0.333 | 0.096 |
| predicted_BB | 0.000 | -0.114 |
| predicted_H | 1.000 | 0.205 |
| predicted_HR | 0.000 | -0.090 |
| predicted_OBP | 0.333 | 0.071 |
| predicted_R | 0.000 | -0.301 |
| predicted_RBI | 0.000 | -0.335 |
| predicted_SLG | 0.333 | -0.047 |
| predicted_SO | 1.000 | -0.033 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 9.000 | 0.1765 | 0.1765 | 0.2353 | 0.1765 | 0.0000 | 0.0000 | 0.0000 | 0.5294 |
| last_10 | 0.20 | 10 | - | 35.000 | 6.000 | 1.000 | 1.000 | 0.000 | 4.000 | 1.000 | 0.000 | 14.000 | 0.1714 | 0.1714 | 0.2571 | 0.1714 | 0.0000 | 0.1143 | 0.0000 | 0.4000 |
| season | 0.60 | 64 | - | 212.000 | 55.000 | 9.000 | 2.000 | 7.000 | 21.000 | 20.000 | 8.000 | 60.000 | 0.2594 | 0.3053 | 0.4198 | 0.2594 | 0.0330 | 0.0991 | 0.0377 | 0.2830 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1500 |
| predicted_3B | 0.0360 |
| predicted_AB | 3.4260 |
| predicted_AVG | 0.2282 |
| predicted_BB | 0.0990 |
| predicted_H | 0.7820 |
| predicted_HBP | 0.0550 |
| predicted_HR | 0.0740 |
| predicted_OBP | 0.2599 |
| predicted_R | 0.2760 |
| predicted_RBI | 0.3020 |
| predicted_SLG | 0.3573 |
| predicted_SO | 1.1640 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1410 | 0.1500 | 0.1447 | model_form_blend |
| predicted_3B | 0.0310 | 0.0360 | 0.0331 | model_form_blend |
| predicted_AB | 3.3120 | 3.4260 | 3.3594 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2282 | 0.2357 | model_form_blend |
| predicted_BB | 0.1250 | 0.0990 | 0.1142 | model_form_blend |
| predicted_H | 0.7900 | 0.7820 | 0.7867 | model_form_blend |
| predicted_HBP | - | 0.0550 | 0.0550 | form_only |
| predicted_HR | 0.1000 | 0.0740 | 0.0892 | model_form_blend |
| predicted_OBP | 0.2750 | 0.2599 | 0.2687 | model_form_blend |
| predicted_R | 0.3120 | 0.2760 | 0.2970 | model_form_blend |
| predicted_RBI | 0.3500 | 0.3020 | 0.3300 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3573 | 0.3659 | model_form_blend |
| predicted_SO | 0.9380 | 1.1640 | 1.0320 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 178 |
| Season rows before report date | 178 |
| Report year | 2026 |
| Profile rows used | 64 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.259 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_LAA@ARI |
| game_type | full |
| mlbID | 672724 |
| playerID | 672724 |
| playerName | Oswald Peraza |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-17 |
| sl_k_percent | 26.3 |
| sl_bb_percent | 3.9 |
| sl_woba | 0.32 |
| sl_xwoba | 0.308 |
| sl_xba | 0.254 |
| sl_xslg | 0.398 |
| sl_sweet_spot_percent | 38.6 |
| sl_barrel_batted_rate | 8.6 |
| sl_hard_hit_percent | 37.3 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 10.1 |
| sl_whiff_percent | 30.5 |
| sl_swing_percent | 55.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.170 | 0.000 | 0.000 | Hitting_2B | 0.138 | 1.000 | -0.138 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.255 | 4.000 | 3.000 | Hitting_AB | 3.319 | 4.000 | 0.681 | 0.000 |
| predicted_AVG | 0.273 | 0.250 | 0.333 | Hitting_AVG | 0.234 | 0.750 | 0.016 | -0.500 |
| predicted_BB | 0.277 | 0.000 | 0.000 | Hitting_BB | 0.355 | 0.000 | -0.355 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.780 | 1.000 | 1.000 | Hitting_H | 0.775 | 3.000 | 0.225 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_OBP | 0.338 | 0.250 | 0.333 | Hitting_OBP | 0.321 | 0.750 | -0.071 | -0.500 |
| predicted_R | 0.362 | 1.000 | 0.000 | Hitting_R | 0.406 | 1.000 | 0.594 | 0.000 |
| predicted_RBI | 0.370 | 0.000 | 0.000 | Hitting_RBI | 0.377 | 0.000 | -0.377 | 0.000 |
| predicted_SLG | 0.440 | 0.250 | 0.333 | Hitting_SLG | 0.314 | 1.000 | -0.064 | -0.750 |
| predicted_SO | 0.851 | 0.000 | 1.000 | Hitting_SO | 0.819 | 1.000 | -0.819 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.2550 -> 4.0000 (boost 0.7450, better) |
| Biggest Deboost | predicted_SO: 0.8510 -> 0.0000 (deboost -0.8510, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 4 | 0 | 4 | 0 | predicted_H: 0.7800 -> 0.8852 (boost 0.1052, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4553 -> 0.4269 (deboost -0.0284, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.8331 -> 1.0000 (boost 0.1669, worse) | predicted_RBI: 0.3933 -> 0.0000 (deboost -0.3933, worse) | AB rounded to 3 (raw=3.32), rates preserved: AVG=0.269 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3736 -> 0.0000 (deboost -0.3736, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2695 -> 0.3330 (boost 0.0635, better) | predicted_SLG: 0.4269 -> 0.3330 (deboost -0.0939, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4269 (boost 0.0939, better) | predicted_AVG: 0.3330 -> 0.2695 (deboost -0.0635, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681351",
"player_name": "Logan O'Hoppe",
"position": "C",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.17,
"predicted_3B": 0.0,
"predicted_AB": 3.255,
"predicted_AVG": 0.273,
"predicted_BB": 0.277,
"predicted_H": 0.78,
"predicted_HR": 0.1,
"predicted_OBP": 0.338,
"predicted_R": 0.362,
"predicted_RBI": 0.37,
"predicted_SLG": 0.44,
"predicted_SO": 0.851
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2159,
"predicted_3B": 0.0008,
"predicted_AB": 3.3192,
"predicted_AVG": 0.2858,
"predicted_BB": 0.2404,
"predicted_H": 0.8852,
"predicted_HBP": 0.039,
"predicted_HR": 0.1004,
"predicted_OBP": 0.3428,
"predicted_R": 0.3681,
"predicted_RBI": 0.3875,
"predicted_SLG": 0.4553,
"predicted_SO": 0.8323
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.17,
"after": 0.2159,
"delta": 0.0459,
"percent_delta": 0.27,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.255,
"after": 3.3192,
"delta": 0.0642,
"percent_delta": 0.0197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2858,
"delta": 0.0128,
"percent_delta": 0.0469,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.277,
"after": 0.2404,
"delta": -0.0366,
"percent_delta": -0.1321,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.8852,
"delta": 0.1052,
"percent_delta": 0.1349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1004,
"delta": 0.0004,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3428,
"delta": 0.0048,
"percent_delta": 0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.362,
"after": 0.3681,
"delta": 0.0061,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.3875,
"delta": 0.0175,
"percent_delta": 0.0473,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.44,
"after": 0.4553,
"delta": 0.0153,
"percent_delta": 0.0348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.851,
"after": 0.8323,
"delta": -0.0187,
"percent_delta": -0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.78,
"after": 0.8852,
"delta": 0.1052,
"percent_delta": 0.1349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 47
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2159,
"predicted_3B": 0.0008,
"predicted_AB": 3.3192,
"predicted_AVG": 0.2695,
"predicted_BB": 0.2402,
"predicted_H": 0.8944,
"predicted_HBP": 0.039,
"predicted_HR": 0.1017,
"predicted_OBP": 0.3188,
"predicted_R": 0.3736,
"predicted_RBI": 0.3933,
"predicted_SLG": 0.4269,
"predicted_SO": 0.8331
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2159,
"after": 0.2159,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3192,
"after": 3.3192,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2858,
"after": 0.2695,
"delta": -0.0163,
"percent_delta": -0.057,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2404,
"after": 0.2402,
"delta": -0.0002,
"percent_delta": -0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8852,
"after": 0.8944,
"delta": 0.0092,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.039,
"after": 0.039,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1004,
"after": 0.1017,
"delta": 0.0013,
"percent_delta": 0.0129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3428,
"after": 0.3188,
"delta": -0.024,
"percent_delta": -0.07,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3681,
"after": 0.3736,
"delta": 0.0055,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3875,
"after": 0.3933,
"delta": 0.0058,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4553,
"after": 0.4269,
"delta": -0.0284,
"percent_delta": -0.0624,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8323,
"after": 0.8331,
"delta": 0.0008,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4553,
"after": 0.4269,
"delta": -0.0284,
"percent_delta": -0.0624,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.32), rates preserved: AVG=0.269 HR/AB=0.031",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2159,
"after": 0.0,
"delta": -0.2159,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3192,
"after": 3.0,
"delta": -0.3192,
"percent_delta": -0.0962,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2402,
"after": 0.0,
"delta": -0.2402,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8944,
"after": 1.0,
"delta": 0.1056,
"percent_delta": 0.1181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.039,
"after": 0.0,
"delta": -0.039,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1017,
"after": 0.0,
"delta": -0.1017,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3933,
"after": 0.0,
"delta": -0.3933,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8331,
"after": 1.0,
"delta": 0.1669,
"percent_delta": 0.2003,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8331,
"after": 1.0,
"delta": 0.1669,
"percent_delta": 0.2003,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3933,
"after": 0.0,
"delta": -0.3933,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3736,
"after": 0.0,
"delta": -0.3736,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3736,
"after": 0.0,
"delta": -0.3736,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2695,
"after": 0.333,
"delta": 0.0635,
"percent_delta": 0.2356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3188,
"after": 0.333,
"delta": 0.0142,
"percent_delta": 0.0445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4269,
"after": 0.333,
"delta": -0.0939,
"percent_delta": -0.22,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2695,
"after": 0.333,
"delta": 0.0635,
"percent_delta": 0.2356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4269,
"after": 0.333,
"delta": -0.0939,
"percent_delta": -0.22,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2695,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3188,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4269,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2695,
"delta": -0.0635,
"percent_delta": -0.1908,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3188,
"delta": -0.0142,
"percent_delta": -0.0428,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4269,
"delta": 0.0939,
"percent_delta": 0.282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4269,
"delta": 0.0939,
"percent_delta": 0.282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2695,
"delta": -0.0635,
"percent_delta": -0.1908,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.255,
"after": 4.0,
"delta": 0.745,
"percent_delta": 0.2289,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2695,
"delta": -0.0035,
"percent_delta": -0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.277,
"after": 0.0,
"delta": -0.277,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 1.0,
"delta": 0.22,
"percent_delta": 0.2821,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3188,
"delta": -0.0192,
"percent_delta": -0.0568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.362,
"after": 1.0,
"delta": 0.638,
"percent_delta": 1.7624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.44,
"after": 0.4269,
"delta": -0.0131,
"percent_delta": -0.0298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.851,
"after": 0.0,
"delta": -0.851,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.255,
"after": 4.0,
"delta": 0.745,
"percent_delta": 0.2289,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.851,
"after": 0.0,
"delta": -0.851,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.170 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.255 | - |
| predicted_AVG | 0.273 | - |
| predicted_BB | 0.277 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.338 | - |
| predicted_R | 0.362 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.440 | - |
| predicted_SO | 0.851 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.216 | 0.046 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.319 | 0.064 |
| predicted_AVG | 0.286 | 0.013 |
| predicted_BB | 0.240 | -0.037 |
| predicted_H | 0.885 | 0.105 |
| predicted_HBP | 0.039 | - |
| predicted_HR | 0.100 | 0.000 |
| predicted_OBP | 0.343 | 0.005 |
| predicted_R | 0.368 | 0.006 |
| predicted_RBI | 0.388 | 0.018 |
| predicted_SLG | 0.455 | 0.015 |
| predicted_SO | 0.832 | -0.019 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.216 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.319 | 0.000 |
| predicted_AVG | 0.270 | -0.016 |
| predicted_BB | 0.240 | -0.000 |
| predicted_H | 0.894 | 0.009 |
| predicted_HBP | 0.039 | 0.000 |
| predicted_HR | 0.102 | 0.001 |
| predicted_OBP | 0.319 | -0.024 |
| predicted_R | 0.374 | 0.006 |
| predicted_RBI | 0.393 | 0.006 |
| predicted_SLG | 0.427 | -0.028 |
| predicted_SO | 0.833 | 0.001 |
AB rounded to 3 (raw=3.32), rates preserved: AVG=0.269 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.216 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.319 |
| predicted_AVG | 0.333 | 0.064 |
| predicted_BB | 0.000 | -0.240 |
| predicted_H | 1.000 | 0.106 |
| predicted_HR | 0.000 | -0.102 |
| predicted_OBP | 0.333 | 0.014 |
| predicted_R | 0.000 | -0.374 |
| predicted_RBI | 0.000 | -0.393 |
| predicted_SLG | 0.333 | -0.094 |
| predicted_SO | 1.000 | 0.167 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 9.000 | 3.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 3.000 | 0.5000 | 0.5000 | 0.8333 | 0.5000 | 0.0556 | 0.1111 | 0.0000 | 0.1667 |
| last_10 | 0.20 | 10 | - | 33.000 | 12.000 | 4.000 | 0.000 | 1.000 | 5.000 | 3.000 | 0.000 | 8.000 | 0.3636 | 0.3636 | 0.5758 | 0.3636 | 0.0303 | 0.1515 | 0.0000 | 0.2424 |
| season | 0.60 | 47 | - | 153.000 | 36.000 | 8.000 | 0.000 | 3.000 | 17.000 | 17.000 | 13.000 | 40.000 | 0.2353 | 0.3059 | 0.3464 | 0.2353 | 0.0196 | 0.1111 | 0.0850 | 0.2614 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2830 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.4130 |
| predicted_AVG | 0.3044 |
| predicted_BB | 0.1870 |
| predicted_H | 1.0390 |
| predicted_HBP | 0.0390 |
| predicted_HR | 0.1010 |
| predicted_OBP | 0.3498 |
| predicted_R | 0.3770 |
| predicted_RBI | 0.4130 |
| predicted_SLG | 0.4777 |
| predicted_SO | 0.8050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1700 | 0.2830 | 0.2159 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.2550 | 3.4130 | 3.3192 | model_form_blend |
| predicted_AVG | 0.2730 | 0.3044 | 0.2858 | model_form_blend |
| predicted_BB | 0.2770 | 0.1870 | 0.2404 | model_form_blend |
| predicted_H | 0.7800 | 1.0390 | 0.8852 | model_form_blend |
| predicted_HBP | - | 0.0390 | 0.0390 | form_only |
| predicted_HR | 0.1000 | 0.1010 | 0.1004 | model_form_blend |
| predicted_OBP | 0.3380 | 0.3498 | 0.3428 | model_form_blend |
| predicted_R | 0.3620 | 0.3770 | 0.3681 | model_form_blend |
| predicted_RBI | 0.3700 | 0.4130 | 0.3875 | model_form_blend |
| predicted_SLG | 0.4400 | 0.4777 | 0.4553 | model_form_blend |
| predicted_SO | 0.8510 | 0.8050 | 0.8323 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 138 |
| Season rows before report date | 138 |
| Report year | 2026 |
| Profile rows used | 47 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.75 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260616_LAA@ARI |
| game_type | full |
| mlbID | 681351 |
| playerID | 681351 |
| playerName | Logan O'Hoppe |
| pos | C |
| started | True |
| startingPosition | C |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-16 |
| sl_k_percent | 23.4 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.294 |
| sl_xwoba | 0.289 |
| sl_xba | 0.207 |
| sl_xslg | 0.363 |
| sl_sweet_spot_percent | 29.6 |
| sl_barrel_batted_rate | 12.2 |
| sl_hard_hit_percent | 39.1 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 17.1 |
| sl_whiff_percent | 28.4 |
| sl_swing_percent | 49.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.250 | 0.000 | 0.000 | Hitting_2B | 0.250 | 1.000 | -0.250 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.250 | 3.000 | 4.000 | Hitting_AB | 4.250 | 4.000 | -1.250 | -1.000 |
| predicted_AVG | 0.250 | 0.000 | 0.250 | Hitting_AVG | 0.265 | 0.250 | -0.265 | -0.250 |
| predicted_BB | 0.000 | 1.000 | 0.000 | Hitting_BB | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.050 | 0.000 | 1.000 | Hitting_H | 1.125 | 1.000 | -1.125 | -1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.314 | 0.250 | 0.250 | Hitting_OBP | 0.265 | 0.250 | -0.015 | 0.000 |
| predicted_R | 0.375 | 0.000 | 0.000 | Hitting_R | 0.375 | 0.000 | -0.375 | 0.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.625 | 0.000 | -0.625 | 0.000 |
| predicted_SLG | 0.388 | 0.000 | 0.250 | Hitting_SLG | 0.324 | 0.500 | -0.324 | -0.500 |
| predicted_SO | 0.750 | 1.000 | 1.000 | Hitting_SO | 0.750 | 2.000 | 0.250 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_AB: 4.2500 -> 3.0000 (deboost -1.2500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2500 -> 0.2614 (boost 0.0114, better) | predicted_AB: 4.2500 -> 4.1677 (deboost -0.0823, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3146 -> 0.2694 (deboost -0.0452, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_RBI: 0.6106 -> 1.0000 (boost 0.3894, better) | predicted_2B: 0.2356 -> 0.0000 (deboost -0.2356, worse) | AB rounded to 4 (raw=4.25), rates preserved: AVG=0.256 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4239 -> 0.0000 (deboost -0.4239, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3788 -> 0.2500 (deboost -0.1288, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 1 | 3 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.3788 (boost 0.1288, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694203",
"player_name": "Denzer Guzman",
"position": "3B",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.25,
"predicted_3B": 0.0,
"predicted_AB": 4.25,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.05,
"predicted_HR": 0.09,
"predicted_OBP": 0.314,
"predicted_R": 0.375,
"predicted_RBI": 0.59,
"predicted_SLG": 0.388,
"predicted_SO": 0.75
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2356,
"predicted_3B": 0.0022,
"predicted_AB": 4.1677,
"predicted_AVG": 0.2614,
"predicted_BB": 0.0451,
"predicted_H": 1.0788,
"predicted_HBP": 0.017,
"predicted_HR": 0.0819,
"predicted_OBP": 0.3146,
"predicted_R": 0.4176,
"predicted_RBI": 0.6016,
"predicted_SLG": 0.3884,
"predicted_SO": 0.771
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.2356,
"delta": -0.0144,
"percent_delta": -0.0576,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0022,
"delta": 0.0022,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 4.1677,
"delta": -0.0823,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2614,
"delta": 0.0114,
"percent_delta": 0.0456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0451,
"delta": 0.0451,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0788,
"delta": 0.0288,
"percent_delta": 0.0274,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0819,
"delta": -0.0081,
"percent_delta": -0.09,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3146,
"delta": 0.0006,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.375,
"after": 0.4176,
"delta": 0.0426,
"percent_delta": 0.1136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.6016,
"delta": 0.0116,
"percent_delta": 0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.388,
"after": 0.3884,
"delta": 0.0004,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.75,
"after": 0.771,
"delta": 0.021,
"percent_delta": 0.028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2614,
"delta": 0.0114,
"percent_delta": 0.0456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.25,
"after": 4.1677,
"delta": -0.0823,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 8,
"season": 8
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2356,
"predicted_3B": 0.0022,
"predicted_AB": 4.1677,
"predicted_AVG": 0.2615,
"predicted_BB": 0.0451,
"predicted_H": 1.09,
"predicted_HBP": 0.017,
"predicted_HR": 0.083,
"predicted_OBP": 0.2694,
"predicted_R": 0.4239,
"predicted_RBI": 0.6106,
"predicted_SLG": 0.3788,
"predicted_SO": 0.7718
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2356,
"after": 0.2356,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0022,
"after": 0.0022,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1677,
"after": 4.1677,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2614,
"after": 0.2615,
"delta": 0.0001,
"percent_delta": 0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0451,
"after": 0.0451,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0788,
"after": 1.09,
"delta": 0.0112,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0819,
"after": 0.083,
"delta": 0.0011,
"percent_delta": 0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3146,
"after": 0.2694,
"delta": -0.0452,
"percent_delta": -0.1437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4176,
"after": 0.4239,
"delta": 0.0063,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6016,
"after": 0.6106,
"delta": 0.009,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3884,
"after": 0.3788,
"delta": -0.0096,
"percent_delta": -0.0247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.771,
"after": 0.7718,
"delta": 0.0008,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3146,
"after": 0.2694,
"delta": -0.0452,
"percent_delta": -0.1437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.25), rates preserved: AVG=0.256 HR/AB=0.020",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2356,
"after": 0.0,
"delta": -0.2356,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0022,
"after": 0.0,
"delta": -0.0022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1677,
"after": 4.0,
"delta": -0.1677,
"percent_delta": -0.0402,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0451,
"after": 0.0,
"delta": -0.0451,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.0,
"delta": -0.09,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.083,
"after": 0.0,
"delta": -0.083,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6106,
"after": 1.0,
"delta": 0.3894,
"percent_delta": 0.6377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7718,
"after": 1.0,
"delta": 0.2282,
"percent_delta": 0.2957,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6106,
"after": 1.0,
"delta": 0.3894,
"percent_delta": 0.6377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2356,
"after": 0.0,
"delta": -0.2356,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4239,
"after": 0.0,
"delta": -0.4239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4239,
"after": 0.0,
"delta": -0.4239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2615,
"after": 0.25,
"delta": -0.0115,
"percent_delta": -0.044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2694,
"after": 0.25,
"delta": -0.0194,
"percent_delta": -0.072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3788,
"after": 0.25,
"delta": -0.1288,
"percent_delta": -0.34,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3788,
"after": 0.25,
"delta": -0.1288,
"percent_delta": -0.34,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2615,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2694,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3788,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2615,
"delta": 0.0115,
"percent_delta": 0.0462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2694,
"delta": 0.0194,
"percent_delta": 0.0778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3788,
"delta": 0.1288,
"percent_delta": 0.5154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3788,
"delta": 0.1288,
"percent_delta": 0.5154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 3.0,
"delta": -1.25,
"percent_delta": -0.2941,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2615,
"delta": 0.0115,
"percent_delta": 0.046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 0.0,
"delta": -1.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.2694,
"delta": -0.0446,
"percent_delta": -0.142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.375,
"after": 0.0,
"delta": -0.375,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.388,
"after": 0.3788,
"delta": -0.0092,
"percent_delta": -0.0237,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.75,
"after": 1.0,
"delta": 0.25,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.25,
"after": 3.0,
"delta": -1.25,
"percent_delta": -0.2941,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.250 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.250 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.375 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.388 | - |
| predicted_SO | 0.750 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.236 | -0.014 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.168 | -0.082 |
| predicted_AVG | 0.261 | 0.011 |
| predicted_BB | 0.045 | 0.045 |
| predicted_H | 1.079 | 0.029 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.082 | -0.008 |
| predicted_OBP | 0.315 | 0.001 |
| predicted_R | 0.418 | 0.043 |
| predicted_RBI | 0.602 | 0.012 |
| predicted_SLG | 0.388 | 0.000 |
| predicted_SO | 0.771 | 0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.236 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 4.168 | 0.000 |
| predicted_AVG | 0.262 | 0.000 |
| predicted_BB | 0.045 | 0.000 |
| predicted_H | 1.090 | 0.011 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.083 | 0.001 |
| predicted_OBP | 0.269 | -0.045 |
| predicted_R | 0.424 | 0.006 |
| predicted_RBI | 0.611 | 0.009 |
| predicted_SLG | 0.379 | -0.010 |
| predicted_SO | 0.772 | 0.001 |
AB rounded to 4 (raw=4.25), rates preserved: AVG=0.256 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.236 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | -0.168 |
| predicted_AVG | 0.250 | -0.012 |
| predicted_BB | 0.000 | -0.045 |
| predicted_H | 1.000 | -0.090 |
| predicted_HR | 0.000 | -0.083 |
| predicted_OBP | 0.250 | -0.019 |
| predicted_R | 0.000 | -0.424 |
| predicted_RBI | 1.000 | 0.389 |
| predicted_SLG | 0.250 | -0.129 |
| predicted_SO | 1.000 | 0.228 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 7.000 | 1.000 | 0.000 | 0.000 | 4.000 | 3.000 | 0.000 | 4.000 | 0.3500 | 0.3500 | 0.4000 | 0.3500 | 0.0000 | 0.2000 | 0.0000 | 0.2000 |
| last_10 | 0.20 | 8 | - | 34.000 | 9.000 | 2.000 | 0.000 | 0.000 | 5.000 | 3.000 | 0.000 | 6.000 | 0.2647 | 0.2647 | 0.3235 | 0.2647 | 0.0000 | 0.1471 | 0.0000 | 0.1765 |
| season | 0.60 | 8 | - | 34.000 | 9.000 | 2.000 | 0.000 | 0.000 | 5.000 | 3.000 | 0.000 | 6.000 | 0.2647 | 0.2647 | 0.3235 | 0.2647 | 0.0000 | 0.1471 | 0.0000 | 0.1765 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2040 |
| predicted_3B | 0.0070 |
| predicted_AB | 3.9870 |
| predicted_AVG | 0.2864 |
| predicted_BB | 0.1440 |
| predicted_H | 1.1420 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.0640 |
| predicted_OBP | 0.3159 |
| predicted_R | 0.5110 |
| predicted_RBI | 0.6270 |
| predicted_SLG | 0.3893 |
| predicted_SO | 0.8170 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.2040 | 0.2356 | model_form_blend |
| predicted_3B | 0.0000 | 0.0070 | 0.0022 | model_form_blend |
| predicted_AB | 4.2500 | 3.9870 | 4.1677 | model_form_blend |
| predicted_AVG | 0.2500 | 0.2864 | 0.2614 | model_form_blend |
| predicted_BB | 0.0000 | 0.1440 | 0.0451 | model_form_blend |
| predicted_H | 1.0500 | 1.1420 | 1.0788 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.0900 | 0.0640 | 0.0819 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3159 | 0.3146 | model_form_blend |
| predicted_R | 0.3750 | 0.5110 | 0.4176 | model_form_blend |
| predicted_RBI | 0.5900 | 0.6270 | 0.6016 | model_form_blend |
| predicted_SLG | 0.3880 | 0.3893 | 0.3884 | model_form_blend |
| predicted_SO | 0.7500 | 0.8170 | 0.7710 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 8 |
| Season rows before report date | 8 |
| Report year | 2026 |
| Profile rows used | 8 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.265 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_LAA@ARI |
| game_type | full |
| mlbID | 694203 |
| playerID | 694203 |
| playerName | Denzer Guzman |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.6 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.258 |
| sl_xwoba | 0.254 |
| sl_xba | 0.245 |
| sl_xslg | 0.341 |
| sl_sweet_spot_percent | 21.4 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 42.9 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 8.6 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 60.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.150 | 0.000 | 0.000 | Hitting_2B | 0.129 | 0.000 | -0.129 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 4.000 | 3.000 | Hitting_AB | 2.000 | 3.000 | 2.000 | 1.000 |
| predicted_AVG | 0.306 | 0.500 | 0.333 | Hitting_AVG | 0.274 | 0.000 | 0.226 | 0.500 |
| predicted_BB | 0.200 | 0.000 | 0.000 | Hitting_BB | 0.161 | 0.000 | -0.161 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_H | 0.530 | 2.000 | 1.000 | Hitting_H | 0.548 | 0.000 | 1.452 | 2.000 |
| predicted_HR | 0.100 | 1.000 | 0.000 | Hitting_HR | 0.097 | 0.000 | 0.903 | 1.000 |
| predicted_OBP | 0.343 | 0.500 | 0.333 | Hitting_OBP | 0.338 | 0.000 | 0.162 | 0.500 |
| predicted_R | 0.550 | 1.000 | 1.000 | Hitting_R | 0.419 | 0.000 | 0.581 | 1.000 |
| predicted_RBI | 0.370 | 2.000 | 1.000 | Hitting_RBI | 0.387 | 0.000 | 1.613 | 2.000 |
| predicted_SLG | 0.448 | 1.250 | 0.333 | Hitting_SLG | 0.484 | 0.000 | 0.766 | 1.250 |
| predicted_SO | 0.800 | 1.000 | 1.000 | Hitting_SO | 0.710 | 1.000 | 0.290 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_RBI: 0.3700 -> 2.0000 (boost 1.6300, better) |
| Biggest Deboost | predicted_BB: 0.2000 -> 0.0000 (deboost -0.2000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_AB: 2.5000 -> 2.6196 (boost 0.1196, better) | predicted_AVG: 0.3060 -> 0.2936 (deboost -0.0124, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2936 -> 0.2364 (deboost -0.0572, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_RBI: 0.4393 -> 1.0000 (boost 0.5607, better) | predicted_BB: 0.2355 -> 0.0000 (deboost -0.2355, worse) | AB rounded to 3 (raw=2.62), rates preserved: AVG=0.236 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5259 -> 1.0000 (boost 0.4741, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2364 -> 0.3330 (boost 0.0966, better) | predicted_SLG: 0.4275 -> 0.3330 (deboost -0.0945, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 4 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4275 (boost 0.0945, better) | predicted_AVG: 0.3330 -> 0.2364 (deboost -0.0966, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "642350",
"player_name": "Jose Siri",
"position": "CF",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.15,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.306,
"predicted_BB": 0.2,
"predicted_H": 0.53,
"predicted_HR": 0.1,
"predicted_OBP": 0.343,
"predicted_R": 0.55,
"predicted_RBI": 0.37,
"predicted_SLG": 0.448,
"predicted_SO": 0.8
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1379,
"predicted_3B": 0.0014,
"predicted_AB": 2.6196,
"predicted_AVG": 0.2936,
"predicted_BB": 0.2357,
"predicted_H": 0.6129,
"predicted_HBP": 0.084,
"predicted_HR": 0.1184,
"predicted_OBP": 0.3479,
"predicted_R": 0.5181,
"predicted_RBI": 0.4328,
"predicted_SLG": 0.4574,
"predicted_SO": 0.8118
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.15,
"after": 0.1379,
"delta": -0.0121,
"percent_delta": -0.0807,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0014,
"delta": 0.0014,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.6196,
"delta": 0.1196,
"percent_delta": 0.0478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.306,
"after": 0.2936,
"delta": -0.0124,
"percent_delta": -0.0405,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.2357,
"delta": 0.0357,
"percent_delta": 0.1785,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.53,
"after": 0.6129,
"delta": 0.0829,
"percent_delta": 0.1564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1184,
"delta": 0.0184,
"percent_delta": 0.184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3479,
"delta": 0.0049,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 0.5181,
"delta": -0.0319,
"percent_delta": -0.058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.4328,
"delta": 0.0628,
"percent_delta": 0.1697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.448,
"after": 0.4574,
"delta": 0.0094,
"percent_delta": 0.021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 0.8118,
"delta": 0.0118,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 2.6196,
"delta": 0.1196,
"percent_delta": 0.0478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.306,
"after": 0.2936,
"delta": -0.0124,
"percent_delta": -0.0405,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 21
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1379,
"predicted_3B": 0.0014,
"predicted_AB": 2.6196,
"predicted_AVG": 0.2364,
"predicted_BB": 0.2355,
"predicted_H": 0.6193,
"predicted_HBP": 0.084,
"predicted_HR": 0.1199,
"predicted_OBP": 0.2994,
"predicted_R": 0.5259,
"predicted_RBI": 0.4393,
"predicted_SLG": 0.4275,
"predicted_SO": 0.8126
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1379,
"after": 0.1379,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0014,
"after": 0.0014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6196,
"after": 2.6196,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2936,
"after": 0.2364,
"delta": -0.0572,
"percent_delta": -0.1948,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2357,
"after": 0.2355,
"delta": -0.0002,
"percent_delta": -0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6129,
"after": 0.6193,
"delta": 0.0064,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.084,
"after": 0.084,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1184,
"after": 0.1199,
"delta": 0.0015,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3479,
"after": 0.2994,
"delta": -0.0485,
"percent_delta": -0.1394,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5181,
"after": 0.5259,
"delta": 0.0078,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4328,
"after": 0.4393,
"delta": 0.0065,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4574,
"after": 0.4275,
"delta": -0.0299,
"percent_delta": -0.0654,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8118,
"after": 0.8126,
"delta": 0.0008,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2936,
"after": 0.2364,
"delta": -0.0572,
"percent_delta": -0.1948,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.62), rates preserved: AVG=0.236 HR/AB=0.046",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1379,
"after": 0.0,
"delta": -0.1379,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0014,
"after": 0.0,
"delta": -0.0014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6196,
"after": 3.0,
"delta": 0.3804,
"percent_delta": 0.1452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2355,
"after": 0.0,
"delta": -0.2355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6193,
"after": 1.0,
"delta": 0.3807,
"percent_delta": 0.6147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.084,
"after": 0.0,
"delta": -0.084,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1199,
"after": 0.0,
"delta": -0.1199,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4393,
"after": 1.0,
"delta": 0.5607,
"percent_delta": 1.2763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8126,
"after": 1.0,
"delta": 0.1874,
"percent_delta": 0.2306,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4393,
"after": 1.0,
"delta": 0.5607,
"percent_delta": 1.2763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2355,
"after": 0.0,
"delta": -0.2355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5259,
"after": 1.0,
"delta": 0.4741,
"percent_delta": 0.9015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5259,
"after": 1.0,
"delta": 0.4741,
"percent_delta": 0.9015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2364,
"after": 0.333,
"delta": 0.0966,
"percent_delta": 0.4086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2994,
"after": 0.333,
"delta": 0.0336,
"percent_delta": 0.1122,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4275,
"after": 0.333,
"delta": -0.0945,
"percent_delta": -0.2211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2364,
"after": 0.333,
"delta": 0.0966,
"percent_delta": 0.4086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4275,
"after": 0.333,
"delta": -0.0945,
"percent_delta": -0.2211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2364,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2994,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4275,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2364,
"delta": -0.0966,
"percent_delta": -0.2901,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2994,
"delta": -0.0336,
"percent_delta": -0.101,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4275,
"delta": 0.0945,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4275,
"delta": 0.0945,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2364,
"delta": -0.0966,
"percent_delta": -0.2901,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 4.0,
"delta": 1.5,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.306,
"after": 0.2364,
"delta": -0.0696,
"percent_delta": -0.2275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.53,
"after": 2.0,
"delta": 1.47,
"percent_delta": 2.7736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.2994,
"delta": -0.0436,
"percent_delta": -0.1271,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 1.0,
"delta": 0.45,
"percent_delta": 0.8182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 2.0,
"delta": 1.63,
"percent_delta": 4.4054,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.448,
"after": 0.4275,
"delta": -0.0205,
"percent_delta": -0.0458,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.37,
"after": 2.0,
"delta": 1.63,
"percent_delta": 4.4054,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.150 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.306 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.530 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.343 | - |
| predicted_R | 0.550 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.448 | - |
| predicted_SO | 0.800 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.138 | -0.012 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.620 | 0.120 |
| predicted_AVG | 0.294 | -0.012 |
| predicted_BB | 0.236 | 0.036 |
| predicted_H | 0.613 | 0.083 |
| predicted_HBP | 0.084 | - |
| predicted_HR | 0.118 | 0.018 |
| predicted_OBP | 0.348 | 0.005 |
| predicted_R | 0.518 | -0.032 |
| predicted_RBI | 0.433 | 0.063 |
| predicted_SLG | 0.457 | 0.009 |
| predicted_SO | 0.812 | 0.012 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.138 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.620 | 0.000 |
| predicted_AVG | 0.236 | -0.057 |
| predicted_BB | 0.235 | -0.000 |
| predicted_H | 0.619 | 0.006 |
| predicted_HBP | 0.084 | 0.000 |
| predicted_HR | 0.120 | 0.002 |
| predicted_OBP | 0.299 | -0.048 |
| predicted_R | 0.526 | 0.008 |
| predicted_RBI | 0.439 | 0.007 |
| predicted_SLG | 0.427 | -0.030 |
| predicted_SO | 0.813 | 0.001 |
AB rounded to 3 (raw=2.62), rates preserved: AVG=0.236 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.138 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.380 |
| predicted_AVG | 0.333 | 0.097 |
| predicted_BB | 0.000 | -0.235 |
| predicted_H | 1.000 | 0.381 |
| predicted_HR | 0.000 | -0.120 |
| predicted_OBP | 0.333 | 0.034 |
| predicted_R | 1.000 | 0.474 |
| predicted_RBI | 1.000 | 0.561 |
| predicted_SLG | 0.333 | -0.094 |
| predicted_SO | 1.000 | 0.187 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 10.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 2.000 | 4.000 | 0.2000 | 0.3846 | 0.5000 | 0.2000 | 0.1000 | 0.2000 | 0.2000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 23.000 | 7.000 | 0.000 | 0.000 | 1.000 | 5.000 | 3.000 | 4.000 | 7.000 | 0.3043 | 0.4286 | 0.4348 | 0.3044 | 0.0435 | 0.2174 | 0.1739 | 0.3044 |
| season | 0.60 | 21 | - | 50.000 | 15.000 | 3.000 | 0.000 | 3.000 | 12.000 | 11.000 | 4.000 | 16.000 | 0.3000 | 0.3636 | 0.5400 | 0.3000 | 0.0600 | 0.2400 | 0.0800 | 0.3200 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1150 |
| predicted_3B | 0.0040 |
| predicted_AB | 2.8450 |
| predicted_AVG | 0.2701 |
| predicted_BB | 0.3030 |
| predicted_H | 0.7690 |
| predicted_HBP | 0.0840 |
| predicted_HR | 0.1530 |
| predicted_OBP | 0.3570 |
| predicted_R | 0.4580 |
| predicted_RBI | 0.5510 |
| predicted_SLG | 0.4752 |
| predicted_SO | 0.8340 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1500 | 0.1150 | 0.1379 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0014 | model_form_blend |
| predicted_AB | 2.5000 | 2.8450 | 2.6196 | model_form_blend |
| predicted_AVG | 0.3060 | 0.2701 | 0.2936 | model_form_blend |
| predicted_BB | 0.2000 | 0.3030 | 0.2357 | model_form_blend |
| predicted_H | 0.5300 | 0.7690 | 0.6129 | model_form_blend |
| predicted_HBP | - | 0.0840 | 0.0840 | form_only |
| predicted_HR | 0.1000 | 0.1530 | 0.1184 | model_form_blend |
| predicted_OBP | 0.3430 | 0.3570 | 0.3479 | model_form_blend |
| predicted_R | 0.5500 | 0.4580 | 0.5181 | model_form_blend |
| predicted_RBI | 0.3700 | 0.5510 | 0.4328 | model_form_blend |
| predicted_SLG | 0.4480 | 0.4752 | 0.4574 | model_form_blend |
| predicted_SO | 0.8000 | 0.8340 | 0.8118 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 21 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.3 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_LAA@ARI |
| game_type | full |
| mlbID | 642350 |
| playerID | 642350 |
| playerName | Jose Siri |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-17 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 8.6 |
| sl_woba | 0.397 |
| sl_xwoba | 0.366 |
| sl_xba | 0.267 |
| sl_xslg | 0.499 |
| sl_sweet_spot_percent | 41.7 |
| sl_barrel_batted_rate | 17.1 |
| sl_hard_hit_percent | 42.9 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 20.4 |
| sl_whiff_percent | 36.1 |
| sl_swing_percent | 56.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 1.750 | 1.000 | -1.750 | -1.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 3.500 | 5.000 | 1.500 | 0.000 |
| predicted_H | 10.000 | 10.000 | 10.000 | Pitching_H | 3.750 | 4.000 | 6.250 | 6.000 |
| predicted_IP | 3.000 | 3.000 | 3.000 | Pitching_InningsPitched | 2.025 | 2.000 | 0.975 | 1.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 1.250 | 0.000 | 2.750 | 4.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 4.0000 -> 3.0000 (deboost -1.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "696270",
"player_name": "Ryan Johnson",
"position": "Starter",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 5.0,
"predicted_H": 10.0,
"predicted_HR": 0.0,
"predicted_IP": 4.0,
"predicted_SO": 4.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 5.0,
"predicted_H": 10.0,
"predicted_HR": 0.0,
"predicted_IP": 3.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 10.0,
"after": 10.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 5.0,
"predicted_H": 10.0,
"predicted_HR": 0.0,
"predicted_IP": 3.0,
"predicted_R": 5.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 10.0,
"after": 10.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 10.0,
"after": 10.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 5.000 | - |
| predicted_H | 10.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 4.000 | - |
| predicted_SO | 4.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | 0.000 |
| predicted_ER | 5.000 | 0.000 |
| predicted_H | 10.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 3.000 | -1.000 |
| predicted_SO | 4.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 4 | 8.100 | 14.000 | 15.000 | 7.000 | 5.000 | 3.000 | 15.1200 | 2.6400 | 1.6800 | 1.8000 | 0.8400 | 0.6000 | 0.3600 |
| last_10 | 0.35 | 4 | 8.100 | 14.000 | 15.000 | 7.000 | 5.000 | 3.000 | 15.1200 | 2.6400 | 1.6800 | 1.8000 | 0.8400 | 0.6000 | 0.3600 |
| season | 0.20 | 4 | 8.100 | 14.000 | 15.000 | 7.000 | 5.000 | 3.000 | 15.1200 | 2.6400 | 1.6800 | 1.8000 | 0.8400 | 0.6000 | 0.3600 |
| Metric | Value |
|---|---|
| predicted_BB | 1.6870 |
| predicted_ER | 2.7820 |
| predicted_ERA | 7.1474 |
| predicted_H | 4.1310 |
| predicted_HR | 0.6980 |
| predicted_IP | 3.2000 |
| predicted_SO | 2.9900 |
| predicted_WHIP | 1.6612 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 1.6870 | 0.5611 | model_form_blend |
| predicted_ER | 5.0000 | 2.7820 | 4.2623 | model_form_blend |
| predicted_ERA | - | 7.1474 | 7.1474 | form_only |
| predicted_H | 10.0000 | 4.1310 | 8.0481 | model_form_blend |
| predicted_HR | 0.0000 | 0.6980 | 0.2321 | model_form_blend |
| predicted_IP | 4.0000 | 3.2000 | 4.0000 | model_form_blend |
| predicted_SO | 4.0000 | 2.9900 | 3.6641 | model_form_blend |
| predicted_WHIP | - | 1.6612 | 1.6612 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 4 |
| Season rows before report date | 4 |
| Report year | 2026 |
| Profile rows used | 4 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 3.0 |
| H | 10 |
| R | 5 |
| ER | 5 |
| BB | 0 |
| SO | 4 |
| HR | 0 |
| BF | 19 |
| Pitches | 68 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 11 |
| Pitching_ER | 5 |
| Pitching_ERA | 15.12 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 3 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.0 |
| Pitching_Pitches | 34 |
| Pitching_R | 5 |
| Pitching_SO | 0 |
| Pitching_Strikes | 22 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260519_OAK@LAA |
| game_type | full |
| mlbID | 696270 |
| playerID | 696270 |
| playerName | Ryan Johnson |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-05-19 |
| game_pk | 824033.0 |
| sl_k_percent | 10.6 |
| sl_bb_percent | 14.9 |
| sl_woba | 0.487 |
| sl_xwoba | 0.386 |
| sl_sweet_spot_percent | 31.4 |
| sl_barrel_batted_rate | 8.6 |
| sl_hard_hit_percent | 42.9 |
| sl_whiff_percent | 23.1 |
| sl_swing_percent | 53.5 |
| sv_pitch_count | 34.0 |
| sv_outs_recorded_est | 6.0 |
| sv_release_speed | 88.44411764705882 |
| sv_release_spin_rate | 2419.735294117647 |
| sv_effective_speed | 87.87941176470588 |
| sv_launch_speed | 89.18571428571428 |
| sv_launch_angle | 22.0 |
| sv_woba_value | 6.85 |
| sv_woba_denom | 11.0 |
| sv_delta_run_exp | 4.072 |
| sv_delta_home_win_exp | -0.037 |
| sl_avg_best_speed | 79.932280556 |
| sl_avg_hyper_speed | 95.073927429 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.469 | 0.000 | 0.531 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.156 | 0.000 | -0.156 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.656 | 1.000 | -0.656 | -1.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.663 | 1.000 | 0.537 | 0.200 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.906 | 2.000 | 1.094 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "681217",
"player_name": "Chase Silseth",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.2,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.2,
"delta": 0.2,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 1.000 | 5.000 | 1.000 | 8.000 | 1.000 | 1.9286 | 1.2857 | 0.2143 | 1.0714 | 0.2143 | 1.7143 | 0.2143 |
| last_10 | 0.35 | 10 | 9.100 | 1.000 | 7.000 | 2.000 | 13.000 | 1.000 | 0.9643 | 0.9643 | 0.1071 | 0.7500 | 0.2143 | 1.3929 | 0.1071 |
| season | 0.20 | 32 | 26.100 | 5.000 | 21.000 | 15.000 | 29.000 | 2.000 | 1.7089 | 1.3671 | 0.1899 | 0.7975 | 0.5696 | 1.1013 | 0.0760 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3120 |
| predicted_ER | 0.3210 |
| predicted_ERA | 2.9945 |
| predicted_H | 0.9060 |
| predicted_HR | 0.1430 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1730 |
| predicted_WHIP | 1.2617 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3120 | 0.6949 | model_form_blend |
| predicted_ER | 0.0000 | 0.3210 | 0.1424 | model_form_blend |
| predicted_ERA | - | 2.9945 | 2.9945 | form_only |
| predicted_H | 0.0000 | 0.9060 | 0.4018 | model_form_blend |
| predicted_HR | 0.0000 | 0.1430 | 0.0634 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.1730 | 1.6332 | model_form_blend |
| predicted_WHIP | - | 1.2617 | 1.2617 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 32 |
| Season rows before report date | 32 |
| Report year | 2026 |
| Profile rows used | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 2 |
| HR | 0 |
| BF | 6 |
| Pitches | 9 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.71 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 18 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_LAA@ARI |
| game_type | full |
| mlbID | 681217 |
| playerID | 681217 |
| playerName | Chase Silseth |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-16 |
| sl_k_percent | 25.4 |
| sl_bb_percent | 13.2 |
| sl_woba | 0.302 |
| sl_xwoba | 0.298 |
| sl_sweet_spot_percent | 39.1 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 30.4 |
| sl_whiff_percent | 34.1 |
| sl_swing_percent | 46.4 |
| sl_avg_best_speed | 75.058831176 |
| sl_avg_hyper_speed | 93.166081765 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.400 | 1.000 | 0.600 | 0.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 0.400 | 0.000 | 1.600 | 2.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.600 | 0.000 | 0.400 | 1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.827 | 1.000 | 0.273 | 0.100 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.133 | 1.000 | 0.867 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "489446",
"player_name": "Kirby Yates",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 1.1,
"predicted_R": 2.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 2.000 | 2.000 | 7.000 | 0.000 | 1.8000 | 0.8000 | 0.2000 | 0.4000 | 0.4000 | 1.4000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 3.000 | 5.000 | 5.000 | 11.000 | 1.000 | 2.7931 | 1.0345 | 0.3103 | 0.5172 | 0.5172 | 1.1379 | 0.1035 |
| season | 0.20 | 14 | 13.100 | 5.000 | 8.000 | 6.000 | 17.000 | 1.000 | 3.3750 | 1.0500 | 0.3750 | 0.6000 | 0.4500 | 1.2750 | 0.0750 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3940 |
| predicted_ER | 0.4220 |
| predicted_ERA | 3.8000 |
| predicted_H | 0.8030 |
| predicted_HR | 0.1130 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0570 |
| predicted_WHIP | 1.1969 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3940 | 0.7735 | model_form_blend |
| predicted_ER | 2.0000 | 0.4220 | 1.4102 | model_form_blend |
| predicted_ERA | - | 3.8000 | 3.8000 | form_only |
| predicted_H | 1.0000 | 0.8030 | 0.9264 | model_form_blend |
| predicted_HR | 1.0000 | 0.1130 | 0.6685 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.0570 | 1.6475 | model_form_blend |
| predicted_WHIP | - | 1.1969 | 1.1969 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 1 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 2 |
| HR | 1 |
| BF | 6 |
| Pitches | 24 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.05 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260616_LAA@ARI |
| game_type | full |
| mlbID | 489446 |
| playerID | 489446 |
| playerName | Kirby Yates |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-16 |
| sl_k_percent | 29.8 |
| sl_bb_percent | 10.5 |
| sl_woba | 0.288 |
| sl_xwoba | 0.314 |
| sl_sweet_spot_percent | 42.4 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 60.6 |
| sl_whiff_percent | 30.1 |
| sl_swing_percent | 49.3 |
| sl_avg_best_speed | 84.327627059 |
| sl_avg_hyper_speed | 97.211354545 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.654 | 2.000 | -0.654 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.462 | 5.000 | -0.462 | -5.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.885 | 4.000 | -0.885 | -4.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.104 | 1.000 | -0.104 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.346 | 1.000 | -0.346 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "696147",
"player_name": "Sam Bachman",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 5.000 | 6.000 | 3.000 | 6.000 | 2.000 | 10.3846 | 2.0769 | 1.1539 | 1.3846 | 0.6923 | 1.3846 | 0.4615 |
| last_10 | 0.35 | 10 | 10.100 | 5.000 | 11.000 | 7.000 | 11.000 | 2.000 | 4.3548 | 1.7419 | 0.4839 | 1.0645 | 0.6774 | 1.0645 | 0.1935 |
| season | 0.20 | 26 | 32.200 | 12.000 | 23.000 | 17.000 | 35.000 | 4.000 | 3.3061 | 1.2245 | 0.3674 | 0.7041 | 0.5204 | 1.0714 | 0.1225 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5470 |
| predicted_ER | 0.6730 |
| predicted_ERA | 5.8354 |
| predicted_H | 1.1060 |
| predicted_HR | 0.2420 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1330 |
| predicted_WHIP | 1.5924 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5470 | 0.2549 | model_form_blend |
| predicted_ER | 0.0000 | 0.6730 | 0.3137 | model_form_blend |
| predicted_ERA | - | 5.8354 | 5.8354 | form_only |
| predicted_H | 0.0000 | 1.1060 | 0.5155 | model_form_blend |
| predicted_HR | 0.0000 | 0.2420 | 0.1128 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.1330 | 1.0620 | model_form_blend |
| predicted_WHIP | - | 1.5924 | 1.5924 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 26 |
| Season rows before report date | 26 |
| Report year | 2026 |
| Profile rows used | 26 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 9 |
| Pitching_ER | 5 |
| Pitching_ERA | 3.31 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 31 |
| Pitching_R | 5 |
| Pitching_SO | 1 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260614_TB@LAA |
| game_type | full |
| mlbID | 696147 |
| playerID | 696147 |
| playerName | Sam Bachman |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-14 |
| sl_k_percent | 25.7 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.3 |
| sl_xwoba | 0.282 |
| sl_sweet_spot_percent | 30.5 |
| sl_barrel_batted_rate | 5.0 |
| sl_hard_hit_percent | 32.9 |
| sl_whiff_percent | 35.0 |
| sl_swing_percent | 43.6 |
| sl_avg_best_speed | 75.720165 |
| sl_avg_hyper_speed | 93.025325823 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.893 | 0.000 | -0.893 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.643 | 0.000 | -0.643 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.714 | 0.000 | -0.714 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.079 | 1.000 | -0.079 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.500 | 1.000 | -1.500 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "666171",
"player_name": "Ryan Zeferjahn",
"position": "Middle Reliever",
"team": "LAA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 0.000 | 6.000 | 10.000 | 0.000 | 0.0000 | 1.1250 | 0.0000 | 0.0000 | 1.1250 | 1.8750 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 6.000 | 6.000 | 10.000 | 13.000 | 3.000 | 5.5862 | 1.6552 | 0.6207 | 0.6207 | 1.0345 | 1.3448 | 0.3103 |
| season | 0.20 | 28 | 33.000 | 18.000 | 20.000 | 25.000 | 42.000 | 3.000 | 4.9091 | 1.3636 | 0.5454 | 0.6061 | 0.7576 | 1.2727 | 0.0909 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5510 |
| predicted_ER | 0.3010 |
| predicted_ERA | 3.6170 |
| predicted_H | 0.4600 |
| predicted_HR | 0.1010 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.9710 |
| predicted_WHIP | 1.3492 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5510 | 0.2574 | model_form_blend |
| predicted_ER | 0.0000 | 0.3010 | 0.1406 | model_form_blend |
| predicted_ERA | - | 3.6170 | 3.6170 | form_only |
| predicted_H | 0.0000 | 0.4600 | 0.2149 | model_form_blend |
| predicted_HR | 0.0000 | 0.1010 | 0.0472 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9710 | 0.4536 | model_form_blend |
| predicted_WHIP | - | 1.3492 | 1.3492 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 28 |
| Season rows before report date | 28 |
| Report year | 2026 |
| Profile rows used | 28 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.91 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260614_TB@LAA |
| game_type | full |
| mlbID | 666171 |
| playerID | 666171 |
| playerName | Ryan Zeferjahn |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAA |
| teamID | 13 |
| game_date | 2026-06-14 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 16.1 |
| sl_woba | 0.297 |
| sl_xwoba | 0.302 |
| sl_sweet_spot_percent | 28.9 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 36.8 |
| sl_whiff_percent | 30.5 |
| sl_swing_percent | 38.7 |
| sl_avg_best_speed | 79.757111053 |
| sl_avg_hyper_speed | 93.407026133 |
| Field | Value |
|---|---|
| Pitcher | Gage Jump |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.1870 |
| ESPN Rank | 144 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0978 |
| Avg Velo | 91.4761 |
| Avg Spin | 2286.4318 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 2 |
| Pre H | 2 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 3.0857 |
| Season WHIP | 1.1143 |
| Role Avg IP | 5.8330 |
| Recent Avg IP | 5.8330 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"opponent": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"edges": {
"quality_edge": 0.0269,
"offense_edge": 0.0382,
"opponent_offense_edge": -0.0052,
"defense_strength": -0.1495,
"opponent_defense_weakness": 0.0889,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9968,
"run_prevention": 1.0128,
"strikeout": 1.0012
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "695611",
"profile": {
"available": true,
"pitcher_id": "695611",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 25.0,
"k_percent": 20.2,
"bb_percent": 6.4,
"woba": 0.258,
"xwoba": 0.285,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 29.9,
"avg_best_speed": 77.1636,
"avg_hyper_speed": 93.5788,
"whiff_percent": 24.2,
"swing_percent": 52.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.9044,
"command_and_miss": -0.0829,
"regression_edge": -0.7714,
"xwoba_edge": 0.8571,
"barrel_edge": 0.9556,
"hard_hit_edge": 1.2,
"whiff_edge": -0.2143,
"bb_edge": 0.7,
"pitch_design_score": 0.0978
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "695611",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 88,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 88,
"pitch_usage": 0.0,
"release_speed": 91.47613636363636,
"release_spin_rate": 2286.431818181818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 88,
"pitch_usage": 0.0,
"release_speed": 91.47613636363636,
"release_spin_rate": 2286.431818181818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 91.4761,
"release_spin_rate": 2286.4318,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0978,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6989,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.187,
"sample_weight": 0.45,
"run_prevention_factor": 0.9841,
"strikeout_factor": 0.9902,
"walk_factor": 0.9748,
"homer_factor": 0.9324,
"woba_minus_xwoba": -0.027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695611",
"espn_id": 5023852,
"player_name": "Gage Jump",
"team": "ATH",
"role": "pitcher",
"espn_rank": 144,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 144,
"gp_value": 4.0,
"gp_rank": 512,
"gs_value": 4.0,
"gs_rank": 175,
"qs_value": 2.0,
"qs_rank": 109,
"era_value": 3.0857,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 23.1,
"ip_rank": 341,
"h_value": 20.0,
"h_rank": 330,
"er_value": 8.0,
"er_rank": 396,
"hr_value": 0.0,
"hr_rank": 578,
"bb_value": 6.0,
"bb_rank": 436,
"k_value": 19.0,
"k_rank": 363,
"k_per_9_value": 7.328572,
"k_per_9_rank": 28,
"whip_value": 1.1142,
"whip_rank": null,
"war_value": 0.73,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 0.9928,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 0.9928,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9887,
"adjusted": 1
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9696,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9956,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 23.1,
"ER": 8,
"H": 20,
"BB": 6,
"SO": 19,
"HR": 0,
"ERA": 3.085714285714286,
"WHIP": 1.1142857142857143,
"K9": 7.328571428571429,
"HR9": 0.0,
"games_pitched": 4,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 4,
"error_prone": false
},
"games_count": 4,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "695611",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 88,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 88,
"pitch_usage": 0.0,
"release_speed": 91.47613636363636,
"release_spin_rate": 2286.431818181818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 88,
"pitch_usage": 0.0,
"release_speed": 91.47613636363636,
"release_spin_rate": 2286.431818181818,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 91.4761,
"release_spin_rate": 2286.4318,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0978,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6989,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4444,
"prior_weight": 0.5556
},
"role": "pitcher",
"player_id": "695611",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 4,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 4,
"totals": {
"IP": 23.1,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 6.0,
"SO": 19.0,
"HR": 0.0,
"BF": 94.0,
"Pitches": 344.0
},
"per_game": {
"IP": 6.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 1.5,
"SO": 4.75,
"HR": 0.0,
"BF": 23.5,
"Pitches": 86.0
},
"rates": {
"ERA": 3.0857,
"WHIP": 1.1143,
"ER_per_IP": 0.34286,
"H_per_IP": 0.85714,
"BB_per_IP": 0.25714,
"SO_per_IP": 0.81429,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 4,
"totals": {
"IP": 23.1,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 6.0,
"SO": 19.0,
"HR": 0.0,
"BF": 94.0,
"Pitches": 344.0
},
"per_game": {
"IP": 6.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 1.5,
"SO": 4.75,
"HR": 0.0,
"BF": 23.5,
"Pitches": 86.0
},
"rates": {
"ERA": 3.0857,
"WHIP": 1.1143,
"ER_per_IP": 0.34286,
"H_per_IP": 0.85714,
"BB_per_IP": 0.25714,
"SO_per_IP": 0.81429,
"HR_per_IP": 0.0
}
},
"season": {
"games": 4,
"totals": {
"IP": 23.1,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 6.0,
"SO": 19.0,
"HR": 0.0,
"BF": 94.0,
"Pitches": 344.0
},
"per_game": {
"IP": 6.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 1.5,
"SO": 4.75,
"HR": 0.0,
"BF": 23.5,
"Pitches": 86.0
},
"rates": {
"ERA": 3.0857,
"WHIP": 1.1143,
"ER_per_IP": 0.34286,
"H_per_IP": 0.85714,
"BB_per_IP": 0.25714,
"SO_per_IP": 0.81429,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.504,
"predicted_H": 5.362,
"predicted_BB": 1.838,
"predicted_SO": 5.133,
"predicted_HR": 0.471,
"predicted_ERA": 3.8761,
"predicted_WHIP": 1.2381
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5847,
"form_weight": 0.4153,
"form_reliability": 0.4444,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4444,
"prior_weight": 0.5556
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 2.504,
"final": 2.2093,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 5.362,
"final": 3.3961,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.838,
"final": 1.9327,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 5.133,
"final": 3.8857,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.471,
"final": 0.7803,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8761,
"final": 3.8761,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2381,
"final": 1.2381,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Elvis Alvarado |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1268 |
| ESPN Rank | 512 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2800 |
| Avg Velo | 96.2014 |
| Avg Spin | 2328.6297 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 5.6250 |
| Season WHIP | 1.2500 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"opponent": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"edges": {
"quality_edge": 0.0269,
"offense_edge": 0.0382,
"opponent_offense_edge": -0.0052,
"defense_strength": -0.1495,
"opponent_defense_weakness": 0.0889,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9968,
"run_prevention": 1.0128,
"strikeout": 1.0012
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "665660",
"profile": {
"available": true,
"pitcher_id": "665660",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 44.0,
"k_percent": 30.3,
"bb_percent": 10.6,
"woba": 0.319,
"xwoba": 0.33,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 20.5,
"hard_hit_percent": 48.7,
"avg_best_speed": 80.2056,
"avg_hyper_speed": 94.7536,
"whiff_percent": 33.1,
"swing_percent": 53.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.8591,
"command_and_miss": 0.8014,
"regression_edge": -0.3143,
"xwoba_edge": -0.4286,
"barrel_edge": -2.5,
"hard_hit_edge": -1.4857,
"whiff_edge": 1.0571,
"bb_edge": -0.35,
"pitch_design_score": 0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "665660",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 45,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 96.201418997669,
"release_spin_rate": 2328.629715456957,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 96.201418997669,
"release_spin_rate": 2328.629715456957,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 96.2014,
"release_spin_rate": 2328.6297,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.28,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 2.0,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.1268,
"sample_weight": 0.45,
"run_prevention_factor": 1.0108,
"strikeout_factor": 1.0391,
"walk_factor": 1.0126,
"homer_factor": 1.1225,
"woba_minus_xwoba": -0.011,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665660",
"espn_id": 42211,
"player_name": "Elvis Alvarado",
"team": "ATH",
"role": "pitcher",
"espn_rank": 512,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 512,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.625,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 4.0,
"hld_rank": 121,
"ip_value": 16.0,
"ip_rank": 429,
"h_value": 13.0,
"h_rank": 439,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 20.0,
"k_rank": 352,
"k_per_9_value": 11.25,
"k_per_9_rank": 22,
"whip_value": 1.25,
"whip_rank": null,
"war_value": -0.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0049,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0049,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0057,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0551,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0176,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 5,
"H": 6,
"BB": 3,
"SO": 16,
"HR": 2,
"ERA": 4.21875,
"WHIP": 0.84375,
"K9": 13.5,
"HR9": 1.6875,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": true,
"pitcher_id": "665660",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 45,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 96.201418997669,
"release_spin_rate": 2328.629715456957,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 45,
"pitch_usage": 0.0,
"release_speed": 96.201418997669,
"release_spin_rate": 2328.629715456957,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 96.2014,
"release_spin_rate": 2328.6297,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.28,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 2.0,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.177,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3886,
"prior_weight": 0.6114
},
"role": "pitcher",
"player_id": "665660",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.1,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 11.0,
"HR": 1.0,
"BF": 22.0,
"Pitches": 113.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.0,
"SO": 2.2,
"HR": 0.2,
"BF": 4.4,
"Pitches": 22.6
},
"rates": {
"ERA": 1.4211,
"WHIP": 0.3158,
"ER_per_IP": 0.15789,
"H_per_IP": 0.31579,
"BB_per_IP": 0.0,
"SO_per_IP": 1.73684,
"HR_per_IP": 0.15789
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 5.0,
"R": 5.0,
"H": 6.0,
"BB": 3.0,
"SO": 16.0,
"HR": 2.0,
"BF": 41.0,
"Pitches": 196.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.6,
"BB": 0.3,
"SO": 1.6,
"HR": 0.2,
"BF": 4.1,
"Pitches": 19.6
},
"rates": {
"ERA": 4.2188,
"WHIP": 0.8438,
"ER_per_IP": 0.46875,
"H_per_IP": 0.5625,
"BB_per_IP": 0.28125,
"SO_per_IP": 1.5,
"HR_per_IP": 0.1875
}
},
"season": {
"games": 15,
"totals": {
"IP": 16.0,
"ER": 10.0,
"R": 10.0,
"H": 13.0,
"BB": 7.0,
"SO": 20.0,
"HR": 2.0,
"BF": 66.0,
"Pitches": 295.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6667,
"R": 0.6667,
"H": 0.8667,
"BB": 0.4667,
"SO": 1.3333,
"HR": 0.1333,
"BF": 4.4,
"Pitches": 19.6667
},
"rates": {
"ERA": 5.625,
"WHIP": 1.25,
"ER_per_IP": 0.625,
"H_per_IP": 0.8125,
"BB_per_IP": 0.4375,
"SO_per_IP": 1.25,
"HR_per_IP": 0.125
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.563,
"predicted_H": 0.998,
"predicted_BB": 0.371,
"predicted_SO": 1.487,
"predicted_HR": 0.192,
"predicted_ERA": 4.0158,
"predicted_WHIP": 1.0847
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6083,
"form_weight": 0.3917,
"form_reliability": 0.3886,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.177,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3886,
"prior_weight": 0.6114
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.563,
"final": 0.2205,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.998,
"final": 1.6075,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.371,
"final": 0.1453,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.487,
"final": 0.5824,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.192,
"final": 0.0752,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.0158,
"final": 4.0158,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0847,
"final": 1.0847,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Hogan Harris |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2384 |
| ESPN Rank | 74 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 3.1154 |
| Season WHIP | 1.5288 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"opponent": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"edges": {
"quality_edge": 0.0269,
"offense_edge": 0.0382,
"opponent_offense_edge": -0.0052,
"defense_strength": -0.1495,
"opponent_defense_weakness": 0.0889,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9968,
"run_prevention": 1.0128,
"strikeout": 1.0012
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663687",
"profile": {
"available": true,
"pitcher_id": "663687",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 114.0,
"k_percent": 25.5,
"bb_percent": 15.3,
"woba": 0.311,
"xwoba": 0.284,
"sweet_spot_percent": 26.4,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 27.5,
"avg_best_speed": 74.3215,
"avg_hyper_speed": 92.2916,
"whiff_percent": 25.4,
"swing_percent": 42.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8549,
"command_and_miss": -0.1271,
"regression_edge": 0.7714,
"xwoba_edge": 0.8857,
"barrel_edge": 0.8889,
"hard_hit_edge": 1.5429,
"whiff_edge": -0.0429,
"bb_edge": -1.525,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "663687",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2384,
"sample_weight": 0.456,
"run_prevention_factor": 0.9797,
"strikeout_factor": 1.007,
"walk_factor": 1.0556,
"homer_factor": 0.9273,
"woba_minus_xwoba": 0.027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663687",
"espn_id": 41364,
"player_name": "Hogan Harris",
"team": "ATH",
"role": "pitcher",
"espn_rank": 74,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 74,
"gp_value": 37.0,
"gp_rank": 3,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.1153,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 6.0,
"sv_rank": 23,
"hld_value": 10.0,
"hld_rank": 22,
"ip_value": 34.2,
"ip_rank": 192,
"h_value": 29.0,
"h_rank": 219,
"er_value": 12.0,
"er_rank": 266,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 24.0,
"bb_rank": 68,
"k_value": 40.0,
"k_rank": 160,
"k_per_9_value": 10.384615,
"k_per_9_rank": 22,
"whip_value": 1.5288,
"whip_rank": null,
"war_value": 1.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9907,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9907,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0254,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9668,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0032,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 4,
"H": 8,
"BB": 3,
"SO": 13,
"HR": 1,
"ERA": 3.483870967741936,
"WHIP": 1.0645161290322582,
"K9": 11.322580645161292,
"HR9": 0.870967741935484,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "663687",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.884,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5793,
"prior_weight": 0.4207
},
"role": "pitcher",
"player_id": "663687",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 37,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 2.0,
"SO": 7.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 114.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.4,
"BB": 0.4,
"SO": 1.4,
"HR": 0.2,
"BF": 4.8,
"Pitches": 22.8
},
"rates": {
"ERA": 6.3529,
"WHIP": 1.5882,
"ER_per_IP": 0.70588,
"H_per_IP": 1.23529,
"BB_per_IP": 0.35294,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 3.0,
"SO": 13.0,
"HR": 1.0,
"BF": 40.0,
"Pitches": 189.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.3,
"SO": 1.3,
"HR": 0.1,
"BF": 4.0,
"Pitches": 18.9
},
"rates": {
"ERA": 3.4839,
"WHIP": 1.0645,
"ER_per_IP": 0.3871,
"H_per_IP": 0.77419,
"BB_per_IP": 0.29032,
"SO_per_IP": 1.25806,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 37,
"totals": {
"IP": 34.2,
"ER": 12.0,
"R": 13.0,
"H": 29.0,
"BB": 24.0,
"SO": 40.0,
"HR": 3.0,
"BF": 157.0,
"Pitches": 665.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3243,
"R": 0.3514,
"H": 0.7838,
"BB": 0.6486,
"SO": 1.0811,
"HR": 0.0811,
"BF": 4.2432,
"Pitches": 17.973
},
"rates": {
"ERA": 3.1154,
"WHIP": 1.5288,
"ER_per_IP": 0.34615,
"H_per_IP": 0.83654,
"BB_per_IP": 0.69231,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.08654
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.513,
"predicted_H": 0.986,
"predicted_BB": 0.384,
"predicted_SO": 1.105,
"predicted_HR": 0.137,
"predicted_ERA": 4.62,
"predicted_WHIP": 1.3695
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5277,
"form_weight": 0.4723,
"form_reliability": 0.5793,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.884,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5793,
"prior_weight": 0.4207
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.513,
"final": 0.2423,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.986,
"final": 0.4656,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.384,
"final": 0.7091,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.105,
"final": 1.5773,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.137,
"final": 0.0647,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.62,
"final": 4.62,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3695,
"final": 1.3695,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Mark Leiter Jr. |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0748 |
| ESPN Rank | 260 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 2 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 4.8539 |
| Season WHIP | 1.3820 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "OAK",
"games": 79,
"wins": 38,
"losses": 41,
"win_pct": 0.481,
"runs_scored": 370.0,
"runs_allowed": 419.0,
"run_differential": -49.0,
"run_differential_per_game": -0.6203,
"avg_runs_scored": 4.6835,
"avg_runs_allowed": 5.3038,
"offense_index": 1.0382,
"defense_index": 0.8505,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 7.2,
"avg_runs_allowed": 7.5,
"run_differential": -3.0
},
"available": true,
"quality_score": -0.0568
},
"opponent": {
"team": "LAA",
"games": 82,
"wins": 35,
"losses": 47,
"win_pct": 0.4268,
"runs_scored": 368.0,
"runs_allowed": 406.0,
"run_differential": -38.0,
"run_differential_per_game": -0.4634,
"avg_runs_scored": 4.4878,
"avg_runs_allowed": 4.9512,
"offense_index": 0.9948,
"defense_index": 0.9111,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.6,
"avg_runs_allowed": 3.6,
"run_differential": 20.0
},
"available": true,
"quality_score": -0.0837
},
"edges": {
"quality_edge": 0.0269,
"offense_edge": 0.0382,
"opponent_offense_edge": -0.0052,
"defense_strength": -0.1495,
"opponent_defense_weakness": 0.0889,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9968,
"run_prevention": 1.0128,
"strikeout": 1.0012
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "643410",
"profile": {
"available": true,
"pitcher_id": "643410",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 97.0,
"k_percent": 24.4,
"bb_percent": 7.9,
"woba": 0.309,
"xwoba": 0.318,
"sweet_spot_percent": 40.0,
"barrel_batted_rate": 3.5,
"hard_hit_percent": 30.6,
"avg_best_speed": 76.1031,
"avg_hyper_speed": 92.7344,
"whiff_percent": 27.6,
"swing_percent": 46.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2119,
"command_and_miss": 0.2821,
"regression_edge": -0.2571,
"xwoba_edge": -0.0857,
"barrel_edge": 0.8444,
"hard_hit_edge": 1.1,
"whiff_edge": 0.2714,
"bb_edge": 0.325,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "643410",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0748,
"sample_weight": 0.45,
"run_prevention_factor": 0.9936,
"strikeout_factor": 1.0098,
"walk_factor": 0.9883,
"homer_factor": 0.951,
"woba_minus_xwoba": -0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643410",
"espn_id": 36202,
"player_name": "Mark Leiter Jr.",
"team": "ATH",
"role": "pitcher",
"espn_rank": 260,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 260,
"gp_value": 32.0,
"gp_rank": 31,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.8539,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 4.0,
"sv_rank": 30,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 29.2,
"ip_rank": 259,
"h_value": 31.0,
"h_rank": 204,
"er_value": 16.0,
"er_rank": 197,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 10.0,
"bb_rank": 303,
"k_value": 31.0,
"k_rank": 239,
"k_per_9_value": 9.404494,
"k_per_9_rank": 24,
"whip_value": 1.382,
"whip_rank": null,
"war_value": 0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9971,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9971,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9947,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9779,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0044,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 1,
"H": 5,
"BB": 4,
"SO": 8,
"HR": 0,
"ERA": 1.0,
"WHIP": 1.0,
"K9": 8.0,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "643410",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"role": "pitcher",
"player_id": "643410",
"report_date": "20260618_L",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 2.0,
"SO": 6.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 77.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.4,
"SO": 1.2,
"HR": 0.0,
"BF": 3.4,
"Pitches": 15.4
},
"rates": {
"ERA": 2.0769,
"WHIP": 1.1538,
"ER_per_IP": 0.23077,
"H_per_IP": 0.69231,
"BB_per_IP": 0.46154,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 4.0,
"SO": 8.0,
"HR": 0.0,
"BF": 33.0,
"Pitches": 132.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.4,
"SO": 0.8,
"HR": 0.0,
"BF": 3.3,
"Pitches": 13.2
},
"rates": {
"ERA": 1.0,
"WHIP": 1.0,
"ER_per_IP": 0.11111,
"H_per_IP": 0.55556,
"BB_per_IP": 0.44444,
"SO_per_IP": 0.88889,
"HR_per_IP": 0.0
}
},
"season": {
"games": 32,
"totals": {
"IP": 29.2,
"ER": 16.0,
"R": 16.0,
"H": 31.0,
"BB": 10.0,
"SO": 31.0,
"HR": 2.0,
"BF": 127.0,
"Pitches": 481.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.9688,
"BB": 0.3125,
"SO": 0.9688,
"HR": 0.0625,
"BF": 3.9688,
"Pitches": 15.0312
},
"rates": {
"ERA": 4.8539,
"WHIP": 1.382,
"ER_per_IP": 0.53933,
"H_per_IP": 1.04494,
"BB_per_IP": 0.33708,
"SO_per_IP": 1.04494,
"HR_per_IP": 0.06742
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.366,
"predicted_H": 0.834,
"predicted_BB": 0.4,
"predicted_SO": 1.049,
"predicted_HR": 0.074,
"predicted_ERA": 3.2897,
"predicted_WHIP": 1.2336
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.544,
"form_weight": 0.456,
"form_reliability": 0.5409,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 0.366,
"final": 1.2548,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.834,
"final": 1.4683,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.4,
"final": 0.1824,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.049,
"final": 1.5663,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.074,
"final": 0.5777,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2897,
"final": 3.2897,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2336,
"final": 1.2336,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.224 | 1.000 | 0.000 | Hitting_2B | 0.233 | 0.000 | 0.767 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.530 | 4.000 | 5.000 | Hitting_AB | 4.171 | 3.000 | -0.171 | 1.000 |
| predicted_AVG | 0.235 | 0.250 | 0.200 | Hitting_AVG | 0.300 | 0.000 | -0.050 | 0.250 |
| predicted_BB | 0.358 | 0.000 | 0.000 | Hitting_BB | 0.420 | 1.000 | -0.420 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 1.070 | 1.000 | 1.000 | Hitting_H | 1.253 | 0.000 | -0.253 | 1.000 |
| predicted_HR | 0.220 | 0.000 | 0.000 | Hitting_HR | 0.261 | 0.000 | -0.261 | 0.000 |
| predicted_OBP | 0.316 | 0.250 | 0.200 | Hitting_OBP | 0.368 | 0.250 | -0.118 | 0.000 |
| predicted_R | 0.701 | 1.000 | 1.000 | Hitting_R | 0.727 | 1.000 | 0.273 | 0.000 |
| predicted_RBI | 0.480 | 1.000 | 1.000 | Hitting_RBI | 0.563 | 0.000 | 0.437 | 1.000 |
| predicted_SLG | 0.454 | 0.500 | 0.200 | Hitting_SLG | 0.544 | 0.000 | -0.044 | 0.500 |
| predicted_SO | 0.866 | 0.000 | 1.000 | Hitting_SO | 0.902 | 0.000 | -0.902 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_2B: 0.2240 -> 1.0000 (boost 0.7760, better) |
| Biggest Deboost | predicted_SO: 0.8660 -> 0.0000 (deboost -0.8660, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2350 -> 0.2416 (boost 0.0066, better) | predicted_AB: 4.5300 -> 4.4079 (deboost -0.1221, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3170 -> 0.3037 (deboost -0.0133, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_AB: 4.4079 -> 5.0000 (boost 0.5921, better) | predicted_BB: 0.3716 -> 0.0000 (deboost -0.3716, worse) | AB rounded to 5 (raw=4.53), rates preserved: AVG=0.238 HR/AB=0.050 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6987 -> 1.0000 (boost 0.3013, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4504 -> 0.2000 (deboost -0.2504, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4504 (boost 0.2504, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669127",
"player_name": "Shea Langeliers",
"position": "C",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.224,
"predicted_3B": 0.0,
"predicted_AB": 4.53,
"predicted_AVG": 0.235,
"predicted_BB": 0.358,
"predicted_H": 1.07,
"predicted_HR": 0.22,
"predicted_OBP": 0.316,
"predicted_R": 0.701,
"predicted_RBI": 0.48,
"predicted_SLG": 0.454,
"predicted_SO": 0.866
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2193,
"predicted_3B": 0.0004,
"predicted_AB": 4.4079,
"predicted_AVG": 0.2416,
"predicted_BB": 0.3707,
"predicted_H": 1.067,
"predicted_HBP": 0.037,
"predicted_HR": 0.2251,
"predicted_OBP": 0.317,
"predicted_R": 0.6857,
"predicted_RBI": 0.4609,
"predicted_SLG": 0.4589,
"predicted_SO": 0.8465
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.224,
"after": 0.2193,
"delta": -0.0047,
"percent_delta": -0.021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.53,
"after": 4.4079,
"delta": -0.1221,
"percent_delta": -0.027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2416,
"delta": 0.0066,
"percent_delta": 0.0281,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.358,
"after": 0.3707,
"delta": 0.0127,
"percent_delta": 0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.067,
"delta": -0.003,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.2251,
"delta": 0.0051,
"percent_delta": 0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.317,
"delta": 0.001,
"percent_delta": 0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.701,
"after": 0.6857,
"delta": -0.0153,
"percent_delta": -0.0218,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.4609,
"delta": -0.0191,
"percent_delta": -0.0398,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4589,
"delta": 0.0049,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.866,
"after": 0.8465,
"delta": -0.0195,
"percent_delta": -0.0225,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2416,
"delta": 0.0066,
"percent_delta": 0.0281,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.53,
"after": 4.4079,
"delta": -0.1221,
"percent_delta": -0.027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2193,
"predicted_3B": 0.0004,
"predicted_AB": 4.4079,
"predicted_AVG": 0.245,
"predicted_BB": 0.3716,
"predicted_H": 1.0798,
"predicted_HBP": 0.037,
"predicted_HR": 0.2284,
"predicted_OBP": 0.3037,
"predicted_R": 0.6987,
"predicted_RBI": 0.4696,
"predicted_SLG": 0.4504,
"predicted_SO": 0.8446
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2193,
"after": 0.2193,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4079,
"after": 4.4079,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2416,
"after": 0.245,
"delta": 0.0034,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3707,
"after": 0.3716,
"delta": 0.0009,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.067,
"after": 1.0798,
"delta": 0.0128,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.037,
"after": 0.037,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2251,
"after": 0.2284,
"delta": 0.0033,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3037,
"delta": -0.0133,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6857,
"after": 0.6987,
"delta": 0.013,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4609,
"after": 0.4696,
"delta": 0.0087,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4589,
"after": 0.4504,
"delta": -0.0085,
"percent_delta": -0.0185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8465,
"after": 0.8446,
"delta": -0.0019,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3037,
"delta": -0.0133,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.53), rates preserved: AVG=0.238 HR/AB=0.050",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2193,
"after": 0.0,
"delta": -0.2193,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4079,
"after": 5.0,
"delta": 0.5921,
"percent_delta": 0.1343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3716,
"after": 0.0,
"delta": -0.3716,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0798,
"after": 1.0,
"delta": -0.0798,
"percent_delta": -0.0739,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.037,
"after": 0.0,
"delta": -0.037,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2284,
"after": 0.0,
"delta": -0.2284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4696,
"after": 1.0,
"delta": 0.5304,
"percent_delta": 1.1295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8446,
"after": 1.0,
"delta": 0.1554,
"percent_delta": 0.184,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.4079,
"after": 5.0,
"delta": 0.5921,
"percent_delta": 0.1343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3716,
"after": 0.0,
"delta": -0.3716,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6987,
"after": 1.0,
"delta": 0.3013,
"percent_delta": 0.4312,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6987,
"after": 1.0,
"delta": 0.3013,
"percent_delta": 0.4312,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2,
"delta": -0.045,
"percent_delta": -0.1837,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3037,
"after": 0.2,
"delta": -0.1037,
"percent_delta": -0.3415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4504,
"after": 0.2,
"delta": -0.2504,
"percent_delta": -0.556,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4504,
"after": 0.2,
"delta": -0.2504,
"percent_delta": -0.556,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.245,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3037,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4504,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.245,
"delta": 0.045,
"percent_delta": 0.2249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.3037,
"delta": 0.1037,
"percent_delta": 0.5183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4504,
"delta": 0.2504,
"percent_delta": 1.2519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.4504,
"delta": 0.2504,
"percent_delta": 1.2519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.224,
"after": 1.0,
"delta": 0.776,
"percent_delta": 3.4643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.53,
"after": 4.0,
"delta": -0.53,
"percent_delta": -0.117,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.245,
"delta": 0.01,
"percent_delta": 0.0426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.358,
"after": 0.0,
"delta": -0.358,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.0,
"delta": -0.07,
"percent_delta": -0.0654,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.0,
"delta": -0.22,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.3037,
"delta": -0.0123,
"percent_delta": -0.0389,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.701,
"after": 1.0,
"delta": 0.299,
"percent_delta": 0.4265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 1.0,
"delta": 0.52,
"percent_delta": 1.0833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4504,
"delta": -0.0036,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.866,
"after": 0.0,
"delta": -0.866,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.224,
"after": 1.0,
"delta": 0.776,
"percent_delta": 3.4643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.866,
"after": 0.0,
"delta": -0.866,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.224 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.530 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.358 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.220 | - |
| predicted_OBP | 0.316 | - |
| predicted_R | 0.701 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.454 | - |
| predicted_SO | 0.866 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | -0.005 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.408 | -0.122 |
| predicted_AVG | 0.242 | 0.007 |
| predicted_BB | 0.371 | 0.013 |
| predicted_H | 1.067 | -0.003 |
| predicted_HBP | 0.037 | - |
| predicted_HR | 0.225 | 0.005 |
| predicted_OBP | 0.317 | 0.001 |
| predicted_R | 0.686 | -0.015 |
| predicted_RBI | 0.461 | -0.019 |
| predicted_SLG | 0.459 | 0.005 |
| predicted_SO | 0.847 | -0.019 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.408 | 0.000 |
| predicted_AVG | 0.245 | 0.003 |
| predicted_BB | 0.372 | 0.001 |
| predicted_H | 1.080 | 0.013 |
| predicted_HBP | 0.037 | 0.000 |
| predicted_HR | 0.228 | 0.003 |
| predicted_OBP | 0.304 | -0.013 |
| predicted_R | 0.699 | 0.013 |
| predicted_RBI | 0.470 | 0.009 |
| predicted_SLG | 0.450 | -0.008 |
| predicted_SO | 0.845 | -0.002 |
AB rounded to 5 (raw=4.53), rates preserved: AVG=0.238 HR/AB=0.050
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.219 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | 0.592 |
| predicted_AVG | 0.200 | -0.045 |
| predicted_BB | 0.000 | -0.372 |
| predicted_H | 1.000 | -0.080 |
| predicted_HR | 0.000 | -0.228 |
| predicted_OBP | 0.200 | -0.104 |
| predicted_R | 1.000 | 0.301 |
| predicted_RBI | 1.000 | 0.530 |
| predicted_SLG | 0.200 | -0.250 |
| predicted_SO | 1.000 | 0.155 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 4.000 | 1.000 | 0.000 | 1.000 | 1.000 | 3.000 | 3.000 | 2.000 | 0.1905 | 0.2917 | 0.3810 | 0.1905 | 0.0476 | 0.0476 | 0.1429 | 0.0952 |
| last_10 | 0.20 | 10 | - | 47.000 | 11.000 | 2.000 | 0.000 | 2.000 | 3.000 | 7.000 | 3.000 | 11.000 | 0.2340 | 0.2800 | 0.4043 | 0.2340 | 0.0425 | 0.0638 | 0.0638 | 0.2340 |
| season | 0.60 | 67 | - | 279.000 | 77.000 | 15.000 | 0.000 | 18.000 | 36.000 | 47.000 | 24.000 | 58.000 | 0.2760 | 0.3409 | 0.5233 | 0.2760 | 0.0645 | 0.1290 | 0.0860 | 0.2079 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2130 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.2420 |
| predicted_AVG | 0.2505 |
| predicted_BB | 0.3880 |
| predicted_H | 1.0630 |
| predicted_HBP | 0.0370 |
| predicted_HR | 0.2320 |
| predicted_OBP | 0.3184 |
| predicted_R | 0.6650 |
| predicted_RBI | 0.4350 |
| predicted_SLG | 0.4656 |
| predicted_SO | 0.8200 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2240 | 0.2130 | 0.2193 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.5300 | 4.2420 | 4.4079 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2505 | 0.2416 | model_form_blend |
| predicted_BB | 0.3580 | 0.3880 | 0.3707 | model_form_blend |
| predicted_H | 1.0700 | 1.0630 | 1.0670 | model_form_blend |
| predicted_HBP | - | 0.0370 | 0.0370 | form_only |
| predicted_HR | 0.2200 | 0.2320 | 0.2251 | model_form_blend |
| predicted_OBP | 0.3160 | 0.3184 | 0.3170 | model_form_blend |
| predicted_R | 0.7010 | 0.6650 | 0.6857 | model_form_blend |
| predicted_RBI | 0.4800 | 0.4350 | 0.4609 | model_form_blend |
| predicted_SLG | 0.4540 | 0.4656 | 0.4589 | model_form_blend |
| predicted_SO | 0.8660 | 0.8200 | 0.8465 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 245 |
| Season rows before report date | 245 |
| Report year | 2026 |
| Profile rows used | 67 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.276 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 669127 |
| playerID | 669127 |
| playerName | Shea Langeliers |
| pos | C |
| started | True |
| startingPosition | DH |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.8 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.372 |
| sl_xwoba | 0.375 |
| sl_xba | 0.281 |
| sl_xslg | 0.532 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 14.4 |
| sl_hard_hit_percent | 43.7 |
| sl_exit_velocity_avg | 91.6 |
| sl_launch_angle_avg | 21.2 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 51.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.167 | 1.000 | 0.000 | Hitting_2B | 0.135 | 0.000 | 0.865 | 1.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_AB | 3.630 | 5.000 | 4.000 | Hitting_AB | 3.641 | 4.000 | 1.359 | 1.000 |
| predicted_AVG | 0.261 | 0.200 | 0.250 | Hitting_AVG | 0.266 | 0.250 | -0.066 | -0.050 |
| predicted_BB | 0.222 | 0.000 | 0.000 | Hitting_BB | 0.244 | 0.000 | -0.244 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_H | 0.400 | 1.000 | 1.000 | Hitting_H | 0.968 | 1.000 | 0.032 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.199 | 1.000 | -0.199 | -1.000 |
| predicted_OBP | 0.332 | 0.200 | 0.250 | Hitting_OBP | 0.318 | 0.250 | -0.118 | -0.050 |
| predicted_R | 0.611 | 1.000 | 1.000 | Hitting_R | 0.635 | 1.000 | 0.365 | 0.000 |
| predicted_RBI | 0.260 | 1.000 | 0.000 | Hitting_RBI | 0.519 | 1.000 | 0.481 | 0.000 |
| predicted_SLG | 0.534 | 0.400 | 0.250 | Hitting_SLG | 0.484 | 1.000 | -0.084 | -0.600 |
| predicted_SO | 0.981 | 2.000 | 1.000 | Hitting_SO | 0.974 | 1.000 | 1.026 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.6300 -> 5.0000 (boost 1.3700, better) |
| Biggest Deboost | predicted_BB: 0.2220 -> 0.0000 (deboost -0.2220, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 8 | 0 | predicted_H: 0.4000 -> 0.7465 (boost 0.3465, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5775 -> 0.4188 (deboost -0.1587, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 2 | 5 | predicted_AB: 3.6883 -> 4.0000 (boost 0.3117, better) | predicted_RBI: 0.4469 -> 0.0000 (deboost -0.4469, worse) | AB rounded to 4 (raw=3.69), rates preserved: AVG=0.205 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7220 -> 1.0000 (boost 0.2780, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2048 -> 0.2500 (boost 0.0452, better) | predicted_SLG: 0.4188 -> 0.2500 (deboost -0.1688, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 3 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4188 (boost 0.1688, better) | predicted_AVG: 0.2500 -> 0.2048 (deboost -0.0452, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "680869",
"player_name": "Zack Gelof",
"position": "3B",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.167,
"predicted_3B": 0.019,
"predicted_AB": 3.63,
"predicted_AVG": 0.261,
"predicted_BB": 0.222,
"predicted_H": 0.4,
"predicted_HR": 0.1,
"predicted_OBP": 0.332,
"predicted_R": 0.611,
"predicted_RBI": 0.26,
"predicted_SLG": 0.534,
"predicted_SO": 0.981
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.186,
"predicted_3B": 0.0161,
"predicted_AB": 3.6883,
"predicted_AVG": 0.2888,
"predicted_BB": 0.2162,
"predicted_H": 0.7465,
"predicted_HBP": 0.075,
"predicted_HR": 0.1876,
"predicted_OBP": 0.3498,
"predicted_R": 0.7086,
"predicted_RBI": 0.4386,
"predicted_SLG": 0.5775,
"predicted_SO": 0.9562
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.186,
"delta": 0.019,
"percent_delta": 0.1138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0161,
"delta": -0.0029,
"percent_delta": -0.1526,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.63,
"after": 3.6883,
"delta": 0.0583,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2888,
"delta": 0.0278,
"percent_delta": 0.1065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.2162,
"delta": -0.0058,
"percent_delta": -0.0261,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4,
"after": 0.7465,
"delta": 0.3465,
"percent_delta": 0.8663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1876,
"delta": 0.0876,
"percent_delta": 0.876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3498,
"delta": 0.0178,
"percent_delta": 0.0536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.611,
"after": 0.7086,
"delta": 0.0976,
"percent_delta": 0.1597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.4386,
"delta": 0.1786,
"percent_delta": 0.6869,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.534,
"after": 0.5775,
"delta": 0.0435,
"percent_delta": 0.0815,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.981,
"after": 0.9562,
"delta": -0.0248,
"percent_delta": -0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 8,
"deboosted_metrics": 0,
"better_metrics": 8,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.4,
"after": 0.7465,
"delta": 0.3465,
"percent_delta": 0.8663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 54
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.186,
"predicted_3B": 0.0161,
"predicted_AB": 3.6883,
"predicted_AVG": 0.2048,
"predicted_BB": 0.2167,
"predicted_H": 0.7555,
"predicted_HBP": 0.075,
"predicted_HR": 0.1904,
"predicted_OBP": 0.249,
"predicted_R": 0.722,
"predicted_RBI": 0.4469,
"predicted_SLG": 0.4188,
"predicted_SO": 0.954
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.186,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0161,
"after": 0.0161,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6883,
"after": 3.6883,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2888,
"after": 0.2048,
"delta": -0.084,
"percent_delta": -0.2909,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2162,
"after": 0.2167,
"delta": 0.0005,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7465,
"after": 0.7555,
"delta": 0.009,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.075,
"after": 0.075,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1876,
"after": 0.1904,
"delta": 0.0028,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3498,
"after": 0.249,
"delta": -0.1008,
"percent_delta": -0.2882,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7086,
"after": 0.722,
"delta": 0.0134,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4386,
"after": 0.4469,
"delta": 0.0083,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5775,
"after": 0.4188,
"delta": -0.1587,
"percent_delta": -0.2748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9562,
"after": 0.954,
"delta": -0.0022,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5775,
"after": 0.4188,
"delta": -0.1587,
"percent_delta": -0.2748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.69), rates preserved: AVG=0.205 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.0,
"delta": -0.186,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0161,
"after": 0.0,
"delta": -0.0161,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6883,
"after": 4.0,
"delta": 0.3117,
"percent_delta": 0.0845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2167,
"after": 0.0,
"delta": -0.2167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7555,
"after": 1.0,
"delta": 0.2445,
"percent_delta": 0.3236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.075,
"after": 0.0,
"delta": -0.075,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1904,
"after": 0.0,
"delta": -0.1904,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4469,
"after": 0.0,
"delta": -0.4469,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.954,
"after": 1.0,
"delta": 0.046,
"percent_delta": 0.0482,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.6883,
"after": 4.0,
"delta": 0.3117,
"percent_delta": 0.0845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4469,
"after": 0.0,
"delta": -0.4469,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.722,
"after": 1.0,
"delta": 0.278,
"percent_delta": 0.385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.722,
"after": 1.0,
"delta": 0.278,
"percent_delta": 0.385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2048,
"after": 0.25,
"delta": 0.0452,
"percent_delta": 0.2207,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.249,
"after": 0.25,
"delta": 0.001,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4188,
"after": 0.25,
"delta": -0.1688,
"percent_delta": -0.4031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2048,
"after": 0.25,
"delta": 0.0452,
"percent_delta": 0.2207,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4188,
"after": 0.25,
"delta": -0.1688,
"percent_delta": -0.4031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2048,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.249,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4188,
"predicted_SO": 2.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2048,
"delta": -0.0452,
"percent_delta": -0.1807,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.249,
"delta": -0.001,
"percent_delta": -0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4188,
"delta": 0.1688,
"percent_delta": 0.6753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4188,
"delta": 0.1688,
"percent_delta": 0.6753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2048,
"delta": -0.0452,
"percent_delta": -0.1807,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 1.0,
"delta": 0.833,
"percent_delta": 4.988,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.63,
"after": 5.0,
"delta": 1.37,
"percent_delta": 0.3774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2048,
"delta": -0.0562,
"percent_delta": -0.2153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4,
"after": 1.0,
"delta": 0.6,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.249,
"delta": -0.083,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.611,
"after": 1.0,
"delta": 0.389,
"percent_delta": 0.6367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 1.0,
"delta": 0.74,
"percent_delta": 2.8462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.534,
"after": 0.4188,
"delta": -0.1152,
"percent_delta": -0.2157,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.981,
"after": 2.0,
"delta": 1.019,
"percent_delta": 1.0387,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.63,
"after": 5.0,
"delta": 1.37,
"percent_delta": 0.3774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.167 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 3.630 | - |
| predicted_AVG | 0.261 | - |
| predicted_BB | 0.222 | - |
| predicted_H | 0.400 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.611 | - |
| predicted_RBI | 0.260 | - |
| predicted_SLG | 0.534 | - |
| predicted_SO | 0.981 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.186 | 0.019 |
| predicted_3B | 0.016 | -0.003 |
| predicted_AB | 3.688 | 0.058 |
| predicted_AVG | 0.289 | 0.028 |
| predicted_BB | 0.216 | -0.006 |
| predicted_H | 0.747 | 0.347 |
| predicted_HBP | 0.075 | - |
| predicted_HR | 0.188 | 0.088 |
| predicted_OBP | 0.350 | 0.018 |
| predicted_R | 0.709 | 0.098 |
| predicted_RBI | 0.439 | 0.179 |
| predicted_SLG | 0.578 | 0.043 |
| predicted_SO | 0.956 | -0.025 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.186 | 0.000 |
| predicted_3B | 0.016 | 0.000 |
| predicted_AB | 3.688 | 0.000 |
| predicted_AVG | 0.205 | -0.084 |
| predicted_BB | 0.217 | 0.001 |
| predicted_H | 0.755 | 0.009 |
| predicted_HBP | 0.075 | 0.000 |
| predicted_HR | 0.190 | 0.003 |
| predicted_OBP | 0.249 | -0.101 |
| predicted_R | 0.722 | 0.013 |
| predicted_RBI | 0.447 | 0.008 |
| predicted_SLG | 0.419 | -0.159 |
| predicted_SO | 0.954 | -0.002 |
AB rounded to 4 (raw=3.69), rates preserved: AVG=0.205 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.186 |
| predicted_3B | 0.000 | -0.016 |
| predicted_AB | 4.000 | 0.312 |
| predicted_AVG | 0.250 | 0.045 |
| predicted_BB | 0.000 | -0.217 |
| predicted_H | 1.000 | 0.245 |
| predicted_HR | 0.000 | -0.190 |
| predicted_OBP | 0.250 | 0.001 |
| predicted_R | 1.000 | 0.278 |
| predicted_RBI | 0.000 | -0.447 |
| predicted_SLG | 0.250 | -0.169 |
| predicted_SO | 1.000 | 0.046 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 9.000 | 1.000 | 0.000 | 3.000 | 6.000 | 7.000 | 1.000 | 3.000 | 0.4737 | 0.5238 | 1.0000 | 0.4737 | 0.1579 | 0.3158 | 0.0526 | 0.1579 |
| last_10 | 0.20 | 10 | - | 41.000 | 15.000 | 4.000 | 0.000 | 5.000 | 8.000 | 13.000 | 1.000 | 11.000 | 0.3659 | 0.3953 | 0.8293 | 0.3659 | 0.1220 | 0.1951 | 0.0244 | 0.2683 |
| season | 0.60 | 54 | - | 196.000 | 56.000 | 9.000 | 1.000 | 11.000 | 29.000 | 33.000 | 12.000 | 53.000 | 0.2857 | 0.3333 | 0.5102 | 0.2857 | 0.0561 | 0.1480 | 0.0612 | 0.2704 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2130 |
| predicted_3B | 0.0120 |
| predicted_AB | 3.7710 |
| predicted_AVG | 0.3282 |
| predicted_BB | 0.2080 |
| predicted_H | 1.2380 |
| predicted_HBP | 0.0750 |
| predicted_HR | 0.3120 |
| predicted_OBP | 0.3750 |
| predicted_R | 0.8470 |
| predicted_RBI | 0.6920 |
| predicted_SLG | 0.6392 |
| predicted_SO | 0.9210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.2130 | 0.1860 | model_form_blend |
| predicted_3B | 0.0190 | 0.0120 | 0.0161 | model_form_blend |
| predicted_AB | 3.6300 | 3.7710 | 3.6883 | model_form_blend |
| predicted_AVG | 0.2610 | 0.3282 | 0.2888 | model_form_blend |
| predicted_BB | 0.2220 | 0.2080 | 0.2162 | model_form_blend |
| predicted_H | 0.4000 | 1.2380 | 0.7465 | model_form_blend |
| predicted_HBP | - | 0.0750 | 0.0750 | form_only |
| predicted_HR | 0.1000 | 0.3120 | 0.1876 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3750 | 0.3498 | model_form_blend |
| predicted_R | 0.6110 | 0.8470 | 0.7086 | model_form_blend |
| predicted_RBI | 0.2600 | 0.6920 | 0.4386 | model_form_blend |
| predicted_SLG | 0.5340 | 0.6392 | 0.5775 | model_form_blend |
| predicted_SO | 0.9810 | 0.9210 | 0.9562 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 156 |
| Season rows before report date | 156 |
| Report year | 2026 |
| Profile rows used | 54 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.286 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B-2B |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 680869 |
| playerID | 680869 |
| playerName | Zack Gelof |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.365 |
| sl_xwoba | 0.288 |
| sl_xba | 0.222 |
| sl_xslg | 0.385 |
| sl_sweet_spot_percent | 28.3 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 42.1 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 17.2 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 46.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.178 | 0.000 | 0.000 | Hitting_2B | 0.207 | 0.000 | -0.207 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 3.970 | 4.000 | 4.000 | Hitting_AB | 3.639 | 4.000 | 0.361 | 0.000 |
| predicted_AVG | 0.263 | 0.250 | 0.250 | Hitting_AVG | 0.287 | 0.250 | -0.037 | 0.000 |
| predicted_BB | 0.932 | 0.000 | 1.000 | Hitting_BB | 0.955 | 0.000 | -0.955 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.015 | 0.000 | -0.015 | 0.000 |
| predicted_H | 1.040 | 1.000 | 1.000 | Hitting_H | 1.045 | 1.000 | -0.045 | 0.000 |
| predicted_HR | 0.280 | 0.000 | 0.000 | Hitting_HR | 0.180 | 0.000 | -0.180 | 0.000 |
| predicted_OBP | 0.405 | 0.250 | 0.400 | Hitting_OBP | 0.439 | 0.250 | -0.189 | 0.000 |
| predicted_R | 0.726 | 0.000 | 1.000 | Hitting_R | 0.677 | 1.000 | -0.677 | -1.000 |
| predicted_RBI | 0.870 | 0.000 | 1.000 | Hitting_RBI | 0.718 | 0.000 | -0.718 | 0.000 |
| predicted_SLG | 0.545 | 0.250 | 0.250 | Hitting_SLG | 0.503 | 0.250 | -0.253 | 0.000 |
| predicted_SO | 1.315 | 3.000 | 1.000 | Hitting_SO | 1.338 | 3.000 | 1.662 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 5 |
| Better Metrics | 3 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_SO: 1.3150 -> 3.0000 (boost 1.6850, worse) |
| Biggest Deboost | predicted_BB: 0.9320 -> 0.0000 (deboost -0.9320, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 5 | 1 | 5 | 1 | predicted_R: 0.7260 -> 0.7895 (boost 0.0635, better) | predicted_AB: 3.9700 -> 3.8801 (deboost -0.0899, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.5850 -> 0.5792 (deboost -0.0058, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_AB: 3.8801 -> 4.0000 (boost 0.1199, better) | predicted_HR: 0.3109 -> 0.0000 (deboost -0.3109, worse) | AB rounded to 4 (raw=3.97), rates preserved: AVG=0.281 HR/AB=0.078 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8044 -> 1.0000 (boost 0.1956, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5792 -> 0.2500 (deboost -0.3292, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 0 | 4 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5792 (boost 0.3292, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701762",
"player_name": "Nick Kurtz",
"position": "1B",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.178,
"predicted_3B": 0.014,
"predicted_AB": 3.97,
"predicted_AVG": 0.263,
"predicted_BB": 0.932,
"predicted_H": 1.04,
"predicted_HR": 0.28,
"predicted_OBP": 0.405,
"predicted_R": 0.726,
"predicted_RBI": 0.87,
"predicted_SLG": 0.545,
"predicted_SO": 1.315
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1746,
"predicted_3B": 0.0119,
"predicted_AB": 3.8801,
"predicted_AVG": 0.2856,
"predicted_BB": 0.8915,
"predicted_H": 1.103,
"predicted_HBP": 0.019,
"predicted_HR": 0.3064,
"predicted_OBP": 0.4208,
"predicted_R": 0.7895,
"predicted_RBI": 0.9156,
"predicted_SLG": 0.585,
"predicted_SO": 1.2975
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.1746,
"delta": -0.0034,
"percent_delta": -0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.97,
"after": 3.8801,
"delta": -0.0899,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2856,
"delta": 0.0226,
"percent_delta": 0.0859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.932,
"after": 0.8915,
"delta": -0.0405,
"percent_delta": -0.0435,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.103,
"delta": 0.063,
"percent_delta": 0.0606,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.28,
"after": 0.3064,
"delta": 0.0264,
"percent_delta": 0.0943,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.405,
"after": 0.4208,
"delta": 0.0158,
"percent_delta": 0.039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.726,
"after": 0.7895,
"delta": 0.0635,
"percent_delta": 0.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.87,
"after": 0.9156,
"delta": 0.0456,
"percent_delta": 0.0524,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.545,
"after": 0.585,
"delta": 0.04,
"percent_delta": 0.0734,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.315,
"after": 1.2975,
"delta": -0.0175,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.726,
"after": 0.7895,
"delta": 0.0635,
"percent_delta": 0.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.97,
"after": 3.8801,
"delta": -0.0899,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 73
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1746,
"predicted_3B": 0.0119,
"predicted_AB": 3.8801,
"predicted_AVG": 0.2877,
"predicted_BB": 0.8936,
"predicted_H": 1.1162,
"predicted_HBP": 0.019,
"predicted_HR": 0.3109,
"predicted_OBP": 0.421,
"predicted_R": 0.8044,
"predicted_RBI": 0.9329,
"predicted_SLG": 0.5792,
"predicted_SO": 1.2945
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1746,
"after": 0.1746,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8801,
"after": 3.8801,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2856,
"after": 0.2877,
"delta": 0.0021,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8915,
"after": 0.8936,
"delta": 0.0021,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.103,
"after": 1.1162,
"delta": 0.0132,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3064,
"after": 0.3109,
"delta": 0.0045,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4208,
"after": 0.421,
"delta": 0.0002,
"percent_delta": 0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7895,
"after": 0.8044,
"delta": 0.0149,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9156,
"after": 0.9329,
"delta": 0.0173,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.585,
"after": 0.5792,
"delta": -0.0058,
"percent_delta": -0.0099,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2975,
"after": 1.2945,
"delta": -0.003,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.585,
"after": 0.5792,
"delta": -0.0058,
"percent_delta": -0.0099,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.97), rates preserved: AVG=0.281 HR/AB=0.078",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1746,
"after": 0.0,
"delta": -0.1746,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8801,
"after": 4.0,
"delta": 0.1199,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8936,
"after": 1.0,
"delta": 0.1064,
"percent_delta": 0.1191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1162,
"after": 1.0,
"delta": -0.1162,
"percent_delta": -0.1041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3109,
"after": 0.0,
"delta": -0.3109,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9329,
"after": 1.0,
"delta": 0.0671,
"percent_delta": 0.0719,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2945,
"after": 1.0,
"delta": -0.2945,
"percent_delta": -0.2275,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.8801,
"after": 4.0,
"delta": 0.1199,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3109,
"after": 0.0,
"delta": -0.3109,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8044,
"after": 1.0,
"delta": 0.1956,
"percent_delta": 0.2432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8044,
"after": 1.0,
"delta": 0.1956,
"percent_delta": 0.2432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2877,
"after": 0.25,
"delta": -0.0377,
"percent_delta": -0.131,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.421,
"after": 0.4,
"delta": -0.021,
"percent_delta": -0.0499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5792,
"after": 0.25,
"delta": -0.3292,
"percent_delta": -0.5684,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5792,
"after": 0.25,
"delta": -0.3292,
"percent_delta": -0.5684,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2877,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.421,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5792,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2877,
"delta": 0.0377,
"percent_delta": 0.1507,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.421,
"delta": 0.021,
"percent_delta": 0.0525,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5792,
"delta": 0.3292,
"percent_delta": 1.3169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5792,
"delta": 0.3292,
"percent_delta": 1.3169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.0,
"delta": -0.178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.97,
"after": 4.0,
"delta": 0.03,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2877,
"delta": 0.0247,
"percent_delta": 0.0939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.932,
"after": 0.0,
"delta": -0.932,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.0,
"delta": -0.04,
"percent_delta": -0.0385,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.28,
"after": 0.0,
"delta": -0.28,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.405,
"after": 0.421,
"delta": 0.016,
"percent_delta": 0.0395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.726,
"after": 0.0,
"delta": -0.726,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.545,
"after": 0.5792,
"delta": 0.0342,
"percent_delta": 0.0628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.315,
"after": 3.0,
"delta": 1.685,
"percent_delta": 1.2814,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 4,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.315,
"after": 3.0,
"delta": 1.685,
"percent_delta": 1.2814,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.932,
"after": 0.0,
"delta": -0.932,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.970 | - |
| predicted_AVG | 0.263 | - |
| predicted_BB | 0.932 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.280 | - |
| predicted_OBP | 0.405 | - |
| predicted_R | 0.726 | - |
| predicted_RBI | 0.870 | - |
| predicted_SLG | 0.545 | - |
| predicted_SO | 1.315 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | -0.003 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 3.880 | -0.090 |
| predicted_AVG | 0.286 | 0.023 |
| predicted_BB | 0.891 | -0.041 |
| predicted_H | 1.103 | 0.063 |
| predicted_HBP | 0.019 | - |
| predicted_HR | 0.306 | 0.026 |
| predicted_OBP | 0.421 | 0.016 |
| predicted_R | 0.789 | 0.064 |
| predicted_RBI | 0.916 | 0.046 |
| predicted_SLG | 0.585 | 0.040 |
| predicted_SO | 1.298 | -0.017 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 3.880 | 0.000 |
| predicted_AVG | 0.288 | 0.002 |
| predicted_BB | 0.894 | 0.002 |
| predicted_H | 1.116 | 0.013 |
| predicted_HBP | 0.019 | 0.000 |
| predicted_HR | 0.311 | 0.005 |
| predicted_OBP | 0.421 | 0.000 |
| predicted_R | 0.804 | 0.015 |
| predicted_RBI | 0.933 | 0.017 |
| predicted_SLG | 0.579 | -0.006 |
| predicted_SO | 1.294 | -0.003 |
AB rounded to 4 (raw=3.97), rates preserved: AVG=0.281 HR/AB=0.078
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.175 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | 0.120 |
| predicted_AVG | 0.250 | -0.038 |
| predicted_BB | 1.000 | 0.106 |
| predicted_H | 1.000 | -0.116 |
| predicted_HR | 0.000 | -0.311 |
| predicted_OBP | 0.400 | -0.021 |
| predicted_R | 1.000 | 0.196 |
| predicted_RBI | 1.000 | 0.067 |
| predicted_SLG | 0.250 | -0.329 |
| predicted_SO | 1.000 | -0.294 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 7.000 | 1.000 | 0.000 | 2.000 | 7.000 | 6.000 | 4.000 | 6.000 | 0.3684 | 0.4783 | 0.7368 | 0.3684 | 0.1053 | 0.3684 | 0.2105 | 0.3158 |
| last_10 | 0.20 | 10 | - | 41.000 | 15.000 | 1.000 | 0.000 | 7.000 | 14.000 | 12.000 | 8.000 | 14.000 | 0.3659 | 0.4694 | 0.9024 | 0.3659 | 0.1707 | 0.3415 | 0.1951 | 0.3415 |
| season | 0.60 | 73 | - | 264.000 | 77.000 | 13.000 | 1.000 | 18.000 | 57.000 | 53.000 | 68.000 | 96.000 | 0.2917 | 0.4401 | 0.5530 | 0.2917 | 0.0682 | 0.2159 | 0.2576 | 0.3636 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1700 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.7590 |
| predicted_AVG | 0.3160 |
| predicted_BB | 0.8370 |
| predicted_H | 1.1880 |
| predicted_HBP | 0.0190 |
| predicted_HR | 0.3420 |
| predicted_OBP | 0.4420 |
| predicted_R | 0.8750 |
| predicted_RBI | 0.9770 |
| predicted_SLG | 0.6390 |
| predicted_SO | 1.2740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1780 | 0.1700 | 0.1746 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 3.9700 | 3.7590 | 3.8801 | model_form_blend |
| predicted_AVG | 0.2630 | 0.3160 | 0.2856 | model_form_blend |
| predicted_BB | 0.9320 | 0.8370 | 0.8915 | model_form_blend |
| predicted_H | 1.0400 | 1.1880 | 1.1030 | model_form_blend |
| predicted_HBP | - | 0.0190 | 0.0190 | form_only |
| predicted_HR | 0.2800 | 0.3420 | 0.3064 | model_form_blend |
| predicted_OBP | 0.4050 | 0.4420 | 0.4208 | model_form_blend |
| predicted_R | 0.7260 | 0.8750 | 0.7895 | model_form_blend |
| predicted_RBI | 0.8700 | 0.9770 | 0.9156 | model_form_blend |
| predicted_SLG | 0.5450 | 0.6390 | 0.5850 | model_form_blend |
| predicted_SO | 1.3150 | 1.2740 | 1.2975 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 266 |
| Season rows before report date | 266 |
| Report year | 2026 |
| Profile rows used | 73 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.292 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 701762 |
| playerID | 701762 |
| playerName | Nick Kurtz |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.7 |
| sl_bb_percent | 20.4 |
| sl_woba | 0.425 |
| sl_xwoba | 0.395 |
| sl_xba | 0.258 |
| sl_xslg | 0.513 |
| sl_sweet_spot_percent | 38.1 |
| sl_barrel_batted_rate | 17.9 |
| sl_hard_hit_percent | 57.7 |
| sl_exit_velocity_avg | 94.2 |
| sl_launch_angle_avg | 12.4 |
| sl_whiff_percent | 34.4 |
| sl_swing_percent | 41.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.268 | 0.000 | 0.000 | Hitting_2B | 0.312 | 0.000 | -0.312 | 0.000 |
| predicted_3B | 0.028 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 3.890 | 3.000 | 4.000 | Hitting_AB | 3.833 | 4.000 | -0.833 | -1.000 |
| predicted_AVG | 0.241 | 0.333 | 0.250 | Hitting_AVG | 0.222 | 0.000 | 0.112 | 0.333 |
| predicted_BB | 0.535 | 1.000 | 1.000 | Hitting_BB | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.940 | 1.000 | 1.000 | Hitting_H | 0.850 | 0.000 | 0.150 | 1.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.133 | 0.000 | -0.133 | 0.000 |
| predicted_OBP | 0.347 | 0.500 | 0.400 | Hitting_OBP | 0.313 | 0.000 | 0.187 | 0.500 |
| predicted_R | 0.493 | 1.000 | 1.000 | Hitting_R | 0.517 | 0.000 | 0.483 | 1.000 |
| predicted_RBI | 0.600 | 0.000 | 1.000 | Hitting_RBI | 0.512 | 0.000 | -0.512 | 0.000 |
| predicted_SLG | 0.468 | 0.333 | 0.250 | Hitting_SLG | 0.423 | 0.000 | -0.089 | 0.333 |
| predicted_SO | 0.775 | 0.000 | 1.000 | Hitting_SO | 0.787 | 1.000 | -0.787 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_R: 0.4930 -> 1.0000 (boost 0.5070, better) |
| Biggest Deboost | predicted_AB: 3.8900 -> 3.0000 (deboost -0.8900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_R: 0.4930 -> 0.5595 (boost 0.0665, better) | predicted_AB: 3.8900 -> 3.7685 (deboost -0.1215, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.4912 -> 0.4974 (boost 0.0062, better) | predicted_OBP: 0.3529 -> 0.3474 (deboost -0.0055, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 5 | 2 | 4 | 3 | predicted_BB: 0.5545 -> 1.0000 (boost 0.4455, better) | predicted_2B: 0.2705 -> 0.0000 (deboost -0.2705, worse) | AB rounded to 4 (raw=3.89), rates preserved: AVG=0.244 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5701 -> 1.0000 (boost 0.4299, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3474 -> 0.4000 (boost 0.0526, better) | predicted_SLG: 0.4974 -> 0.2500 (deboost -0.2474, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 0 | 3 | 1 | 2 | - | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4974 (boost 0.2474, better) | predicted_OBP: 0.4000 -> 0.3474 (deboost -0.0526, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691016",
"player_name": "Tyler Soderstrom",
"position": "LF",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.268,
"predicted_3B": 0.028,
"predicted_AB": 3.89,
"predicted_AVG": 0.241,
"predicted_BB": 0.535,
"predicted_H": 0.94,
"predicted_HR": 0.19,
"predicted_OBP": 0.347,
"predicted_R": 0.493,
"predicted_RBI": 0.6,
"predicted_SLG": 0.468,
"predicted_SO": 0.775
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2705,
"predicted_3B": 0.0229,
"predicted_AB": 3.7685,
"predicted_AVG": 0.2483,
"predicted_BB": 0.5532,
"predicted_H": 0.9362,
"predicted_HBP": 0.011,
"predicted_HR": 0.2006,
"predicted_OBP": 0.3529,
"predicted_R": 0.5595,
"predicted_RBI": 0.6093,
"predicted_SLG": 0.4912,
"predicted_SO": 0.7822
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.268,
"after": 0.2705,
"delta": 0.0025,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0229,
"delta": -0.0051,
"percent_delta": -0.1821,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.89,
"after": 3.7685,
"delta": -0.1215,
"percent_delta": -0.0312,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2483,
"delta": 0.0073,
"percent_delta": 0.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.535,
"after": 0.5532,
"delta": 0.0182,
"percent_delta": 0.034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 0.9362,
"delta": -0.0038,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.2006,
"delta": 0.0106,
"percent_delta": 0.0558,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3529,
"delta": 0.0059,
"percent_delta": 0.017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.5595,
"delta": 0.0665,
"percent_delta": 0.1349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.6093,
"delta": 0.0093,
"percent_delta": 0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.468,
"after": 0.4912,
"delta": 0.0232,
"percent_delta": 0.0496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.775,
"after": 0.7822,
"delta": 0.0072,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.493,
"after": 0.5595,
"delta": 0.0665,
"percent_delta": 0.1349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.89,
"after": 3.7685,
"delta": -0.1215,
"percent_delta": -0.0312,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2705,
"predicted_3B": 0.0229,
"predicted_AB": 3.7685,
"predicted_AVG": 0.2514,
"predicted_BB": 0.5545,
"predicted_H": 0.9474,
"predicted_HBP": 0.011,
"predicted_HR": 0.2036,
"predicted_OBP": 0.3474,
"predicted_R": 0.5701,
"predicted_RBI": 0.6208,
"predicted_SLG": 0.4974,
"predicted_SO": 0.7804
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2705,
"after": 0.2705,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0229,
"after": 0.0229,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7685,
"after": 3.7685,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2483,
"after": 0.2514,
"delta": 0.0031,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5532,
"after": 0.5545,
"delta": 0.0013,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9362,
"after": 0.9474,
"delta": 0.0112,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2006,
"after": 0.2036,
"delta": 0.003,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3529,
"after": 0.3474,
"delta": -0.0055,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5595,
"after": 0.5701,
"delta": 0.0106,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6093,
"after": 0.6208,
"delta": 0.0115,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4912,
"after": 0.4974,
"delta": 0.0062,
"percent_delta": 0.0126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7822,
"after": 0.7804,
"delta": -0.0018,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4912,
"after": 0.4974,
"delta": 0.0062,
"percent_delta": 0.0126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3529,
"after": 0.3474,
"delta": -0.0055,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.89), rates preserved: AVG=0.244 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2705,
"after": 0.0,
"delta": -0.2705,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0229,
"after": 0.0,
"delta": -0.0229,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7685,
"after": 4.0,
"delta": 0.2315,
"percent_delta": 0.0614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5545,
"after": 1.0,
"delta": 0.4455,
"percent_delta": 0.8034,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9474,
"after": 1.0,
"delta": 0.0526,
"percent_delta": 0.0555,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2036,
"after": 0.0,
"delta": -0.2036,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6208,
"after": 1.0,
"delta": 0.3792,
"percent_delta": 0.6108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7804,
"after": 1.0,
"delta": 0.2196,
"percent_delta": 0.2814,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 5,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5545,
"after": 1.0,
"delta": 0.4455,
"percent_delta": 0.8034,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2705,
"after": 0.0,
"delta": -0.2705,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5701,
"after": 1.0,
"delta": 0.4299,
"percent_delta": 0.7541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5701,
"after": 1.0,
"delta": 0.4299,
"percent_delta": 0.7541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2514,
"after": 0.25,
"delta": -0.0014,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3474,
"after": 0.4,
"delta": 0.0526,
"percent_delta": 0.1514,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4974,
"after": 0.25,
"delta": -0.2474,
"percent_delta": -0.4974,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3474,
"after": 0.4,
"delta": 0.0526,
"percent_delta": 0.1514,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4974,
"after": 0.25,
"delta": -0.2474,
"percent_delta": -0.4974,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2514,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3474,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4974,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2514,
"delta": 0.0014,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3474,
"delta": -0.0526,
"percent_delta": -0.1314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4974,
"delta": 0.2474,
"percent_delta": 0.9896,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4974,
"delta": 0.2474,
"percent_delta": 0.9896,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3474,
"delta": -0.0526,
"percent_delta": -0.1314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.268,
"after": 0.0,
"delta": -0.268,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.89,
"after": 3.0,
"delta": -0.89,
"percent_delta": -0.2288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2514,
"delta": 0.0104,
"percent_delta": 0.0432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.535,
"after": 1.0,
"delta": 0.465,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.0,
"delta": 0.06,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3474,
"delta": 0.0004,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 1.0,
"delta": 0.507,
"percent_delta": 1.0284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.468,
"after": 0.4974,
"delta": 0.0294,
"percent_delta": 0.0628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.775,
"after": 0.0,
"delta": -0.775,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.493,
"after": 1.0,
"delta": 0.507,
"percent_delta": 1.0284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.89,
"after": 3.0,
"delta": -0.89,
"percent_delta": -0.2288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.268 | - |
| predicted_3B | 0.028 | - |
| predicted_AB | 3.890 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.535 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.347 | - |
| predicted_R | 0.493 | - |
| predicted_RBI | 0.600 | - |
| predicted_SLG | 0.468 | - |
| predicted_SO | 0.775 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.271 | 0.003 |
| predicted_3B | 0.023 | -0.005 |
| predicted_AB | 3.768 | -0.122 |
| predicted_AVG | 0.248 | 0.007 |
| predicted_BB | 0.553 | 0.018 |
| predicted_H | 0.936 | -0.004 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.201 | 0.011 |
| predicted_OBP | 0.353 | 0.006 |
| predicted_R | 0.559 | 0.067 |
| predicted_RBI | 0.609 | 0.009 |
| predicted_SLG | 0.491 | 0.023 |
| predicted_SO | 0.782 | 0.007 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.271 | 0.000 |
| predicted_3B | 0.023 | 0.000 |
| predicted_AB | 3.768 | 0.000 |
| predicted_AVG | 0.251 | 0.003 |
| predicted_BB | 0.554 | 0.001 |
| predicted_H | 0.947 | 0.011 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.204 | 0.003 |
| predicted_OBP | 0.347 | -0.006 |
| predicted_R | 0.570 | 0.011 |
| predicted_RBI | 0.621 | 0.012 |
| predicted_SLG | 0.497 | 0.006 |
| predicted_SO | 0.780 | -0.002 |
AB rounded to 4 (raw=3.89), rates preserved: AVG=0.244 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.271 |
| predicted_3B | 0.000 | -0.023 |
| predicted_AB | 4.000 | 0.232 |
| predicted_AVG | 0.250 | -0.001 |
| predicted_BB | 1.000 | 0.446 |
| predicted_H | 1.000 | 0.053 |
| predicted_HR | 0.000 | -0.204 |
| predicted_OBP | 0.400 | 0.053 |
| predicted_R | 1.000 | 0.430 |
| predicted_RBI | 1.000 | 0.379 |
| predicted_SLG | 0.250 | -0.247 |
| predicted_SO | 1.000 | 0.220 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 5.000 | 2.000 | 0.000 | 1.000 | 3.000 | 5.000 | 3.000 | 4.000 | 0.2941 | 0.4000 | 0.5882 | 0.2941 | 0.0588 | 0.1765 | 0.1765 | 0.2353 |
| last_10 | 0.20 | 10 | - | 35.000 | 10.000 | 2.000 | 0.000 | 4.000 | 9.000 | 8.000 | 8.000 | 8.000 | 0.2857 | 0.4186 | 0.6857 | 0.2857 | 0.1143 | 0.2571 | 0.2286 | 0.2286 |
| season | 0.60 | 71 | - | 260.000 | 62.000 | 19.000 | 2.000 | 12.000 | 39.000 | 35.000 | 38.000 | 55.000 | 0.2385 | 0.3367 | 0.4654 | 0.2385 | 0.0461 | 0.1500 | 0.1462 | 0.2115 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2740 |
| predicted_3B | 0.0160 |
| predicted_AB | 3.6030 |
| predicted_AVG | 0.2583 |
| predicted_BB | 0.5780 |
| predicted_H | 0.9310 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.2150 |
| predicted_OBP | 0.3610 |
| predicted_R | 0.6500 |
| predicted_RBI | 0.6220 |
| predicted_SLG | 0.5227 |
| predicted_SO | 0.7920 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2680 | 0.2740 | 0.2705 | model_form_blend |
| predicted_3B | 0.0280 | 0.0160 | 0.0229 | model_form_blend |
| predicted_AB | 3.8900 | 3.6030 | 3.7685 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2583 | 0.2483 | model_form_blend |
| predicted_BB | 0.5350 | 0.5780 | 0.5532 | model_form_blend |
| predicted_H | 0.9400 | 0.9310 | 0.9362 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1900 | 0.2150 | 0.2006 | model_form_blend |
| predicted_OBP | 0.3470 | 0.3610 | 0.3529 | model_form_blend |
| predicted_R | 0.4930 | 0.6500 | 0.5595 | model_form_blend |
| predicted_RBI | 0.6000 | 0.6220 | 0.6093 | model_form_blend |
| predicted_SLG | 0.4680 | 0.5227 | 0.4912 | model_form_blend |
| predicted_SO | 0.7750 | 0.7920 | 0.7822 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 240 |
| Season rows before report date | 240 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.238 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 691016 |
| playerID | 691016 |
| playerName | Tyler Soderstrom |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.3 |
| sl_bb_percent | 12.7 |
| sl_woba | 0.343 |
| sl_xwoba | 0.329 |
| sl_xba | 0.241 |
| sl_xslg | 0.418 |
| sl_sweet_spot_percent | 28.6 |
| sl_barrel_batted_rate | 10.7 |
| sl_hard_hit_percent | 44.2 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 12.5 |
| sl_whiff_percent | 21.6 |
| sl_swing_percent | 46.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.205 | 0.000 | 0.000 | Hitting_2B | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.310 | 3.000 | 4.000 | Hitting_AB | 4.224 | 3.000 | -1.224 | 0.000 |
| predicted_AVG | 0.238 | 0.333 | 0.250 | Hitting_AVG | 0.283 | 0.333 | 0.050 | 0.000 |
| predicted_BB | 0.159 | 1.000 | 0.000 | Hitting_BB | 0.144 | 0.000 | 0.856 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 1.000 | 1.000 | Hitting_H | 1.195 | 1.000 | -0.195 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_OBP | 0.305 | 0.500 | 0.250 | Hitting_OBP | 0.305 | 0.333 | 0.195 | 0.167 |
| predicted_R | 0.455 | 1.000 | 0.000 | Hitting_R | 0.489 | 0.000 | 0.511 | 1.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.506 | 2.000 | -0.506 | -2.000 |
| predicted_SLG | 0.365 | 0.333 | 0.250 | Hitting_SLG | 0.385 | 0.333 | -0.052 | 0.000 |
| predicted_SO | 0.500 | 1.000 | 0.000 | Hitting_SO | 0.557 | 0.000 | 0.443 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.1590 -> 1.0000 (boost 0.8410, better) |
| Biggest Deboost | predicted_AB: 4.3100 -> 3.0000 (deboost -1.3100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2380 -> 0.2463 (boost 0.0083, better) | predicted_AB: 4.3100 -> 4.1666 (deboost -0.1434, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3040 -> 0.2816 (deboost -0.0224, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_RBI: 0.6141 -> 1.0000 (boost 0.3859, better) | predicted_SO: 0.5193 -> 0.0000 (deboost -0.5193, better) | AB rounded to 4 (raw=4.31), rates preserved: AVG=0.240 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4582 -> 0.0000 (deboost -0.4582, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3554 -> 0.2500 (deboost -0.1054, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 3 | 2 | 2 | 3 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3554 (boost 0.1054, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805779",
"player_name": "Jacob Wilson",
"position": "SS",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.205,
"predicted_3B": 0.0,
"predicted_AB": 4.31,
"predicted_AVG": 0.238,
"predicted_BB": 0.159,
"predicted_H": 1.02,
"predicted_HR": 0.09,
"predicted_OBP": 0.305,
"predicted_R": 0.455,
"predicted_RBI": 0.59,
"predicted_SLG": 0.365,
"predicted_SO": 0.5
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.196,
"predicted_3B": 0.0008,
"predicted_AB": 4.1666,
"predicted_AVG": 0.2463,
"predicted_BB": 0.1951,
"predicted_H": 1.0208,
"predicted_HBP": 0.005,
"predicted_HR": 0.0822,
"predicted_OBP": 0.304,
"predicted_R": 0.4497,
"predicted_RBI": 0.6027,
"predicted_SLG": 0.3626,
"predicted_SO": 0.5205
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.205,
"after": 0.196,
"delta": -0.009,
"percent_delta": -0.0439,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.31,
"after": 4.1666,
"delta": -0.1434,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2463,
"delta": 0.0083,
"percent_delta": 0.0349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.159,
"after": 0.1951,
"delta": 0.0361,
"percent_delta": 0.227,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0208,
"delta": 0.0008,
"percent_delta": 0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0822,
"delta": -0.0078,
"percent_delta": -0.0867,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.304,
"delta": -0.001,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.455,
"after": 0.4497,
"delta": -0.0053,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.6027,
"delta": 0.0127,
"percent_delta": 0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.365,
"after": 0.3626,
"delta": -0.0024,
"percent_delta": -0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.5,
"after": 0.5205,
"delta": 0.0205,
"percent_delta": 0.041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2463,
"delta": 0.0083,
"percent_delta": 0.0349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.31,
"after": 4.1666,
"delta": -0.1434,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 44
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.196,
"predicted_3B": 0.0008,
"predicted_AB": 4.1666,
"predicted_AVG": 0.2479,
"predicted_BB": 0.1955,
"predicted_H": 1.033,
"predicted_HBP": 0.005,
"predicted_HR": 0.0834,
"predicted_OBP": 0.2816,
"predicted_R": 0.4582,
"predicted_RBI": 0.6141,
"predicted_SLG": 0.3554,
"predicted_SO": 0.5193
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.196,
"after": 0.196,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1666,
"after": 4.1666,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2463,
"after": 0.2479,
"delta": 0.0016,
"percent_delta": 0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1951,
"after": 0.1955,
"delta": 0.0004,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0208,
"after": 1.033,
"delta": 0.0122,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.005,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0822,
"after": 0.0834,
"delta": 0.0012,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.2816,
"delta": -0.0224,
"percent_delta": -0.0737,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4497,
"after": 0.4582,
"delta": 0.0085,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6027,
"after": 0.6141,
"delta": 0.0114,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3626,
"after": 0.3554,
"delta": -0.0072,
"percent_delta": -0.0199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5205,
"after": 0.5193,
"delta": -0.0012,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.2816,
"delta": -0.0224,
"percent_delta": -0.0737,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.31), rates preserved: AVG=0.240 HR/AB=0.019",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.196,
"after": 0.0,
"delta": -0.196,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1666,
"after": 4.0,
"delta": -0.1666,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1955,
"after": 0.0,
"delta": -0.1955,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.033,
"after": 1.0,
"delta": -0.033,
"percent_delta": -0.0319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0834,
"after": 0.0,
"delta": -0.0834,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6141,
"after": 1.0,
"delta": 0.3859,
"percent_delta": 0.6284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5193,
"after": 0.0,
"delta": -0.5193,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6141,
"after": 1.0,
"delta": 0.3859,
"percent_delta": 0.6284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.5193,
"after": 0.0,
"delta": -0.5193,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4582,
"after": 0.0,
"delta": -0.4582,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4582,
"after": 0.0,
"delta": -0.4582,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2479,
"after": 0.25,
"delta": 0.0021,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2816,
"after": 0.25,
"delta": -0.0316,
"percent_delta": -0.1122,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3554,
"after": 0.25,
"delta": -0.1054,
"percent_delta": -0.2966,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3554,
"after": 0.25,
"delta": -0.1054,
"percent_delta": -0.2966,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2479,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2816,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3554,
"predicted_SO": 1.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2479,
"delta": -0.0021,
"percent_delta": -0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2816,
"delta": 0.0316,
"percent_delta": 0.1266,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3554,
"delta": 0.1054,
"percent_delta": 0.4217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3554,
"delta": 0.1054,
"percent_delta": 0.4217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.205,
"after": 0.0,
"delta": -0.205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.31,
"after": 3.0,
"delta": -1.31,
"percent_delta": -0.3039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2479,
"delta": 0.0099,
"percent_delta": 0.0416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.159,
"after": 1.0,
"delta": 0.841,
"percent_delta": 5.2893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0,
"delta": -0.02,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.2816,
"delta": -0.0234,
"percent_delta": -0.0767,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.455,
"after": 1.0,
"delta": 0.545,
"percent_delta": 1.1978,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.365,
"after": 0.3554,
"delta": -0.0096,
"percent_delta": -0.0263,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.159,
"after": 1.0,
"delta": 0.841,
"percent_delta": 5.2893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.31,
"after": 3.0,
"delta": -1.31,
"percent_delta": -0.3039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.205 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.310 | - |
| predicted_AVG | 0.238 | - |
| predicted_BB | 0.159 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.305 | - |
| predicted_R | 0.455 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.365 | - |
| predicted_SO | 0.500 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.196 | -0.009 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.167 | -0.143 |
| predicted_AVG | 0.246 | 0.008 |
| predicted_BB | 0.195 | 0.036 |
| predicted_H | 1.021 | 0.001 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.082 | -0.008 |
| predicted_OBP | 0.304 | -0.001 |
| predicted_R | 0.450 | -0.005 |
| predicted_RBI | 0.603 | 0.013 |
| predicted_SLG | 0.363 | -0.002 |
| predicted_SO | 0.520 | 0.020 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.196 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.167 | 0.000 |
| predicted_AVG | 0.248 | 0.002 |
| predicted_BB | 0.196 | 0.000 |
| predicted_H | 1.033 | 0.012 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.083 | 0.001 |
| predicted_OBP | 0.282 | -0.022 |
| predicted_R | 0.458 | 0.009 |
| predicted_RBI | 0.614 | 0.011 |
| predicted_SLG | 0.355 | -0.007 |
| predicted_SO | 0.519 | -0.001 |
AB rounded to 4 (raw=4.31), rates preserved: AVG=0.240 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.196 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.167 |
| predicted_AVG | 0.250 | 0.002 |
| predicted_BB | 0.000 | -0.196 |
| predicted_H | 1.000 | -0.033 |
| predicted_HR | 0.000 | -0.083 |
| predicted_OBP | 0.250 | -0.032 |
| predicted_R | 0.000 | -0.458 |
| predicted_RBI | 1.000 | 0.386 |
| predicted_SLG | 0.250 | -0.105 |
| predicted_SO | 0.000 | -0.519 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 4.000 | 1.000 | 0.000 | 0.000 | 4.000 | 2.000 | 2.000 | 2.000 | 0.2105 | 0.2857 | 0.2632 | 0.2105 | 0.0000 | 0.2105 | 0.1053 | 0.1053 |
| last_10 | 0.20 | 10 | - | 38.000 | 9.000 | 1.000 | 0.000 | 1.000 | 8.000 | 4.000 | 3.000 | 6.000 | 0.2368 | 0.2927 | 0.3421 | 0.2368 | 0.0263 | 0.2105 | 0.0790 | 0.1579 |
| season | 0.60 | 44 | - | 180.000 | 51.000 | 9.000 | 0.000 | 3.000 | 23.000 | 20.000 | 7.000 | 22.000 | 0.2833 | 0.3085 | 0.3833 | 0.2833 | 0.0167 | 0.1278 | 0.0389 | 0.1222 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1830 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.9600 |
| predicted_AVG | 0.2582 |
| predicted_BB | 0.2470 |
| predicted_H | 1.0220 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.0710 |
| predicted_OBP | 0.3025 |
| predicted_R | 0.4420 |
| predicted_RBI | 0.6210 |
| predicted_SLG | 0.3591 |
| predicted_SO | 0.5500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2050 | 0.1830 | 0.1960 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 4.3100 | 3.9600 | 4.1666 | model_form_blend |
| predicted_AVG | 0.2380 | 0.2582 | 0.2463 | model_form_blend |
| predicted_BB | 0.1590 | 0.2470 | 0.1951 | model_form_blend |
| predicted_H | 1.0200 | 1.0220 | 1.0208 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.0900 | 0.0710 | 0.0822 | model_form_blend |
| predicted_OBP | 0.3050 | 0.3025 | 0.3040 | model_form_blend |
| predicted_R | 0.4550 | 0.4420 | 0.4497 | model_form_blend |
| predicted_RBI | 0.5900 | 0.6210 | 0.6027 | model_form_blend |
| predicted_SLG | 0.3650 | 0.3591 | 0.3626 | model_form_blend |
| predicted_SO | 0.5000 | 0.5500 | 0.5205 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 174 |
| Season rows before report date | 174 |
| Report year | 2026 |
| Profile rows used | 44 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.283 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 805779 |
| playerID | 805779 |
| playerName | Jacob Wilson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 11.6 |
| sl_bb_percent | 3.7 |
| sl_woba | 0.305 |
| sl_xwoba | 0.271 |
| sl_xba | 0.26 |
| sl_xslg | 0.329 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 1.9 |
| sl_hard_hit_percent | 27.5 |
| sl_exit_velocity_avg | 84.1 |
| sl_launch_angle_avg | 8.3 |
| sl_whiff_percent | 15.2 |
| sl_swing_percent | 57.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.258 | 0.000 | 0.000 | Hitting_2B | 0.308 | 0.000 | -0.308 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.130 | 4.000 | 3.000 | Hitting_AB | 3.513 | 3.000 | 0.487 | 1.000 |
| predicted_AVG | 0.275 | 0.250 | 0.333 | Hitting_AVG | 0.219 | 0.667 | 0.031 | -0.417 |
| predicted_BB | 0.290 | 0.000 | 0.000 | Hitting_BB | 0.282 | 1.000 | -0.282 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.860 | 1.000 | 1.000 | Hitting_H | 0.769 | 2.000 | 0.231 | -1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.103 | 0.000 | -0.103 | 0.000 |
| predicted_OBP | 0.348 | 0.250 | 0.333 | Hitting_OBP | 0.277 | 0.750 | -0.027 | -0.500 |
| predicted_R | 0.419 | 0.000 | 0.000 | Hitting_R | 0.513 | 0.000 | -0.513 | 0.000 |
| predicted_RBI | 0.440 | 0.000 | 0.000 | Hitting_RBI | 0.154 | 0.000 | -0.154 | 0.000 |
| predicted_SLG | 0.511 | 0.250 | 0.333 | Hitting_SLG | 0.394 | 0.667 | -0.144 | -0.417 |
| predicted_SO | 0.581 | 2.000 | 1.000 | Hitting_SO | 0.949 | 0.000 | 1.051 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_SO: 0.5810 -> 2.0000 (boost 1.4190, worse) |
| Biggest Deboost | predicted_RBI: 0.4400 -> 0.0000 (deboost -0.4400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.8600 -> 0.9139 (boost 0.0539, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.5356 -> 0.5479 (boost 0.0123, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.5973 -> 1.0000 (boost 0.4027, worse) | predicted_RBI: 0.4542 -> 0.0000 (deboost -0.4542, worse) | AB rounded to 3 (raw=3.18), rates preserved: AVG=0.291 HR/AB=0.058 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4462 -> 0.0000 (deboost -0.4462, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2905 -> 0.3330 (boost 0.0425, better) | predicted_SLG: 0.5479 -> 0.3330 (deboost -0.2149, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.5479 (boost 0.2149, better) | predicted_AVG: 0.3330 -> 0.2905 (deboost -0.0425, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "641680",
"player_name": "Jonah Heim",
"position": "DH",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.258,
"predicted_3B": 0.0,
"predicted_AB": 3.13,
"predicted_AVG": 0.275,
"predicted_BB": 0.29,
"predicted_H": 0.86,
"predicted_HR": 0.17,
"predicted_OBP": 0.348,
"predicted_R": 0.419,
"predicted_RBI": 0.44,
"predicted_SLG": 0.511,
"predicted_SO": 0.581
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2584,
"predicted_3B": 0.0012,
"predicted_AB": 3.1835,
"predicted_AVG": 0.2869,
"predicted_BB": 0.2919,
"predicted_H": 0.9139,
"predicted_HBP": 0.007,
"predicted_HR": 0.1835,
"predicted_OBP": 0.3539,
"predicted_R": 0.4379,
"predicted_RBI": 0.4458,
"predicted_SLG": 0.5356,
"predicted_SO": 0.5987
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.258,
"after": 0.2584,
"delta": 0.0004,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0012,
"delta": 0.0012,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.13,
"after": 3.1835,
"delta": 0.0535,
"percent_delta": 0.0171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2869,
"delta": 0.0119,
"percent_delta": 0.0433,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.29,
"after": 0.2919,
"delta": 0.0019,
"percent_delta": 0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.9139,
"delta": 0.0539,
"percent_delta": 0.0627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.1835,
"delta": 0.0135,
"percent_delta": 0.0794,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3539,
"delta": 0.0059,
"percent_delta": 0.017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.419,
"after": 0.4379,
"delta": 0.0189,
"percent_delta": 0.0451,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.4458,
"delta": 0.0058,
"percent_delta": 0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.511,
"after": 0.5356,
"delta": 0.0246,
"percent_delta": 0.0481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.581,
"after": 0.5987,
"delta": 0.0177,
"percent_delta": 0.0305,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.86,
"after": 0.9139,
"delta": 0.0539,
"percent_delta": 0.0627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 31
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2584,
"predicted_3B": 0.0012,
"predicted_AB": 3.1835,
"predicted_AVG": 0.2905,
"predicted_BB": 0.2926,
"predicted_H": 0.9249,
"predicted_HBP": 0.007,
"predicted_HR": 0.1862,
"predicted_OBP": 0.3502,
"predicted_R": 0.4462,
"predicted_RBI": 0.4542,
"predicted_SLG": 0.5479,
"predicted_SO": 0.5973
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2584,
"after": 0.2584,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1835,
"after": 3.1835,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2869,
"after": 0.2905,
"delta": 0.0036,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2919,
"after": 0.2926,
"delta": 0.0007,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9139,
"after": 0.9249,
"delta": 0.011,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.007,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1835,
"after": 0.1862,
"delta": 0.0027,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3539,
"after": 0.3502,
"delta": -0.0037,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4379,
"after": 0.4462,
"delta": 0.0083,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4458,
"after": 0.4542,
"delta": 0.0084,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5356,
"after": 0.5479,
"delta": 0.0123,
"percent_delta": 0.023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5987,
"after": 0.5973,
"delta": -0.0014,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.5356,
"after": 0.5479,
"delta": 0.0123,
"percent_delta": 0.023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.18), rates preserved: AVG=0.291 HR/AB=0.058",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2584,
"after": 0.0,
"delta": -0.2584,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0,
"delta": -0.0012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1835,
"after": 3.0,
"delta": -0.1835,
"percent_delta": -0.0576,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2926,
"after": 0.0,
"delta": -0.2926,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9249,
"after": 1.0,
"delta": 0.0751,
"percent_delta": 0.0812,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.0,
"delta": -0.007,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1862,
"after": 0.0,
"delta": -0.1862,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4542,
"after": 0.0,
"delta": -0.4542,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5973,
"after": 1.0,
"delta": 0.4027,
"percent_delta": 0.6742,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5973,
"after": 1.0,
"delta": 0.4027,
"percent_delta": 0.6742,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4542,
"after": 0.0,
"delta": -0.4542,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4462,
"after": 0.0,
"delta": -0.4462,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4462,
"after": 0.0,
"delta": -0.4462,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2905,
"after": 0.333,
"delta": 0.0425,
"percent_delta": 0.1463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3502,
"after": 0.333,
"delta": -0.0172,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5479,
"after": 0.333,
"delta": -0.2149,
"percent_delta": -0.3922,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2905,
"after": 0.333,
"delta": 0.0425,
"percent_delta": 0.1463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5479,
"after": 0.333,
"delta": -0.2149,
"percent_delta": -0.3922,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2905,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3502,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5479,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2905,
"delta": -0.0425,
"percent_delta": -0.1276,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3502,
"delta": 0.0172,
"percent_delta": 0.0518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.5479,
"delta": 0.2149,
"percent_delta": 0.6454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.5479,
"delta": 0.2149,
"percent_delta": 0.6454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2905,
"delta": -0.0425,
"percent_delta": -0.1276,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.258,
"after": 0.0,
"delta": -0.258,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.13,
"after": 4.0,
"delta": 0.87,
"percent_delta": 0.278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.275,
"after": 0.2905,
"delta": 0.0155,
"percent_delta": 0.0564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 1.0,
"delta": 0.14,
"percent_delta": 0.1628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3502,
"delta": 0.0022,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.419,
"after": 0.0,
"delta": -0.419,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.0,
"delta": -0.44,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.511,
"after": 0.5479,
"delta": 0.0369,
"percent_delta": 0.0722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.581,
"after": 2.0,
"delta": 1.419,
"percent_delta": 2.4423,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.581,
"after": 2.0,
"delta": 1.419,
"percent_delta": 2.4423,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.0,
"delta": -0.44,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.258 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.130 | - |
| predicted_AVG | 0.275 | - |
| predicted_BB | 0.290 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.348 | - |
| predicted_R | 0.419 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.511 | - |
| predicted_SO | 0.581 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.258 | 0.000 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.183 | 0.054 |
| predicted_AVG | 0.287 | 0.012 |
| predicted_BB | 0.292 | 0.002 |
| predicted_H | 0.914 | 0.054 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.183 | 0.013 |
| predicted_OBP | 0.354 | 0.006 |
| predicted_R | 0.438 | 0.019 |
| predicted_RBI | 0.446 | 0.006 |
| predicted_SLG | 0.536 | 0.025 |
| predicted_SO | 0.599 | 0.018 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.258 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.183 | 0.000 |
| predicted_AVG | 0.290 | 0.004 |
| predicted_BB | 0.293 | 0.001 |
| predicted_H | 0.925 | 0.011 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.186 | 0.003 |
| predicted_OBP | 0.350 | -0.004 |
| predicted_R | 0.446 | 0.008 |
| predicted_RBI | 0.454 | 0.008 |
| predicted_SLG | 0.548 | 0.012 |
| predicted_SO | 0.597 | -0.001 |
AB rounded to 3 (raw=3.18), rates preserved: AVG=0.291 HR/AB=0.058
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.258 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.183 |
| predicted_AVG | 0.333 | 0.043 |
| predicted_BB | 0.000 | -0.293 |
| predicted_H | 1.000 | 0.075 |
| predicted_HR | 0.000 | -0.186 |
| predicted_OBP | 0.333 | -0.017 |
| predicted_R | 0.000 | -0.446 |
| predicted_RBI | 0.000 | -0.454 |
| predicted_SLG | 0.333 | -0.215 |
| predicted_SO | 1.000 | 0.403 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 8.000 | 2.000 | 0.000 | 1.000 | 1.000 | 2.000 | 2.000 | 3.000 | 0.4706 | 0.5263 | 0.7647 | 0.4706 | 0.0588 | 0.0588 | 0.1177 | 0.1765 |
| last_10 | 0.20 | 10 | - | 29.000 | 11.000 | 2.000 | 0.000 | 4.000 | 6.000 | 6.000 | 2.000 | 5.000 | 0.3793 | 0.4194 | 0.8621 | 0.3793 | 0.1379 | 0.2069 | 0.0690 | 0.1724 |
| season | 0.60 | 31 | - | 95.000 | 24.000 | 8.000 | 0.000 | 5.000 | 14.000 | 13.000 | 9.000 | 18.000 | 0.2526 | 0.3143 | 0.4947 | 0.2526 | 0.0526 | 0.1474 | 0.0947 | 0.1895 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2590 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.2690 |
| predicted_AVG | 0.3058 |
| predicted_BB | 0.2950 |
| predicted_H | 1.0000 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.2050 |
| predicted_OBP | 0.3634 |
| predicted_R | 0.4680 |
| predicted_RBI | 0.4550 |
| predicted_SLG | 0.5750 |
| predicted_SO | 0.6270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2580 | 0.2590 | 0.2584 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.1300 | 3.2690 | 3.1835 | model_form_blend |
| predicted_AVG | 0.2750 | 0.3058 | 0.2869 | model_form_blend |
| predicted_BB | 0.2900 | 0.2950 | 0.2919 | model_form_blend |
| predicted_H | 0.8600 | 1.0000 | 0.9139 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1700 | 0.2050 | 0.1835 | model_form_blend |
| predicted_OBP | 0.3480 | 0.3634 | 0.3539 | model_form_blend |
| predicted_R | 0.4190 | 0.4680 | 0.4379 | model_form_blend |
| predicted_RBI | 0.4400 | 0.4550 | 0.4458 | model_form_blend |
| predicted_SLG | 0.5110 | 0.5750 | 0.5356 | model_form_blend |
| predicted_SO | 0.5810 | 0.6270 | 0.5987 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 39 |
| Season rows before report date | 39 |
| Report year | 2026 |
| Profile rows used | 31 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.253 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 641680 |
| playerID | 641680 |
| playerName | Jonah Heim |
| pos | C |
| started | True |
| startingPosition | C |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.1 |
| sl_bb_percent | 8.6 |
| sl_woba | 0.348 |
| sl_xwoba | 0.307 |
| sl_xba | 0.246 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 6.4 |
| sl_hard_hit_percent | 29.5 |
| sl_exit_velocity_avg | 87.2 |
| sl_launch_angle_avg | 15.2 |
| sl_whiff_percent | 20.7 |
| sl_swing_percent | 46.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.153 | 0.000 | 0.000 | Hitting_2B | 0.159 | 0.000 | -0.159 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.024 | 0.000 | -0.024 | 0.000 |
| predicted_AB | 2.932 | 4.000 | 3.000 | Hitting_AB | 3.311 | 3.000 | 0.689 | 1.000 |
| predicted_AVG | 0.232 | 0.500 | 0.333 | Hitting_AVG | 0.337 | 0.000 | 0.163 | 0.500 |
| predicted_BB | 0.356 | 0.000 | 0.000 | Hitting_BB | 0.457 | 0.000 | -0.457 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.280 | 2.000 | 1.000 | Hitting_H | 1.116 | 0.000 | 0.884 | 2.000 |
| predicted_HR | 0.040 | 1.000 | 0.000 | Hitting_HR | 0.152 | 0.000 | 0.848 | 1.000 |
| predicted_OBP | 0.277 | 0.500 | 0.333 | Hitting_OBP | 0.419 | 0.000 | 0.081 | 0.500 |
| predicted_R | 0.288 | 1.000 | 0.000 | Hitting_R | 0.384 | 0.000 | 0.616 | 1.000 |
| predicted_RBI | 0.190 | 3.000 | 0.000 | Hitting_RBI | 0.482 | 0.000 | 2.518 | 3.000 |
| predicted_SLG | 0.361 | 1.250 | 0.333 | Hitting_SLG | 0.538 | 0.000 | 0.712 | 1.250 |
| predicted_SO | 0.373 | 0.000 | 0.000 | Hitting_SO | 0.378 | 2.000 | -0.378 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_RBI: 0.1900 -> 3.0000 (boost 2.8100, better) |
| Biggest Deboost | predicted_SO: 0.3730 -> 0.0000 (deboost -0.3730, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 5 | 2 | 4 | 3 | predicted_H: 0.2800 -> 0.4413 (boost 0.1613, better) | predicted_SLG: 0.3610 -> 0.3540 (deboost -0.0070, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3540 -> 0.2635 (deboost -0.0905, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 0 | 7 | 1 | 6 | - | predicted_SO: 0.4563 -> 0.0000 (deboost -0.4563, better) | AB rounded to 3 (raw=2.99), rates preserved: AVG=0.149 HR/AB=0.020 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.2905 -> 0.0000 (deboost -0.2905, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1492 -> 0.3330 (boost 0.1838, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 5 | 0 | 5 | 0 | predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1492 (deboost -0.1838, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666126",
"player_name": "Carlos Cortes",
"position": "RF",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.153,
"predicted_3B": 0.017,
"predicted_AB": 2.932,
"predicted_AVG": 0.232,
"predicted_BB": 0.356,
"predicted_H": 0.28,
"predicted_HR": 0.04,
"predicted_OBP": 0.277,
"predicted_R": 0.288,
"predicted_RBI": 0.19,
"predicted_SLG": 0.361,
"predicted_SO": 0.373
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1324,
"predicted_3B": 0.0145,
"predicted_AB": 2.9925,
"predicted_AVG": 0.2264,
"predicted_BB": 0.3169,
"predicted_H": 0.4413,
"predicted_HBP": 0.085,
"predicted_HR": 0.0593,
"predicted_OBP": 0.2842,
"predicted_R": 0.2851,
"predicted_RBI": 0.2871,
"predicted_SLG": 0.354,
"predicted_SO": 0.4574
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.153,
"after": 0.1324,
"delta": -0.0206,
"percent_delta": -0.1346,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0145,
"delta": -0.0025,
"percent_delta": -0.1471,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.932,
"after": 2.9925,
"delta": 0.0605,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2264,
"delta": -0.0056,
"percent_delta": -0.0241,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.356,
"after": 0.3169,
"delta": -0.0391,
"percent_delta": -0.1098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 0.4413,
"delta": 0.1613,
"percent_delta": 0.5761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0593,
"delta": 0.0193,
"percent_delta": 0.4825,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.2842,
"delta": 0.0072,
"percent_delta": 0.026,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.288,
"after": 0.2851,
"delta": -0.0029,
"percent_delta": -0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.2871,
"delta": 0.0971,
"percent_delta": 0.5111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.354,
"delta": -0.007,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.373,
"after": 0.4574,
"delta": 0.0844,
"percent_delta": 0.2263,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 5,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.28,
"after": 0.4413,
"delta": 0.1613,
"percent_delta": 0.5761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.354,
"delta": -0.007,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 59
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1324,
"predicted_3B": 0.0145,
"predicted_AB": 2.9925,
"predicted_AVG": 0.1492,
"predicted_BB": 0.3176,
"predicted_H": 0.4466,
"predicted_HBP": 0.085,
"predicted_HR": 0.0602,
"predicted_OBP": 0.2309,
"predicted_R": 0.2905,
"predicted_RBI": 0.2925,
"predicted_SLG": 0.2635,
"predicted_SO": 0.4563
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1324,
"after": 0.1324,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0145,
"after": 0.0145,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9925,
"after": 2.9925,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2264,
"after": 0.1492,
"delta": -0.0772,
"percent_delta": -0.341,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3169,
"after": 0.3176,
"delta": 0.0007,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4413,
"after": 0.4466,
"delta": 0.0053,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.085,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0593,
"after": 0.0602,
"delta": 0.0009,
"percent_delta": 0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2842,
"after": 0.2309,
"delta": -0.0533,
"percent_delta": -0.1875,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2851,
"after": 0.2905,
"delta": 0.0054,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2871,
"after": 0.2925,
"delta": 0.0054,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.2635,
"delta": -0.0905,
"percent_delta": -0.2556,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4574,
"after": 0.4563,
"delta": -0.0011,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.2635,
"delta": -0.0905,
"percent_delta": -0.2556,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.99), rates preserved: AVG=0.149 HR/AB=0.020",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1324,
"after": 0.0,
"delta": -0.1324,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0145,
"after": 0.0,
"delta": -0.0145,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9925,
"after": 3.0,
"delta": 0.0075,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3176,
"after": 0.0,
"delta": -0.3176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4466,
"after": 0.0,
"delta": -0.4466,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0602,
"after": 0.0,
"delta": -0.0602,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2925,
"after": 0.0,
"delta": -0.2925,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4563,
"after": 0.0,
"delta": -0.4563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 0,
"deboosted_metrics": 7,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4563,
"after": 0.0,
"delta": -0.4563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2905,
"after": 0.0,
"delta": -0.2905,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2905,
"after": 0.0,
"delta": -0.2905,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1492,
"after": 0.333,
"delta": 0.1838,
"percent_delta": 1.2319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2309,
"after": 0.333,
"delta": 0.1021,
"percent_delta": 0.4422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2635,
"after": 0.333,
"delta": 0.0695,
"percent_delta": 0.2638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1492,
"after": 0.333,
"delta": 0.1838,
"percent_delta": 1.2319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1492,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2309,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2635,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1492,
"delta": -0.1838,
"percent_delta": -0.5518,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2309,
"delta": -0.1021,
"percent_delta": -0.3067,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2635,
"delta": -0.0695,
"percent_delta": -0.2087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1492,
"delta": -0.1838,
"percent_delta": -0.5518,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.153,
"after": 0.0,
"delta": -0.153,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.932,
"after": 4.0,
"delta": 1.068,
"percent_delta": 0.3643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.1492,
"delta": -0.0828,
"percent_delta": -0.3569,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.356,
"after": 0.0,
"delta": -0.356,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 2.0,
"delta": 1.72,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 1.0,
"delta": 0.96,
"percent_delta": 24.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.2309,
"delta": -0.0461,
"percent_delta": -0.1664,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.288,
"after": 1.0,
"delta": 0.712,
"percent_delta": 2.4722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 3.0,
"delta": 2.81,
"percent_delta": 14.7895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.2635,
"delta": -0.0975,
"percent_delta": -0.2701,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.373,
"after": 0.0,
"delta": -0.373,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.19,
"after": 3.0,
"delta": 2.81,
"percent_delta": 14.7895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.373,
"after": 0.0,
"delta": -0.373,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.153 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 2.932 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.356 | - |
| predicted_H | 0.280 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.277 | - |
| predicted_R | 0.288 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.361 | - |
| predicted_SO | 0.373 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.132 | -0.021 |
| predicted_3B | 0.015 | -0.003 |
| predicted_AB | 2.993 | 0.061 |
| predicted_AVG | 0.226 | -0.006 |
| predicted_BB | 0.317 | -0.039 |
| predicted_H | 0.441 | 0.161 |
| predicted_HBP | 0.085 | - |
| predicted_HR | 0.059 | 0.019 |
| predicted_OBP | 0.284 | 0.007 |
| predicted_R | 0.285 | -0.003 |
| predicted_RBI | 0.287 | 0.097 |
| predicted_SLG | 0.354 | -0.007 |
| predicted_SO | 0.457 | 0.084 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.132 | 0.000 |
| predicted_3B | 0.015 | 0.000 |
| predicted_AB | 2.993 | 0.000 |
| predicted_AVG | 0.149 | -0.077 |
| predicted_BB | 0.318 | 0.001 |
| predicted_H | 0.447 | 0.005 |
| predicted_HBP | 0.085 | 0.000 |
| predicted_HR | 0.060 | 0.001 |
| predicted_OBP | 0.231 | -0.053 |
| predicted_R | 0.290 | 0.005 |
| predicted_RBI | 0.292 | 0.005 |
| predicted_SLG | 0.264 | -0.090 |
| predicted_SO | 0.456 | -0.001 |
AB rounded to 3 (raw=2.99), rates preserved: AVG=0.149 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.132 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 3.000 | 0.007 |
| predicted_AVG | 0.333 | 0.184 |
| predicted_BB | 0.000 | -0.318 |
| predicted_H | 1.000 | 0.553 |
| predicted_HR | 0.000 | -0.060 |
| predicted_OBP | 0.333 | 0.102 |
| predicted_R | 0.000 | -0.290 |
| predicted_RBI | 0.000 | -0.292 |
| predicted_SLG | 0.333 | 0.070 |
| predicted_SO | 0.000 | -0.456 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 3.000 | 3.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 0.000 | 5.000 | 0.0667 | 0.1250 | 0.0667 | 0.0667 | 0.0000 | 0.2000 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 10 | - | 30.000 | 4.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 2.000 | 6.000 | 0.1333 | 0.2121 | 0.2333 | 0.1333 | 0.0333 | 0.1333 | 0.0667 | 0.2000 |
| season | 0.60 | 59 | - | 173.000 | 50.000 | 9.000 | 1.000 | 6.000 | 21.000 | 17.000 | 21.000 | 22.000 | 0.2890 | 0.3737 | 0.4566 | 0.2890 | 0.0347 | 0.1214 | 0.1214 | 0.1272 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1030 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.0790 |
| predicted_AVG | 0.2183 |
| predicted_BB | 0.2610 |
| predicted_H | 0.6720 |
| predicted_HBP | 0.0850 |
| predicted_HR | 0.0870 |
| predicted_OBP | 0.2945 |
| predicted_R | 0.2810 |
| predicted_RBI | 0.4260 |
| predicted_SLG | 0.3439 |
| predicted_SO | 0.5780 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1530 | 0.1030 | 0.1324 | model_form_blend |
| predicted_3B | 0.0170 | 0.0110 | 0.0145 | model_form_blend |
| predicted_AB | 2.9320 | 3.0790 | 2.9925 | model_form_blend |
| predicted_AVG | 0.2320 | 0.2183 | 0.2264 | model_form_blend |
| predicted_BB | 0.3560 | 0.2610 | 0.3169 | model_form_blend |
| predicted_H | 0.2800 | 0.6720 | 0.4413 | model_form_blend |
| predicted_HBP | - | 0.0850 | 0.0850 | form_only |
| predicted_HR | 0.0400 | 0.0870 | 0.0593 | model_form_blend |
| predicted_OBP | 0.2770 | 0.2945 | 0.2842 | model_form_blend |
| predicted_R | 0.2880 | 0.2810 | 0.2851 | model_form_blend |
| predicted_RBI | 0.1900 | 0.4260 | 0.2871 | model_form_blend |
| predicted_SLG | 0.3610 | 0.3439 | 0.3540 | model_form_blend |
| predicted_SO | 0.3730 | 0.5780 | 0.4574 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 164 |
| Season rows before report date | 164 |
| Report year | 2026 |
| Profile rows used | 59 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.289 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260616_PIT@OAK |
| game_type | full |
| mlbID | 666126 |
| playerID | 666126 |
| playerName | Carlos Cortes |
| pos | RF |
| started | True |
| startingPosition | DH |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-16 |
| sl_k_percent | 11.1 |
| sl_bb_percent | 10.6 |
| sl_woba | 0.367 |
| sl_xwoba | 0.365 |
| sl_xba | 0.29 |
| sl_xslg | 0.453 |
| sl_sweet_spot_percent | 35.5 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 40.4 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 8.5 |
| sl_whiff_percent | 19.7 |
| sl_swing_percent | 43.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.172 | 0.000 | 0.000 | Hitting_2B | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.448 | 4.000 | 3.000 | Hitting_AB | 3.369 | 4.000 | 0.631 | 0.000 |
| predicted_AVG | 0.274 | 0.250 | 0.333 | Hitting_AVG | 0.311 | 0.250 | -0.061 | 0.000 |
| predicted_BB | 0.207 | 0.000 | 0.000 | Hitting_BB | 0.292 | 0.000 | -0.292 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.123 | 0.000 | -0.123 | 0.000 |
| predicted_H | 0.800 | 1.000 | 1.000 | Hitting_H | 1.046 | 1.000 | -0.046 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.031 | 1.000 | -0.031 | -1.000 |
| predicted_OBP | 0.338 | 0.250 | 0.333 | Hitting_OBP | 0.372 | 0.250 | -0.122 | 0.000 |
| predicted_R | 0.379 | 1.000 | 0.000 | Hitting_R | 0.277 | 1.000 | 0.723 | 0.000 |
| predicted_RBI | 0.320 | 1.000 | 0.000 | Hitting_RBI | 0.308 | 1.000 | 0.692 | 0.000 |
| predicted_SLG | 0.431 | 0.250 | 0.333 | Hitting_SLG | 0.393 | 1.000 | -0.143 | -0.750 |
| predicted_SO | 1.138 | 1.000 | 1.000 | Hitting_SO | 0.969 | 1.000 | 0.031 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_RBI: 0.3200 -> 1.0000 (boost 0.6800, better) |
| Biggest Deboost | predicted_BB: 0.2070 -> 0.0000 (deboost -0.2070, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 3 | 0 | predicted_H: 0.8000 -> 0.9016 (boost 0.1016, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3423 -> 0.3003 (deboost -0.0420, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 1 | 7 | 2 | 6 | predicted_H: 0.9124 -> 1.0000 (boost 0.0876, better) | predicted_AB: 3.4767 -> 3.0000 (deboost -0.4767, worse) | AB rounded to 3 (raw=3.48), rates preserved: AVG=0.262 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4371 -> 0.0000 (deboost -0.4371, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2624 -> 0.3330 (boost 0.0706, better) | predicted_SLG: 0.4133 -> 0.3330 (deboost -0.0803, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4133 (boost 0.0803, better) | predicted_AVG: 0.3330 -> 0.2624 (deboost -0.0706, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "703607",
"player_name": "Henry Bolte",
"position": "CF",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.172,
"predicted_3B": 0.0,
"predicted_AB": 3.448,
"predicted_AVG": 0.274,
"predicted_BB": 0.207,
"predicted_H": 0.8,
"predicted_HR": 0.11,
"predicted_OBP": 0.338,
"predicted_R": 0.379,
"predicted_RBI": 0.32,
"predicted_SLG": 0.431,
"predicted_SO": 1.138
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1708,
"predicted_3B": 0.0012,
"predicted_AB": 3.4767,
"predicted_AVG": 0.2847,
"predicted_BB": 0.1876,
"predicted_H": 0.9016,
"predicted_HBP": 0.106,
"predicted_HR": 0.1154,
"predicted_OBP": 0.3423,
"predicted_R": 0.429,
"predicted_RBI": 0.3173,
"predicted_SLG": 0.441,
"predicted_SO": 1.1
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.172,
"after": 0.1708,
"delta": -0.0012,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0012,
"delta": 0.0012,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.448,
"after": 3.4767,
"delta": 0.0287,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.274,
"after": 0.2847,
"delta": 0.0107,
"percent_delta": 0.0391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.207,
"after": 0.1876,
"delta": -0.0194,
"percent_delta": -0.0937,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 0.9016,
"delta": 0.1016,
"percent_delta": 0.127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1154,
"delta": 0.0054,
"percent_delta": 0.0491,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3423,
"delta": 0.0043,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.379,
"after": 0.429,
"delta": 0.05,
"percent_delta": 0.1319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.3173,
"delta": -0.0027,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.441,
"delta": 0.01,
"percent_delta": 0.0232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.138,
"after": 1.1,
"delta": -0.038,
"percent_delta": -0.0334,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8,
"after": 0.9016,
"delta": 0.1016,
"percent_delta": 0.127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 29
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1708,
"predicted_3B": 0.0012,
"predicted_AB": 3.4767,
"predicted_AVG": 0.2624,
"predicted_BB": 0.188,
"predicted_H": 0.9124,
"predicted_HBP": 0.106,
"predicted_HR": 0.1171,
"predicted_OBP": 0.3003,
"predicted_R": 0.4371,
"predicted_RBI": 0.3233,
"predicted_SLG": 0.4133,
"predicted_SO": 1.0975
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1708,
"after": 0.1708,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4767,
"after": 3.4767,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2847,
"after": 0.2624,
"delta": -0.0223,
"percent_delta": -0.0783,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1876,
"after": 0.188,
"delta": 0.0004,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9016,
"after": 0.9124,
"delta": 0.0108,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.106,
"after": 0.106,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1154,
"after": 0.1171,
"delta": 0.0017,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3423,
"after": 0.3003,
"delta": -0.042,
"percent_delta": -0.1227,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.429,
"after": 0.4371,
"delta": 0.0081,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3173,
"after": 0.3233,
"delta": 0.006,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.441,
"after": 0.4133,
"delta": -0.0277,
"percent_delta": -0.0628,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1,
"after": 1.0975,
"delta": -0.0025,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3423,
"after": 0.3003,
"delta": -0.042,
"percent_delta": -0.1227,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.48), rates preserved: AVG=0.262 HR/AB=0.034",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1708,
"after": 0.0,
"delta": -0.1708,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0,
"delta": -0.0012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4767,
"after": 3.0,
"delta": -0.4767,
"percent_delta": -0.1371,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9124,
"after": 1.0,
"delta": 0.0876,
"percent_delta": 0.096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.106,
"after": 0.0,
"delta": -0.106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1171,
"after": 0.0,
"delta": -0.1171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3233,
"after": 0.0,
"delta": -0.3233,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0975,
"after": 1.0,
"delta": -0.0975,
"percent_delta": -0.0888,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.9124,
"after": 1.0,
"delta": 0.0876,
"percent_delta": 0.096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.4767,
"after": 3.0,
"delta": -0.4767,
"percent_delta": -0.1371,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4371,
"after": 0.0,
"delta": -0.4371,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4371,
"after": 0.0,
"delta": -0.4371,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2624,
"after": 0.333,
"delta": 0.0706,
"percent_delta": 0.2691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3003,
"after": 0.333,
"delta": 0.0327,
"percent_delta": 0.1089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4133,
"after": 0.333,
"delta": -0.0803,
"percent_delta": -0.1943,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2624,
"after": 0.333,
"delta": 0.0706,
"percent_delta": 0.2691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4133,
"after": 0.333,
"delta": -0.0803,
"percent_delta": -0.1943,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2624,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3003,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4133,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2624,
"delta": -0.0706,
"percent_delta": -0.2119,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3003,
"delta": -0.0327,
"percent_delta": -0.0983,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4133,
"delta": 0.0803,
"percent_delta": 0.2412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4133,
"delta": 0.0803,
"percent_delta": 0.2412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2624,
"delta": -0.0706,
"percent_delta": -0.2119,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.172,
"after": 0.0,
"delta": -0.172,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.448,
"after": 4.0,
"delta": 0.552,
"percent_delta": 0.1601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.274,
"after": 0.2624,
"delta": -0.0116,
"percent_delta": -0.0423,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.207,
"after": 0.0,
"delta": -0.207,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3003,
"delta": -0.0377,
"percent_delta": -0.1115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.379,
"after": 1.0,
"delta": 0.621,
"percent_delta": 1.6385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 1.0,
"delta": 0.68,
"percent_delta": 2.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.4133,
"delta": -0.0177,
"percent_delta": -0.0411,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.138,
"after": 1.0,
"delta": -0.138,
"percent_delta": -0.1213,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.32,
"after": 1.0,
"delta": 0.68,
"percent_delta": 2.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.207,
"after": 0.0,
"delta": -0.207,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.172 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.448 | - |
| predicted_AVG | 0.274 | - |
| predicted_BB | 0.207 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.338 | - |
| predicted_R | 0.379 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.431 | - |
| predicted_SO | 1.138 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.171 | -0.001 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.477 | 0.029 |
| predicted_AVG | 0.285 | 0.011 |
| predicted_BB | 0.188 | -0.019 |
| predicted_H | 0.902 | 0.102 |
| predicted_HBP | 0.106 | - |
| predicted_HR | 0.115 | 0.005 |
| predicted_OBP | 0.342 | 0.004 |
| predicted_R | 0.429 | 0.050 |
| predicted_RBI | 0.317 | -0.003 |
| predicted_SLG | 0.441 | 0.010 |
| predicted_SO | 1.100 | -0.038 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.171 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.477 | 0.000 |
| predicted_AVG | 0.262 | -0.022 |
| predicted_BB | 0.188 | 0.000 |
| predicted_H | 0.912 | 0.011 |
| predicted_HBP | 0.106 | 0.000 |
| predicted_HR | 0.117 | 0.002 |
| predicted_OBP | 0.300 | -0.042 |
| predicted_R | 0.437 | 0.008 |
| predicted_RBI | 0.323 | 0.006 |
| predicted_SLG | 0.413 | -0.028 |
| predicted_SO | 1.097 | -0.003 |
AB rounded to 3 (raw=3.48), rates preserved: AVG=0.262 HR/AB=0.034
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.171 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.477 |
| predicted_AVG | 0.333 | 0.071 |
| predicted_BB | 0.000 | -0.188 |
| predicted_H | 1.000 | 0.088 |
| predicted_HR | 0.000 | -0.117 |
| predicted_OBP | 0.333 | 0.033 |
| predicted_R | 0.000 | -0.437 |
| predicted_RBI | 0.000 | -0.323 |
| predicted_SLG | 0.333 | -0.080 |
| predicted_SO | 1.000 | -0.097 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 6.000 | 1.000 | 0.000 | 1.000 | 1.000 | 4.000 | 0.000 | 4.000 | 0.3529 | 0.3529 | 0.5882 | 0.3529 | 0.0588 | 0.0588 | 0.0000 | 0.2353 |
| last_10 | 0.20 | 10 | - | 34.000 | 10.000 | 1.000 | 0.000 | 2.000 | 3.000 | 6.000 | 0.000 | 12.000 | 0.2941 | 0.3333 | 0.5000 | 0.2941 | 0.0588 | 0.0882 | 0.0000 | 0.3529 |
| season | 0.60 | 29 | - | 100.000 | 31.000 | 5.000 | 0.000 | 2.000 | 8.000 | 11.000 | 6.000 | 33.000 | 0.3100 | 0.3694 | 0.4200 | 0.3100 | 0.0200 | 0.0800 | 0.0600 | 0.3300 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1690 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.5220 |
| predicted_AVG | 0.3016 |
| predicted_BB | 0.1570 |
| predicted_H | 1.0620 |
| predicted_HBP | 0.1060 |
| predicted_HR | 0.1240 |
| predicted_OBP | 0.3492 |
| predicted_R | 0.5080 |
| predicted_RBI | 0.3130 |
| predicted_SLG | 0.4569 |
| predicted_SO | 1.0400 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1720 | 0.1690 | 0.1708 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.4480 | 3.5220 | 3.4767 | model_form_blend |
| predicted_AVG | 0.2740 | 0.3016 | 0.2847 | model_form_blend |
| predicted_BB | 0.2070 | 0.1570 | 0.1876 | model_form_blend |
| predicted_H | 0.8000 | 1.0620 | 0.9016 | model_form_blend |
| predicted_HBP | - | 0.1060 | 0.1060 | form_only |
| predicted_HR | 0.1100 | 0.1240 | 0.1154 | model_form_blend |
| predicted_OBP | 0.3380 | 0.3492 | 0.3423 | model_form_blend |
| predicted_R | 0.3790 | 0.5080 | 0.4290 | model_form_blend |
| predicted_RBI | 0.3200 | 0.3130 | 0.3173 | model_form_blend |
| predicted_SLG | 0.4310 | 0.4569 | 0.4410 | model_form_blend |
| predicted_SO | 1.1380 | 1.0400 | 1.1000 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 65 |
| Season rows before report date | 65 |
| Report year | 2026 |
| Profile rows used | 29 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.31 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 703607 |
| playerID | 703607 |
| playerName | Henry Bolte |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.2 |
| sl_bb_percent | 6.2 |
| sl_woba | 0.358 |
| sl_xwoba | 0.291 |
| sl_xba | 0.224 |
| sl_xslg | 0.34 |
| sl_sweet_spot_percent | 20.6 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 50.7 |
| sl_exit_velocity_avg | 91.7 |
| sl_launch_angle_avg | 0.2 |
| sl_whiff_percent | 34.8 |
| sl_swing_percent | 53.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.136 | 0.000 | 0.000 | Hitting_2B | 0.172 | 0.000 | -0.172 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.227 | 4.000 | 3.000 | Hitting_AB | 3.448 | 1.000 | 0.552 | 3.000 |
| predicted_AVG | 0.242 | 0.500 | 0.333 | Hitting_AVG | 0.261 | 0.000 | 0.239 | 0.500 |
| predicted_BB | 0.318 | 0.000 | 0.000 | Hitting_BB | 0.340 | 1.000 | -0.340 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.039 | 0.000 | -0.039 | 0.000 |
| predicted_H | 0.700 | 2.000 | 1.000 | Hitting_H | 0.901 | 0.000 | 1.099 | 2.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_OBP | 0.311 | 0.500 | 0.333 | Hitting_OBP | 0.332 | 0.500 | 0.168 | 0.000 |
| predicted_R | 0.288 | 1.000 | 0.000 | Hitting_R | 0.320 | 0.000 | 0.680 | 1.000 |
| predicted_RBI | 0.430 | 1.000 | 0.000 | Hitting_RBI | 0.305 | 0.000 | 0.695 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.025 | 0.000 | -0.025 | 0.000 |
| predicted_SLG | 0.356 | 0.500 | 0.333 | Hitting_SLG | 0.341 | 0.000 | 0.159 | 0.500 |
| predicted_SO | 0.500 | 0.000 | 0.000 | Hitting_SO | 0.502 | 0.000 | -0.502 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_H: 0.7000 -> 2.0000 (boost 1.3000, better) |
| Biggest Deboost | predicted_SO: 0.5000 -> 0.0000 (deboost -0.5000, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_R: 0.2880 -> 0.3564 (boost 0.0684, better) | predicted_AB: 3.2270 -> 3.1490 (deboost -0.0780, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2320 -> 0.2200 (deboost -0.0120, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.6928 -> 1.0000 (boost 0.3072, better) | predicted_SO: 0.4885 -> 0.0000 (deboost -0.4885, better) | AB rounded to 3 (raw=3.23), rates preserved: AVG=0.215 HR/AB=0.030 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3631 -> 0.0000 (deboost -0.3631, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2200 -> 0.3330 (boost 0.1130, better) | predicted_SLG: 0.3478 -> 0.3330 (deboost -0.0148, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 4 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3478 (boost 0.0148, better) | predicted_AVG: 0.3330 -> 0.2200 (deboost -0.1130, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "643446",
"player_name": "Jeff McNeil",
"position": "2B",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.136,
"predicted_3B": 0.0,
"predicted_AB": 3.227,
"predicted_AVG": 0.242,
"predicted_BB": 0.318,
"predicted_H": 0.7,
"predicted_HR": 0.09,
"predicted_OBP": 0.311,
"predicted_R": 0.288,
"predicted_RBI": 0.43,
"predicted_SLG": 0.356,
"predicted_SO": 0.5
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1147,
"predicted_3B": 0.0004,
"predicted_AB": 3.149,
"predicted_AVG": 0.232,
"predicted_BB": 0.3539,
"predicted_H": 0.6846,
"predicted_HBP": 0.018,
"predicted_HR": 0.0942,
"predicted_OBP": 0.311,
"predicted_R": 0.3564,
"predicted_RBI": 0.4392,
"predicted_SLG": 0.3517,
"predicted_SO": 0.4896
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.136,
"after": 0.1147,
"delta": -0.0213,
"percent_delta": -0.1566,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.227,
"after": 3.149,
"delta": -0.078,
"percent_delta": -0.0242,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.232,
"delta": -0.01,
"percent_delta": -0.0413,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.318,
"after": 0.3539,
"delta": 0.0359,
"percent_delta": 0.1129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 0.6846,
"delta": -0.0154,
"percent_delta": -0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0942,
"delta": 0.0042,
"percent_delta": 0.0467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.311,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.288,
"after": 0.3564,
"delta": 0.0684,
"percent_delta": 0.2375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4392,
"delta": 0.0092,
"percent_delta": 0.0214,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.3517,
"delta": -0.0043,
"percent_delta": -0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.5,
"after": 0.4896,
"delta": -0.0104,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.288,
"after": 0.3564,
"delta": 0.0684,
"percent_delta": 0.2375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.227,
"after": 3.149,
"delta": -0.078,
"percent_delta": -0.0242,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1147,
"predicted_3B": 0.0004,
"predicted_AB": 3.149,
"predicted_AVG": 0.22,
"predicted_BB": 0.3547,
"predicted_H": 0.6928,
"predicted_HBP": 0.018,
"predicted_HR": 0.0956,
"predicted_OBP": 0.299,
"predicted_R": 0.3631,
"predicted_RBI": 0.4475,
"predicted_SLG": 0.3478,
"predicted_SO": 0.4885
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1147,
"after": 0.1147,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.149,
"after": 3.149,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.22,
"delta": -0.012,
"percent_delta": -0.0517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3539,
"after": 0.3547,
"delta": 0.0008,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6846,
"after": 0.6928,
"delta": 0.0082,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0942,
"after": 0.0956,
"delta": 0.0014,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.299,
"delta": -0.012,
"percent_delta": -0.0386,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3564,
"after": 0.3631,
"delta": 0.0067,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4392,
"after": 0.4475,
"delta": 0.0083,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3517,
"after": 0.3478,
"delta": -0.0039,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.4896,
"after": 0.4885,
"delta": -0.0011,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.22,
"delta": -0.012,
"percent_delta": -0.0517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.23), rates preserved: AVG=0.215 HR/AB=0.030",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1147,
"after": 0.0,
"delta": -0.1147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.149,
"after": 3.0,
"delta": -0.149,
"percent_delta": -0.0473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3547,
"after": 0.0,
"delta": -0.3547,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6928,
"after": 1.0,
"delta": 0.3072,
"percent_delta": 0.4434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0956,
"after": 0.0,
"delta": -0.0956,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4475,
"after": 0.0,
"delta": -0.4475,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4885,
"after": 0.0,
"delta": -0.4885,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6928,
"after": 1.0,
"delta": 0.3072,
"percent_delta": 0.4434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4885,
"after": 0.0,
"delta": -0.4885,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3631,
"after": 0.0,
"delta": -0.3631,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3631,
"after": 0.0,
"delta": -0.3631,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.333,
"delta": 0.113,
"percent_delta": 0.5136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.333,
"delta": 0.034,
"percent_delta": 0.1137,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3478,
"after": 0.333,
"delta": -0.0148,
"percent_delta": -0.0426,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.333,
"delta": 0.113,
"percent_delta": 0.5136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3478,
"after": 0.333,
"delta": -0.0148,
"percent_delta": -0.0426,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.22,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.299,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3478,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.22,
"delta": -0.113,
"percent_delta": -0.3393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.299,
"delta": -0.034,
"percent_delta": -0.1022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3478,
"delta": 0.0148,
"percent_delta": 0.0443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3478,
"delta": 0.0148,
"percent_delta": 0.0443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.22,
"delta": -0.113,
"percent_delta": -0.3393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.136,
"after": 0.0,
"delta": -0.136,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.227,
"after": 4.0,
"delta": 0.773,
"percent_delta": 0.2395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.22,
"delta": -0.022,
"percent_delta": -0.0909,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.318,
"after": 0.0,
"delta": -0.318,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 2.0,
"delta": 1.3,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.299,
"delta": -0.012,
"percent_delta": -0.0386,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.288,
"after": 1.0,
"delta": 0.712,
"percent_delta": 2.4722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 1.0,
"delta": 0.57,
"percent_delta": 1.3256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.3478,
"delta": -0.0082,
"percent_delta": -0.023,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7,
"after": 2.0,
"delta": 1.3,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.136 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.227 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.318 | - |
| predicted_H | 0.700 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.311 | - |
| predicted_R | 0.288 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.356 | - |
| predicted_SO | 0.500 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | -0.021 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.149 | -0.078 |
| predicted_AVG | 0.232 | -0.010 |
| predicted_BB | 0.354 | 0.036 |
| predicted_H | 0.685 | -0.015 |
| predicted_HBP | 0.018 | - |
| predicted_HR | 0.094 | 0.004 |
| predicted_OBP | 0.311 | 0.000 |
| predicted_R | 0.356 | 0.068 |
| predicted_RBI | 0.439 | 0.009 |
| predicted_SLG | 0.352 | -0.004 |
| predicted_SO | 0.490 | -0.010 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.149 | 0.000 |
| predicted_AVG | 0.220 | -0.012 |
| predicted_BB | 0.355 | 0.001 |
| predicted_H | 0.693 | 0.008 |
| predicted_HBP | 0.018 | 0.000 |
| predicted_HR | 0.096 | 0.001 |
| predicted_OBP | 0.299 | -0.012 |
| predicted_R | 0.363 | 0.007 |
| predicted_RBI | 0.448 | 0.008 |
| predicted_SLG | 0.348 | -0.004 |
| predicted_SO | 0.488 | -0.001 |
AB rounded to 3 (raw=3.23), rates preserved: AVG=0.215 HR/AB=0.030
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.115 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 3.000 | -0.149 |
| predicted_AVG | 0.333 | 0.113 |
| predicted_BB | 0.000 | -0.355 |
| predicted_H | 1.000 | 0.307 |
| predicted_HR | 0.000 | -0.096 |
| predicted_OBP | 0.333 | 0.034 |
| predicted_R | 0.000 | -0.363 |
| predicted_RBI | 0.000 | -0.448 |
| predicted_SLG | 0.333 | -0.015 |
| predicted_SO | 0.000 | -0.488 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 3.000 | 0.000 | 0.000 | 1.000 | 4.000 | 4.000 | 3.000 | 1.000 | 0.2500 | 0.4000 | 0.5000 | 0.2500 | 0.0833 | 0.3333 | 0.2500 | 0.0833 |
| last_10 | 0.20 | 10 | - | 26.000 | 3.000 | 0.000 | 0.000 | 1.000 | 4.000 | 4.000 | 4.000 | 5.000 | 0.1154 | 0.2333 | 0.2308 | 0.1154 | 0.0385 | 0.1538 | 0.1538 | 0.1923 |
| season | 0.60 | 66 | - | 213.000 | 50.000 | 9.000 | 0.000 | 3.000 | 19.000 | 19.000 | 21.000 | 33.000 | 0.2347 | 0.3067 | 0.3192 | 0.2347 | 0.0141 | 0.0892 | 0.0986 | 0.1549 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0850 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.0400 |
| predicted_AVG | 0.2180 |
| predicted_BB | 0.4040 |
| predicted_H | 0.6630 |
| predicted_HBP | 0.0180 |
| predicted_HR | 0.1000 |
| predicted_OBP | 0.3110 |
| predicted_R | 0.4520 |
| predicted_RBI | 0.4520 |
| predicted_SLG | 0.3457 |
| predicted_SO | 0.4750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1360 | 0.0850 | 0.1147 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.2270 | 3.0400 | 3.1490 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2180 | 0.2320 | model_form_blend |
| predicted_BB | 0.3180 | 0.4040 | 0.3539 | model_form_blend |
| predicted_H | 0.7000 | 0.6630 | 0.6846 | model_form_blend |
| predicted_HBP | - | 0.0180 | 0.0180 | form_only |
| predicted_HR | 0.0900 | 0.1000 | 0.0942 | model_form_blend |
| predicted_OBP | 0.3110 | 0.3110 | 0.3110 | model_form_blend |
| predicted_R | 0.2880 | 0.4520 | 0.3564 | model_form_blend |
| predicted_RBI | 0.4300 | 0.4520 | 0.4392 | model_form_blend |
| predicted_SLG | 0.3560 | 0.3457 | 0.3517 | model_form_blend |
| predicted_SO | 0.5000 | 0.4750 | 0.4896 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 203 |
| Season rows before report date | 203 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_PIT@OAK |
| game_type | full |
| mlbID | 643446 |
| playerID | 643446 |
| playerName | Jeff McNeil |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.8 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.285 |
| sl_xwoba | 0.308 |
| sl_xba | 0.27 |
| sl_xslg | 0.347 |
| sl_sweet_spot_percent | 38.8 |
| sl_barrel_batted_rate | 1.1 |
| sl_hard_hit_percent | 30.6 |
| sl_exit_velocity_avg | 86.3 |
| sl_launch_angle_avg | 13.0 |
| sl_whiff_percent | 17.2 |
| sl_swing_percent | 54.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.500 | 1.000 | 0.500 | 1.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 2.000 | 3.000 | 0.000 | -1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 5.000 | 5.000 | -3.000 | -3.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.775 | 5.000 | -0.575 | 0.200 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 4.750 | 6.000 | -1.750 | -3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "695611",
"player_name": "Gage Jump",
"position": "Starter",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 5.6667,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_R": 2.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 3.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 4 | 23.100 | 8.000 | 20.000 | 6.000 | 19.000 | 0.000 | 3.0857 | 1.1143 | 0.3429 | 0.8571 | 0.2571 | 0.8143 | 0.0000 |
| last_10 | 0.35 | 4 | 23.100 | 8.000 | 20.000 | 6.000 | 19.000 | 0.000 | 3.0857 | 1.1143 | 0.3429 | 0.8571 | 0.2571 | 0.8143 | 0.0000 |
| season | 0.20 | 4 | 23.100 | 8.000 | 20.000 | 6.000 | 19.000 | 0.000 | 3.0857 | 1.1143 | 0.3429 | 0.8571 | 0.2571 | 0.8143 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8380 |
| predicted_ER | 2.5040 |
| predicted_ERA | 3.8761 |
| predicted_H | 5.3620 |
| predicted_HR | 0.4710 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.1330 |
| predicted_WHIP | 1.2381 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.8380 | 1.9327 | model_form_blend |
| predicted_ER | 2.0000 | 2.5040 | 2.2093 | model_form_blend |
| predicted_ERA | - | 3.8761 | 3.8761 | form_only |
| predicted_H | 2.0000 | 5.3620 | 3.3961 | model_form_blend |
| predicted_HR | 1.0000 | 0.4710 | 0.7803 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 3.0000 | 5.1330 | 3.8857 | model_form_blend |
| predicted_WHIP | - | 1.2381 | 1.2381 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 4 |
| Season rows before report date | 4 |
| Report year | 2026 |
| Profile rows used | 4 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 2 |
| R | 2 |
| ER | 2 |
| BB | 2 |
| SO | 3 |
| HR | 1 |
| BF | 22 |
| Pitches | 86 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 21 |
| Pitching_ER | 3 |
| Pitching_ERA | 3.09 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 5 |
| Pitching_H | 5 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 75 |
| Pitching_R | 3 |
| Pitching_SO | 6 |
| Pitching_Strikes | 52 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_COL@OAK |
| game_type | full |
| mlbID | 695611 |
| playerID | 695611 |
| playerName | Gage Jump |
| pos | P |
| started | True |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-12 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.258 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 29.9 |
| sl_whiff_percent | 24.2 |
| sl_swing_percent | 52.9 |
| sl_avg_best_speed | 77.163600294 |
| sl_avg_hyper_speed | 93.578788507 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.467 | 0.000 | -0.467 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.667 | 1.000 | -0.667 | -1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.867 | 1.000 | 1.133 | 1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.927 | 1.000 | 0.173 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.333 | 0.000 | -1.333 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "665660",
"player_name": "Elvis Alvarado",
"position": "Middle Reliever",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.3333,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.100 | 1.000 | 2.000 | 0.000 | 11.000 | 1.000 | 1.4211 | 0.3158 | 0.1579 | 0.3158 | 0.0000 | 1.7368 | 0.1579 |
| last_10 | 0.35 | 10 | 10.200 | 5.000 | 6.000 | 3.000 | 16.000 | 2.000 | 4.2188 | 0.8438 | 0.4688 | 0.5625 | 0.2812 | 1.5000 | 0.1875 |
| season | 0.20 | 15 | 16.000 | 10.000 | 13.000 | 7.000 | 20.000 | 2.000 | 5.6250 | 1.2500 | 0.6250 | 0.8125 | 0.4375 | 1.2500 | 0.1250 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3710 |
| predicted_ER | 0.5630 |
| predicted_ERA | 4.0158 |
| predicted_H | 0.9980 |
| predicted_HR | 0.1920 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.4870 |
| predicted_WHIP | 1.0847 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3710 | 0.1453 | model_form_blend |
| predicted_ER | 0.0000 | 0.5630 | 0.2205 | model_form_blend |
| predicted_ERA | - | 4.0158 | 4.0158 | form_only |
| predicted_H | 2.0000 | 0.9980 | 1.6075 | model_form_blend |
| predicted_HR | 0.0000 | 0.1920 | 0.0752 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 0.0000 | 1.4870 | 0.5824 | model_form_blend |
| predicted_WHIP | - | 1.0847 | 1.0847 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 15 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 2 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 6 |
| Pitches | 21 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 1 |
| Pitching_ERA | 5.63 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 16 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260616_PIT@OAK |
| game_type | full |
| mlbID | 665660 |
| playerID | 665660 |
| playerName | Elvis Alvarado |
| pos | P |
| started | False |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-16 |
| sl_k_percent | 30.3 |
| sl_bb_percent | 10.6 |
| sl_woba | 0.319 |
| sl_xwoba | 0.33 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 20.5 |
| sl_hard_hit_percent | 48.7 |
| sl_whiff_percent | 33.1 |
| sl_swing_percent | 53.2 |
| sl_avg_best_speed | 80.2056055 |
| sl_avg_hyper_speed | 94.753618462 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.649 | 1.000 | 0.351 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.324 | 2.000 | -0.324 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.784 | 2.000 | -0.784 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.735 | 1.000 | 0.265 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.081 | 1.000 | 0.919 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663687",
"player_name": "Hogan Harris",
"position": "Middle Reliever",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 4.000 | 7.000 | 2.000 | 7.000 | 1.000 | 6.3529 | 1.5882 | 0.7059 | 1.2353 | 0.3529 | 1.2353 | 0.1765 |
| last_10 | 0.35 | 10 | 10.100 | 4.000 | 8.000 | 3.000 | 13.000 | 1.000 | 3.4839 | 1.0645 | 0.3871 | 0.7742 | 0.2903 | 1.2581 | 0.0968 |
| season | 0.20 | 37 | 34.200 | 12.000 | 29.000 | 24.000 | 40.000 | 3.000 | 3.1154 | 1.5288 | 0.3462 | 0.8365 | 0.6923 | 1.1539 | 0.0865 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3840 |
| predicted_ER | 0.5130 |
| predicted_ERA | 4.6200 |
| predicted_H | 0.9860 |
| predicted_HR | 0.1370 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1050 |
| predicted_WHIP | 1.3695 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3840 | 0.7091 | model_form_blend |
| predicted_ER | 0.0000 | 0.5130 | 0.2423 | model_form_blend |
| predicted_ERA | - | 4.6200 | 4.6200 | form_only |
| predicted_H | 0.0000 | 0.9860 | 0.4656 | model_form_blend |
| predicted_HR | 0.0000 | 0.1370 | 0.0647 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.1050 | 1.5773 | model_form_blend |
| predicted_WHIP | - | 1.3695 | 1.3695 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 37 |
| Season rows before report date | 37 |
| Report year | 2026 |
| Profile rows used | 37 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 2 |
| HR | 0 |
| BF | 4 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 2 |
| Pitching_ERA | 3.12 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 25 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | BS |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_PIT@OAK |
| game_type | full |
| mlbID | 663687 |
| playerID | 663687 |
| playerName | Hogan Harris |
| pos | P |
| started | False |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-16 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 15.3 |
| sl_woba | 0.311 |
| sl_xwoba | 0.284 |
| sl_sweet_spot_percent | 26.4 |
| sl_barrel_batted_rate | 3.3 |
| sl_hard_hit_percent | 27.5 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 42.7 |
| sl_avg_best_speed | 74.321537111 |
| sl_avg_hyper_speed | 92.291639889 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.312 | 0.000 | -0.312 | 0.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 0.500 | 0.000 | 1.500 | 2.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.969 | 1.000 | 1.031 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.825 | 1.000 | 0.175 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.969 | 0.000 | 1.031 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "643410",
"player_name": "Mark Leiter Jr.",
"position": "Middle Reliever",
"team": "OAK",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_R": 2.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 1.000 | 3.000 | 2.000 | 6.000 | 0.000 | 2.0769 | 1.1538 | 0.2308 | 0.6923 | 0.4615 | 1.3846 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 1.000 | 5.000 | 4.000 | 8.000 | 0.000 | 1.0000 | 1.0000 | 0.1111 | 0.5556 | 0.4444 | 0.8889 | 0.0000 |
| season | 0.20 | 32 | 29.200 | 16.000 | 31.000 | 10.000 | 31.000 | 2.000 | 4.8539 | 1.3820 | 0.5393 | 1.0449 | 0.3371 | 1.0449 | 0.0674 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4000 |
| predicted_ER | 0.3660 |
| predicted_ERA | 3.2897 |
| predicted_H | 0.8340 |
| predicted_HR | 0.0740 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0490 |
| predicted_WHIP | 1.2336 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4000 | 0.1824 | model_form_blend |
| predicted_ER | 2.0000 | 0.3660 | 1.2548 | model_form_blend |
| predicted_ERA | - | 3.2897 | 3.2897 | form_only |
| predicted_H | 2.0000 | 0.8340 | 1.4683 | model_form_blend |
| predicted_HR | 1.0000 | 0.0740 | 0.5777 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.0490 | 1.5663 | model_form_blend |
| predicted_WHIP | - | 1.2336 | 1.2336 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 32 |
| Season rows before report date | 32 |
| Report year | 2026 |
| Profile rows used | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 2 |
| R | 2 |
| ER | 2 |
| BB | 0 |
| SO | 2 |
| HR | 1 |
| BF | 5 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.85 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 9 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260616_PIT@OAK |
| game_type | full |
| mlbID | 643410 |
| playerID | 643410 |
| playerName | Mark Leiter Jr. |
| pos | P |
| started | False |
| startingPosition | P |
| team | OAK |
| teamID | 20 |
| game_date | 2026-06-16 |
| sl_k_percent | 24.4 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.309 |
| sl_xwoba | 0.318 |
| sl_sweet_spot_percent | 40.0 |
| sl_barrel_batted_rate | 3.5 |
| sl_hard_hit_percent | 30.6 |
| sl_whiff_percent | 27.6 |
| sl_swing_percent | 46.8 |
| sl_avg_best_speed | 76.103073953 |
| sl_avg_hyper_speed | 92.734426941 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | MIN 3 - 2 TEX | MIN | 0.563 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | MIN 4 - 1 TEX | MIN | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 7 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5626 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 6.398 | 4.821 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 5 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 2 | 0.5626 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 3 | 2 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 3 | 2 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 1 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.5028049792531122,
"base_low_score_probability": 0.4149377593360996,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.08786721991701257,
"confidence": 0.7058800000000001,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.2117600000000002
},
"prediction": "low_scoring",
"expected_total_runs": 5,
"pre_simulation_expected_total_runs": 7.0,
"low_score_model_expected_total_runs": 7.0,
"final_simulation_total_runs": 5,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 128,
"near_bucket_sample_size": 128,
"medium_bucket_sample_size": 227,
"wide_bucket_sample_size": 242,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5547,
"bayesian_hit_rate": 0.5479,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8767,
"confidence_cap": 0.78,
"raw_pick_probability": 0.602,
"calibrated_pick_probability": 0.5626,
"predicted_side": "away"
}{
"applied": false,
"home": {
"team": "TEX",
"games": 73,
"wins": 35,
"losses": 38,
"win_pct": 0.4794520547945205,
"runs_scored": 289,
"runs_allowed": 295,
"run_differential": -6,
"run_differential_per_game": -0.0821917808219178,
"available": true
},
"away": {
"team": "MIN",
"games": 75,
"wins": 35,
"losses": 40,
"win_pct": 0.4666666666666667,
"runs_scored": 354,
"runs_allowed": 384,
"run_differential": -30,
"run_differential_per_game": -0.4,
"available": true
},
"run_differential_edge_per_game": 0.3178,
"win_pct_edge": 0.0128,
"quality_edge": 0.337,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "MIN",
"guardrail_predicted_team": "MIN",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "MIN",
"output_opponent_team": "TEX",
"final_score_winner": "MIN",
"pre_simulation_winner": "MIN",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "MIN 3 - 2 TEX",
"winner": "MIN"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "MIN 4 - 1 TEX",
"winner": "MIN"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": -1,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "TEX",
"games": 73,
"wins": 35,
"losses": 38,
"win_pct": 0.4794520547945205,
"runs_scored": 289,
"runs_allowed": 295,
"run_differential": -6,
"run_differential_per_game": -0.0821917808219178,
"available": true
},
"away": {
"team": "MIN",
"games": 75,
"wins": 35,
"losses": 40,
"win_pct": 0.4666666666666667,
"runs_scored": 354,
"runs_allowed": 384,
"run_differential": -30,
"run_differential_per_game": -0.4,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.0962,
"final_margin": -1.0962,
"margin_cap": 1.5,
"season_quality_edge": 0.337,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.562596,
"final_confidence": 0.562596,
"confidence_cap": 0.66,
"score_gap": 1.0962,
"calibration_sample_size": 128,
"calibration_empirical_hit_rate": 0.5547,
"calibration_bayesian_hit_rate": 0.5479,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.337,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "MIN 3 - 2 TEX",
"winner": "MIN"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "MIN 4 - 1 TEX",
"winner": "MIN"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": -1,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 3,
"home_runs": 2,
"confidence": 0.562596,
"home_win_probability": 0.437404,
"away_win_probability": 0.562596,
"predicted_score_text": "MIN 3 - 2 TEX",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "MIN",
"original_runs": 3,
"run_delta": -0.0105,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": -0.0019050369219886568,
"contact": -0.09911856653627413,
"power": 0.14017157474749675,
"discipline": -0.14956010782118273,
"xwoba": 0.3131515151515151,
"recent_xwoba": 0.3131515151515151,
"barrel": 9.357575757575756,
"ab_hard_contact": -0.07228567676724093,
"ab_bat_speed": 70.00832987617672,
"ab_strikeout_rate": 0.23677745551414026,
"available_players": 9,
"top_players": [
{
"player_id": "621439",
"player_name": "Byron Buxton",
"position": "CF",
"weight": 4.0,
"quality": 0.7248942397515747,
"contact": 0.5207659996596783,
"power": 1.6916596877929677,
"discipline": -0.5421092618676946,
"xwoba": 0.35,
"recent_xwoba": 0.35,
"barrel": 18.9,
"ab_hard_contact": 0.4131937558593537,
"ab_bat_speed": 72.5943463356974,
"ab_strikeout_rate": 0.26063829787234044,
"available": 1.0
},
{
"player_id": "807712",
"player_name": "Luke Keaschall",
"position": "2B",
"weight": 4.0,
"quality": -0.5536358859812848,
"contact": -0.6138261037851036,
"power": -0.9814717852946715,
"discipline": 0.5302433217189314,
"xwoba": 0.289,
"recent_xwoba": 0.289,
"barrel": 3.0,
"ab_hard_contact": -0.5669595154172424,
"ab_bat_speed": 66.92657222222222,
"ab_strikeout_rate": 0.158,
"available": 1.0
},
{
"player_id": "665019",
"player_name": "Kody Clemens",
"position": "RF",
"weight": 4.0,
"quality": 0.45040766133938204,
"contact": 0.5935836873555391,
"power": 1.014459922468071,
"discipline": -0.27188790751694875,
"xwoba": 0.337,
"recent_xwoba": 0.337,
"barrel": 13.3,
"ab_hard_contact": 0.8103413065042662,
"ab_bat_speed": 68.88689750290361,
"ab_strikeout_rate": 0.2534883720930233,
"available": 1.0
},
{
"player_id": "686797",
"player_name": "Brooks Lee",
"position": "3B",
"weight": 4.0,
"quality": -0.5284655977432957,
"contact": -0.6091598161477406,
"power": -0.6547585380228459,
"discipline": 0.05794478692039673,
"xwoba": 0.277,
"recent_xwoba": 0.277,
"barrel": 4.7,
"ab_hard_contact": -0.4650755223616863,
"ab_bat_speed": 68.15155555555556,
"ab_strikeout_rate": 0.1830128205128205,
"available": 1.0
},
{
"player_id": "663616",
"player_name": "Trevor Larnach",
"position": "LF",
"weight": 3.0,
"quality": -0.1830830518647247,
"contact": -0.23073038102087587,
"power": -0.48402124732041674,
"discipline": 0.48034843205574906,
"xwoba": 0.327,
"recent_xwoba": 0.327,
"barrel": 6.4,
"ab_hard_contact": -0.6312820892654805,
"ab_bat_speed": 69.1452445799458,
"ab_strikeout_rate": 0.20325203252032523,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "683004",
"player_name": "Jack Leiter",
"quality": -0.2237895979301561,
"contact": -0.571083777889445,
"command": 0.06571428571428573,
"movement": 0.4989615872119437,
"xwoba": 0.333,
"whiff": 25.5,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "TEX",
"original_runs": 2,
"run_delta": -0.0793,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.1785752530174681,
"contact": 0.22381057331253112,
"power": 0.0683259192665541,
"discipline": -0.0238764900974991,
"xwoba": 0.32121875,
"recent_xwoba": 0.32121875,
"barrel": 7.153125,
"ab_hard_contact": 0.23185171866441084,
"ab_bat_speed": 70.28829576850683,
"ab_strikeout_rate": 0.2179256153878592,
"available_players": 9,
"top_players": [
{
"player_id": "607043",
"player_name": "Brandon Nimmo",
"position": "RF",
"weight": 4.0,
"quality": 1.0651198227354024,
"contact": 1.260626667014537,
"power": 1.1883240945533373,
"discipline": 0.014206035106173263,
"xwoba": 0.372,
"recent_xwoba": 0.372,
"barrel": 10.9,
"ab_hard_contact": 0.5081961767810212,
"ab_bat_speed": 71.322872491764,
"ab_strikeout_rate": 0.19025157232704404,
"available": 1.0
},
{
"player_id": "673962",
"player_name": "Josh Jung",
"position": "3B",
"weight": 4.0,
"quality": 0.5351920815395707,
"contact": 1.0338126071672773,
"power": 0.27425720184251706,
"discipline": 0.23417189314750303,
"xwoba": 0.352,
"recent_xwoba": 0.352,
"barrel": 5.1,
"ab_hard_contact": 0.6401916558979508,
"ab_bat_speed": 70.08618944444444,
"ab_strikeout_rate": 0.16699999999999998,
"available": 1.0
},
{
"player_id": "592626",
"player_name": "Joc Pederson",
"position": "DH",
"weight": 3.0,
"quality": 0.4050081834526259,
"contact": 0.6987491385958485,
"power": 0.6018171161206722,
"discipline": 0.41233855981416967,
"xwoba": 0.353,
"recent_xwoba": 0.353,
"barrel": 9.8,
"ab_hard_contact": 0.011580417651540678,
"ab_bat_speed": 70.09404365079365,
"ab_strikeout_rate": 0.21433333333333335,
"available": 1.0
},
{
"player_id": "696030",
"player_name": "Alejandro Osuna",
"position": "CF",
"weight": 3.0,
"quality": -0.08773271269490311,
"contact": 0.13857125286514296,
"power": -1.0622819506005767,
"discipline": 0.6990257519323962,
"xwoba": 0.317,
"recent_xwoba": 0.317,
"barrel": 0.0,
"ab_hard_contact": 0.20312289275036693,
"ab_bat_speed": 69.92044642857142,
"ab_strikeout_rate": 0.15057471264367814,
"available": 1.0
},
{
"player_id": "669701",
"player_name": "Josh Smith",
"position": "2B",
"weight": 3.0,
"quality": -0.17205505467662513,
"contact": -0.48273761172161156,
"power": -0.7016533828270559,
"discipline": 0.6829099883855982,
"xwoba": 0.294,
"recent_xwoba": 0.294,
"barrel": 5.1,
"ab_hard_contact": -0.40144860892207707,
"ab_bat_speed": 67.37994576719576,
"ab_strikeout_rate": 0.17833333333333332,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "657746",
"player_name": "Joe Ryan",
"quality": 0.22280455505590202,
"contact": 0.21315471078253914,
"command": 0.48485714285714276,
"movement": -0.03904504367503603,
"xwoba": 0.281,
"whiff": 25.2,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 3,
"home_runs": 2,
"predicted_score_text": "MIN 3 - 2 TEX",
"confidence": 0.562596,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 2,
"score_text": "MIN 3 - 2 TEX",
"winner": "MIN"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 1,
"score_text": "MIN 4 - 1 TEX",
"winner": "MIN"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": -1,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away MIN | True | 1.0115 | 1.0115 | 1 | 9 | 0 |
| Home TEX | True | 1.0227 | 1.0227 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| CF | Byron Buxton | 20 | 1.0702 | 0.9358 | negative_batter_regression | 0.3500 | 0.2450 | 0.5150 | 18.90 | 49.70 | 91.10 | 21.10 | 31.10 | 26.10 | 7.40 | -1.3429 |
| LF | Trevor Larnach | 189 | 1.0039 | 0.0522 | neutral | 0.3270 | 0.2480 | 0.3720 | 6.40 | 30 | 86.30 | 13.80 | 27 | 19.80 | 12.70 | -0.4571 |
| 1B | Royce Lewis | 269 | 1.0020 | 0.0267 | neutral | 0.3000 | 0.2140 | 0.3650 | 12.10 | 41.40 | 88.60 | 16.60 | 35 | 27.30 | 9.90 | 0.1429 |
| RF | Kody Clemens | 108 | 1.0419 | 0.5584 | neutral | 0.3370 | 0.2560 | 0.4560 | 13.30 | 44 | 92.50 | 16.50 | 24.40 | 21.40 | 6.70 | -0.3714 |
| DH | Josh Bell | 386 | 1.0269 | 0.3591 | neutral | 0.3120 | 0.2450 | 0.4170 | 10.20 | 42.10 | 89.50 | 12.70 | 25.50 | 23.50 | 6.70 | 0.3429 |
| 3B | Brooks Lee | 195 | 0.9577 | -0.5645 | negative_batter_regression | 0.2770 | 0.2260 | 0.3410 | 4.70 | 31.10 | 87.80 | 13.50 | 21.10 | 16.20 | 6.80 | -1 |
| C | Victor Caratini | 381 | 1.0345 | 0.4602 | positive_batter_regression | 0.3390 | 0.2510 | 0.3970 | 6.80 | 39.40 | 89.10 | 11.60 | 21.20 | 19.40 | 9.20 | 1.4857 |
| SS | Tristan Gray | 514 | 0.9990 | -0.0127 | neutral | 0.2920 | 0.2390 | 0.3660 | 6.80 | 41.60 | 89.40 | 14.80 | 34 | 30 | 5.70 | 0.0857 |
| 2B | Luke Keaschall | 279 | 0.9671 | -0.4392 | neutral | 0.2890 | 0.2280 | 0.3350 | 3 | 29.60 | 84.80 | 17 | 16.30 | 15.90 | 9 | -0.2000 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Joc Pederson | 146 | 1.0449 | 0.5982 | neutral | 0.3530 | 0.2570 | 0.4280 | 9.80 | 47.60 | 91.60 | 14.90 | 29.10 | 19.70 | 12.80 | 0.0571 |
| 3B | Josh Jung | 83 | 1.0566 | 0.7551 | neutral | 0.3520 | 0.2980 | 0.4450 | 5.10 | 45.20 | 89.70 | 11.70 | 18.40 | 16 | 7.30 | -0.1143 |
| RF | Brandon Nimmo | 90 | 1.1121 | 1.4949 | positive_batter_regression | 0.3720 | 0.2850 | 0.5030 | 10.90 | 52.60 | 92.20 | 11.20 | 22.80 | 20.70 | 7.90 | 1.3429 |
| LF | Wyatt Langford | 144 | 0.9890 | -0.1473 | neutral | 0.2820 | 0.2360 | 0.3670 | 6.40 | 35.10 | 88.80 | 14.40 | 23.30 | 22.30 | 5.40 | -0.2000 |
| 2B | Josh Smith | 478 | 0.9940 | -0.0797 | positive_batter_regression | 0.2940 | 0.2210 | 0.3230 | 5.10 | 33.30 | 87.50 | 18.40 | 22.30 | 17.70 | 12.40 | 0.9143 |
| SS | Ezequiel Duran | 72 | 0.9955 | -0.0606 | neutral | 0.3040 | 0.2570 | 0.3650 | 5.80 | 37.20 | 89.60 | 10.60 | 29.50 | 25.60 | 7.30 | -0.7429 |
| 1B | Jake Burger | 86 | 1.0114 | 0.1515 | neutral | 0.3050 | 0.2400 | 0.4020 | 9.60 | 46.60 | 89.90 | 11.40 | 35.20 | 26.50 | 7.30 | -0.4857 |
| CF | Alejandro Osuna | 275 | 0.9958 | -0.0557 | neutral | 0.3170 | 0.2590 | 0.3100 | 0 | 32.60 | 88 | 3.20 | 16.30 | 14 | 9.90 | 0.5143 |
| C | Kyle Higashioka | 198 | 1.0047 | 0.0622 | neutral | 0.3090 | 0.2370 | 0.3820 | 11 | 37.80 | 88 | 15.50 | 29.20 | 25.80 | 9.40 | -0.1429 |
{
"home": {
"applied": true,
"offense_factor": 1.0227,
"raw_average_factor": 1.0227,
"team_espn_average_rank": 174.67,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "592626",
"player_name": "Joc Pederson",
"offense_factor": 1.0449,
"quality_score": 0.5982,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "592626",
"espn_id": 31392,
"player_name": "Joc Pederson",
"team": "TEX",
"role": "batter",
"espn_rank": 146,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 146,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 183.0,
"ab_rank": 182,
"r_value": 27.0,
"r_rank": 147,
"h_value": 45.0,
"h_rank": 177,
"avg_value": 0.2459016,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": 206,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 25.0,
"rbi_rank": 161,
"tb_value": 83.0,
"tb_rank": 669,
"bb_value": 28.0,
"bb_rank": 69,
"so_value": 43.0,
"so_rank": 171,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3502304,
"obp_rank": "-",
"slg_value": 0.4535519,
"slg_rank": "-",
"ops_value": 0.8037823,
"ops_rank": null,
"war_value": 0.89,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 155.0,
"k_percent": 19.7,
"bb_percent": 12.8,
"woba": 0.351,
"xwoba": 0.353,
"xba": 0.257,
"xslg": 0.428,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 9.8,
"hard_hit_percent": 47.6,
"exit_velocity_avg": 91.6,
"launch_angle_avg": 14.9,
"whiff_percent": 29.1,
"swing_percent": 44.5
},
"components": {
"expected_quality": 0.9781,
"regression_edge": 0.0571,
"xwoba_edge": 1.4,
"xba_edge": 0.5286,
"xslg_edge": 0.8,
"barrel_edge": 0.6667,
"hard_hit_edge": 1.3,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": -0.0667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "673962",
"player_name": "Josh Jung",
"offense_factor": 1.0566,
"quality_score": 0.7551,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "673962",
"espn_id": 42437,
"player_name": "Josh Jung",
"team": "TEX",
"role": "batter",
"espn_rank": 83,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 83,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 261.0,
"ab_rank": 65,
"r_value": 32.0,
"r_rank": 99,
"h_value": 78.0,
"h_rank": 16,
"avg_value": 0.2988505,
"avg_rank": 9.0,
"2b_value": 16.0,
"2b_rank": 17,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 30.0,
"rbi_rank": 113,
"tb_value": 118.0,
"tb_rank": 715,
"bb_value": 21.0,
"bb_rank": 138,
"so_value": 46.0,
"so_rank": 151,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3576388,
"obp_rank": "43",
"slg_value": 0.4521072,
"slg_rank": "54",
"ops_value": 0.809746,
"ops_rank": 97.0,
"war_value": 1.44,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 203.0,
"k_percent": 16.0,
"bb_percent": 7.3,
"woba": 0.356,
"xwoba": 0.352,
"xba": 0.298,
"xslg": 0.445,
"sweet_spot_percent": 39.6,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 45.2,
"exit_velocity_avg": 89.7,
"launch_angle_avg": 11.7,
"whiff_percent": 18.4,
"swing_percent": 47.2
},
"components": {
"expected_quality": 0.9701,
"regression_edge": -0.1143,
"xwoba_edge": 1.3714,
"xba_edge": 1.7,
"xslg_edge": 1.0429,
"barrel_edge": -0.3778,
"hard_hit_edge": 0.9571,
"exit_velocity_edge": 0.36,
"sweet_spot_edge": 1.05,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "607043",
"player_name": "Brandon Nimmo",
"offense_factor": 1.1121,
"quality_score": 1.4949,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "607043",
"espn_id": 32159,
"player_name": "Brandon Nimmo",
"team": "TEX",
"role": "batter",
"espn_rank": 90,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 90,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 272.0,
"ab_rank": 34,
"r_value": 28.0,
"r_rank": 139,
"h_value": 70.0,
"h_rank": 50,
"avg_value": 0.2573529,
"avg_rank": 72.0,
"2b_value": 16.0,
"2b_rank": 17,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 25.0,
"rbi_rank": 161,
"tb_value": 111.0,
"tb_rank": 458,
"bb_value": 24.0,
"bb_rank": 100,
"so_value": 63.0,
"so_rank": 73,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3289473,
"obp_rank": "89",
"slg_value": 0.4080882,
"slg_rank": "93",
"ops_value": 0.7370355,
"ops_rank": 182.0,
"war_value": 1.35,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 231.0,
"k_percent": 20.7,
"bb_percent": 7.9,
"woba": 0.325,
"xwoba": 0.372,
"xba": 0.285,
"xslg": 0.503,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 10.9,
"hard_hit_percent": 52.6,
"exit_velocity_avg": 92.2,
"launch_angle_avg": 11.2,
"whiff_percent": 22.8,
"swing_percent": 49.3
},
"components": {
"expected_quality": 1.5196,
"regression_edge": 1.3429,
"xwoba_edge": 1.9429,
"xba_edge": 1.3286,
"xslg_edge": 1.8714,
"barrel_edge": 0.9111,
"hard_hit_edge": 2.0143,
"exit_velocity_edge": 1.36,
"sweet_spot_edge": 0.2167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "694671",
"player_name": "Wyatt Langford",
"offense_factor": 0.989,
"quality_score": -0.1473,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694671",
"espn_id": 4719324,
"player_name": "Wyatt Langford",
"team": "TEX",
"role": "batter",
"espn_rank": 144,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 144,
"gp_value": 31.0,
"gp_rank": 353,
"ab_value": 123.0,
"ab_rank": 273,
"r_value": 16.0,
"r_rank": 254,
"h_value": 29.0,
"h_rank": 269,
"avg_value": 0.2357723,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 8.0,
"rbi_rank": 346,
"tb_value": 47.0,
"tb_rank": 1291,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 29.0,
"so_rank": 277,
"sb_value": 4.0,
"sb_rank": 124,
"obp_value": 0.276923,
"obp_rank": "-",
"slg_value": 0.3821138,
"slg_rank": "-",
"ops_value": 0.6590368,
"ops_rank": null,
"war_value": 0.9,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 84.0,
"k_percent": 22.3,
"bb_percent": 5.4,
"woba": 0.289,
"xwoba": 0.282,
"xba": 0.236,
"xslg": 0.367,
"sweet_spot_percent": 27.7,
"barrel_batted_rate": 6.4,
"hard_hit_percent": 35.1,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 14.4,
"whiff_percent": 23.3,
"swing_percent": 47.3
},
"components": {
"expected_quality": -0.3481,
"regression_edge": -0.2,
"xwoba_edge": -0.6286,
"xba_edge": -0.0714,
"xslg_edge": -0.0714,
"barrel_edge": -0.0889,
"hard_hit_edge": -0.4857,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": -0.9333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "669701",
"player_name": "Josh Smith",
"offense_factor": 0.994,
"quality_score": -0.0797,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669701",
"espn_id": 42884,
"player_name": "Josh Smith",
"team": "TEX",
"role": "batter",
"espn_rank": 478,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 478,
"gp_value": 33.0,
"gp_rank": 338,
"ab_value": 97.0,
"ab_rank": 328,
"r_value": 6.0,
"r_rank": 398,
"h_value": 21.0,
"h_rank": 328,
"avg_value": 0.2164948,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 6.0,
"rbi_rank": 383,
"tb_value": 23.0,
"tb_rank": 2426,
"bb_value": 14.0,
"bb_rank": 215,
"so_value": 20.0,
"so_rank": 352,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.318584,
"obp_rank": "-",
"slg_value": 0.2371134,
"slg_rank": "-",
"ops_value": 0.5556974,
"ops_rank": null,
"war_value": -0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 107.0,
"k_percent": 17.7,
"bb_percent": 12.4,
"woba": 0.262,
"xwoba": 0.294,
"xba": 0.221,
"xslg": 0.323,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 18.4,
"whiff_percent": 22.3,
"swing_percent": 47.8
},
"components": {
"expected_quality": -0.3394,
"regression_edge": 0.9143,
"xwoba_edge": -0.2857,
"xba_edge": -0.5,
"xslg_edge": -0.7,
"barrel_edge": -0.3778,
"hard_hit_edge": -0.7429,
"exit_velocity_edge": -0.52,
"sweet_spot_edge": 0.4333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "677649",
"player_name": "Ezequiel Duran",
"offense_factor": 0.9955,
"quality_score": -0.0606,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677649",
"espn_id": 42457,
"player_name": "Ezequiel Duran",
"team": "TEX",
"role": "batter",
"espn_rank": 72,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 72,
"gp_value": 64.0,
"gp_rank": 146,
"ab_value": 213.0,
"ab_rank": 138,
"r_value": 29.0,
"r_rank": 128,
"h_value": 59.0,
"h_rank": 103,
"avg_value": 0.2769953,
"avg_rank": 43.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 36.0,
"rbi_rank": 63,
"tb_value": 90.0,
"tb_rank": 773,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 60.0,
"so_rank": 85,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3304721,
"obp_rank": "86",
"slg_value": 0.4225352,
"slg_rank": "80",
"ops_value": 0.7530073,
"ops_rank": 6.0,
"war_value": 1.63,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 25.6,
"bb_percent": 7.3,
"woba": 0.33,
"xwoba": 0.304,
"xba": 0.257,
"xslg": 0.365,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 5.8,
"hard_hit_percent": 37.2,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 10.6,
"whiff_percent": 29.5,
"swing_percent": 49.8
},
"components": {
"expected_quality": 0.0221,
"regression_edge": -0.7429,
"xwoba_edge": 0.0,
"xba_edge": 0.5286,
"xslg_edge": -0.1,
"barrel_edge": -0.2222,
"hard_hit_edge": -0.1857,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.2167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "669394",
"player_name": "Jake Burger",
"offense_factor": 1.0114,
"quality_score": 0.1515,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669394",
"espn_id": 39882,
"player_name": "Jake Burger",
"team": "TEX",
"role": "batter",
"espn_rank": 86,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 86,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 263.0,
"ab_rank": 59,
"r_value": 32.0,
"r_rank": 99,
"h_value": 65.0,
"h_rank": 75,
"avg_value": 0.2471482,
"avg_rank": 96.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 12.0,
"hr_rank": 46,
"rbi_value": 42.0,
"rbi_rank": 31,
"tb_value": 114.0,
"tb_rank": 662,
"bb_value": 21.0,
"bb_rank": 138,
"so_value": 76.0,
"so_rank": 27,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3031358,
"obp_rank": "129",
"slg_value": 0.43346,
"slg_rank": "70",
"ops_value": 0.7365958,
"ops_rank": 59.0,
"war_value": 1.39,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 211.0,
"k_percent": 26.5,
"bb_percent": 7.3,
"woba": 0.322,
"xwoba": 0.305,
"xba": 0.24,
"xslg": 0.402,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 9.6,
"hard_hit_percent": 46.6,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 11.4,
"whiff_percent": 35.2,
"swing_percent": 49.7
},
"components": {
"expected_quality": 0.2628,
"regression_edge": -0.4857,
"xwoba_edge": 0.0286,
"xba_edge": 0.0429,
"xslg_edge": 0.4286,
"barrel_edge": 0.6222,
"hard_hit_edge": 1.1571,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": -0.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "696030",
"player_name": "Alejandro Osuna",
"offense_factor": 0.9958,
"quality_score": -0.0557,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "696030",
"espn_id": 4916547,
"player_name": "Alejandro Osuna",
"team": "TEX",
"role": "batter",
"espn_rank": 275,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 275,
"gp_value": 40.0,
"gp_rank": 307,
"ab_value": 102.0,
"ab_rank": 315,
"r_value": 12.0,
"r_rank": 310,
"h_value": 25.0,
"h_rank": 297,
"avg_value": 0.245098,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 387,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 9.0,
"rbi_rank": 334,
"tb_value": 27.0,
"tb_rank": 2395,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 17.0,
"so_rank": 383,
"sb_value": 4.0,
"sb_rank": 124,
"obp_value": 0.3583333,
"obp_rank": "-",
"slg_value": 0.2647058,
"slg_rank": "-",
"ops_value": 0.6230391,
"ops_rank": null,
"war_value": 0.19,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 84.0,
"k_percent": 14.0,
"bb_percent": 9.9,
"woba": 0.299,
"xwoba": 0.317,
"xba": 0.259,
"xslg": 0.31,
"sweet_spot_percent": 29.1,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 32.6,
"exit_velocity_avg": 88.0,
"launch_angle_avg": 3.2,
"whiff_percent": 16.3,
"swing_percent": 48.0
},
"components": {
"expected_quality": -0.2277,
"regression_edge": 0.5143,
"xwoba_edge": 0.3714,
"xba_edge": 0.5857,
"xslg_edge": -0.8857,
"barrel_edge": -1.5111,
"hard_hit_edge": -0.8429,
"exit_velocity_edge": -0.32,
"sweet_spot_edge": -0.7,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "543309",
"player_name": "Kyle Higashioka",
"offense_factor": 1.0047,
"quality_score": 0.0622,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "543309",
"espn_id": 30545,
"player_name": "Kyle Higashioka",
"team": "TEX",
"role": "batter",
"espn_rank": 198,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 198,
"gp_value": 39.0,
"gp_rank": 314,
"ab_value": 115.0,
"ab_rank": 291,
"r_value": 15.0,
"r_rank": 272,
"h_value": 27.0,
"h_rank": 283,
"avg_value": 0.2347826,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 356,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 14.0,
"rbi_rank": 266,
"tb_value": 45.0,
"tb_rank": 1579,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 33.0,
"so_rank": 250,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3125,
"obp_rank": "-",
"slg_value": 0.3913043,
"slg_rank": "-",
"ops_value": 0.7038043,
"ops_rank": null,
"war_value": 0.54,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 91.0,
"k_percent": 25.8,
"bb_percent": 9.4,
"woba": 0.314,
"xwoba": 0.309,
"xba": 0.237,
"xslg": 0.382,
"sweet_spot_percent": 36.6,
"barrel_batted_rate": 11.0,
"hard_hit_percent": 37.8,
"exit_velocity_avg": 88.0,
"launch_angle_avg": 15.5,
"whiff_percent": 29.2,
"swing_percent": 42.3
},
"components": {
"expected_quality": 0.1841,
"regression_edge": -0.1429,
"xwoba_edge": 0.1429,
"xba_edge": -0.0429,
"xslg_edge": 0.1429,
"barrel_edge": 0.9333,
"hard_hit_edge": -0.1,
"exit_velocity_edge": -0.32,
"sweet_spot_edge": 0.55,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0115,
"raw_average_factor": 1.0115,
"team_espn_average_rank": 260.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "CF",
"player_id": "621439",
"player_name": "Byron Buxton",
"offense_factor": 1.0702,
"quality_score": 0.9358,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "621439",
"espn_id": 32655,
"player_name": "Byron Buxton",
"team": "MIN",
"role": "batter",
"espn_rank": 20,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 20,
"gp_value": 63.0,
"gp_rank": 156,
"ab_value": 258.0,
"ab_rank": 75,
"r_value": 51.0,
"r_rank": 7,
"h_value": 71.0,
"h_rank": 46,
"avg_value": 0.2751937,
"avg_rank": 49.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 23.0,
"hr_rank": 3,
"rbi_value": 36.0,
"rbi_rank": 63,
"tb_value": 155.0,
"tb_rank": 242,
"bb_value": 21.0,
"bb_rank": 138,
"so_value": 74.0,
"so_rank": 34,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.335689,
"obp_rank": "80",
"slg_value": 0.6007751,
"slg_rank": "3",
"ops_value": 0.9364641,
"ops_rank": 77.0,
"war_value": 2.83,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 26.1,
"bb_percent": 7.4,
"woba": 0.397,
"xwoba": 0.35,
"xba": 0.245,
"xslg": 0.515,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 18.9,
"hard_hit_percent": 49.7,
"exit_velocity_avg": 91.1,
"launch_angle_avg": 21.1,
"whiff_percent": 31.1,
"swing_percent": 53.4
},
"components": {
"expected_quality": 1.332,
"regression_edge": -1.3429,
"xwoba_edge": 1.3143,
"xba_edge": 0.1857,
"xslg_edge": 2.0429,
"barrel_edge": 2.5,
"hard_hit_edge": 1.6,
"exit_velocity_edge": 0.92,
"sweet_spot_edge": -0.05,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "LF",
"player_id": "663616",
"player_name": "Trevor Larnach",
"offense_factor": 1.0039,
"quality_score": 0.0522,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663616",
"espn_id": 41205,
"player_name": "Trevor Larnach",
"team": "MIN",
"role": "batter",
"espn_rank": 189,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 189,
"gp_value": 60.0,
"gp_rank": 174,
"ab_value": 182.0,
"ab_rank": 185,
"r_value": 31.0,
"r_rank": 109,
"h_value": 48.0,
"h_rank": 164,
"avg_value": 0.2637362,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 72.0,
"tb_rank": 1042,
"bb_value": 27.0,
"bb_rank": 75,
"so_value": 42.0,
"so_rank": 178,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3679245,
"obp_rank": "-",
"slg_value": 0.3956043,
"slg_rank": "-",
"ops_value": 0.7635288,
"ops_rank": null,
"war_value": 0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 152.0,
"k_percent": 19.8,
"bb_percent": 12.7,
"woba": 0.343,
"xwoba": 0.327,
"xba": 0.248,
"xslg": 0.372,
"sweet_spot_percent": 37.9,
"barrel_batted_rate": 6.4,
"hard_hit_percent": 30.0,
"exit_velocity_avg": 86.3,
"launch_angle_avg": 13.8,
"whiff_percent": 27.0,
"swing_percent": 41.8
},
"components": {
"expected_quality": 0.1623,
"regression_edge": -0.4571,
"xwoba_edge": 0.6571,
"xba_edge": 0.2714,
"xslg_edge": 0.0,
"barrel_edge": -0.0889,
"hard_hit_edge": -1.2143,
"exit_velocity_edge": -1.0,
"sweet_spot_edge": 0.7667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "668904",
"player_name": "Royce Lewis",
"offense_factor": 1.002,
"quality_score": 0.0267,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668904",
"espn_id": 40635,
"player_name": "Royce Lewis",
"team": "MIN",
"role": "batter",
"espn_rank": 269,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 269,
"gp_value": 41.0,
"gp_rank": 296,
"ab_value": 141.0,
"ab_rank": 254,
"r_value": 17.0,
"r_rank": 240,
"h_value": 29.0,
"h_rank": 269,
"avg_value": 0.2056737,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 20.0,
"rbi_rank": 204,
"tb_value": 52.0,
"tb_rank": 1384,
"bb_value": 16.0,
"bb_rank": 193,
"so_value": 44.0,
"so_rank": 165,
"sb_value": 4.0,
"sb_rank": 124,
"obp_value": 0.2919254,
"obp_rank": "-",
"slg_value": 0.3687943,
"slg_rank": "-",
"ops_value": 0.6607197,
"ops_rank": null,
"war_value": 0.21,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 119.0,
"k_percent": 27.3,
"bb_percent": 9.9,
"woba": 0.295,
"xwoba": 0.3,
"xba": 0.214,
"xslg": 0.365,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 41.4,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 16.6,
"whiff_percent": 35.0,
"swing_percent": 47.7
},
"components": {
"expected_quality": 0.0341,
"regression_edge": 0.1429,
"xwoba_edge": -0.1143,
"xba_edge": -0.7,
"xslg_edge": -0.1,
"barrel_edge": 1.1778,
"hard_hit_edge": 0.4143,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "665019",
"player_name": "Kody Clemens",
"offense_factor": 1.0419,
"quality_score": 0.5584,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665019",
"espn_id": 41311,
"player_name": "Kody Clemens",
"team": "MIN",
"role": "batter",
"espn_rank": 108,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 108,
"gp_value": 62.0,
"gp_rank": 163,
"ab_value": 215.0,
"ab_rank": 133,
"r_value": 31.0,
"r_rank": 109,
"h_value": 54.0,
"h_rank": 125,
"avg_value": 0.2511627,
"avg_rank": 85.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 28.0,
"rbi_rank": 131,
"tb_value": 106.0,
"tb_rank": 351,
"bb_value": 16.0,
"bb_rank": 193,
"so_value": 51.0,
"so_rank": 129,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.3177966,
"obp_rank": "99",
"slg_value": 0.4930232,
"slg_rank": "31",
"ops_value": 0.8108198,
"ops_rank": 68.0,
"war_value": 1.17,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 163.0,
"k_percent": 21.4,
"bb_percent": 6.7,
"woba": 0.35,
"xwoba": 0.337,
"xba": 0.256,
"xslg": 0.456,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 13.3,
"hard_hit_percent": 44.0,
"exit_velocity_avg": 92.5,
"launch_angle_avg": 16.5,
"whiff_percent": 24.4,
"swing_percent": 48.9
},
"components": {
"expected_quality": 0.9368,
"regression_edge": -0.3714,
"xwoba_edge": 0.9429,
"xba_edge": 0.5,
"xslg_edge": 1.2,
"barrel_edge": 1.4444,
"hard_hit_edge": 0.7857,
"exit_velocity_edge": 1.48,
"sweet_spot_edge": 0.1667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "605137",
"player_name": "Josh Bell",
"offense_factor": 1.0269,
"quality_score": 0.3591,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "605137",
"espn_id": 32517,
"player_name": "Josh Bell",
"team": "MIN",
"role": "batter",
"espn_rank": 386,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 386,
"gp_value": 72.0,
"gp_rank": 37,
"ab_value": 262.0,
"ab_rank": 63,
"r_value": 35.0,
"r_rank": 73,
"h_value": 63.0,
"h_rank": 84,
"avg_value": 0.240458,
"avg_rank": 105.0,
"2b_value": 14.0,
"2b_rank": 45,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 45.0,
"rbi_rank": 21,
"tb_value": 101.0,
"tb_rank": 811,
"bb_value": 19.0,
"bb_rank": 161,
"so_value": 67.0,
"so_rank": 54,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2947368,
"obp_rank": "139",
"slg_value": 0.3854961,
"slg_rank": "117",
"ops_value": 0.6802329,
"ops_rank": 22.0,
"war_value": -0.08,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 23.5,
"bb_percent": 6.7,
"woba": 0.3,
"xwoba": 0.312,
"xba": 0.245,
"xslg": 0.417,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 10.2,
"hard_hit_percent": 42.1,
"exit_velocity_avg": 89.5,
"launch_angle_avg": 12.7,
"whiff_percent": 25.5,
"swing_percent": 51.6
},
"components": {
"expected_quality": 0.3755,
"regression_edge": 0.3429,
"xwoba_edge": 0.2286,
"xba_edge": 0.1857,
"xslg_edge": 0.6429,
"barrel_edge": 0.7556,
"hard_hit_edge": 0.5143,
"exit_velocity_edge": 0.28,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "686797",
"player_name": "Brooks Lee",
"offense_factor": 0.9577,
"quality_score": -0.5645,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "686797",
"espn_id": 4629081,
"player_name": "Brooks Lee",
"team": "MIN",
"role": "batter",
"espn_rank": 195,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 195,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 255.0,
"ab_rank": 78,
"r_value": 31.0,
"r_rank": 109,
"h_value": 61.0,
"h_rank": 93,
"avg_value": 0.2392156,
"avg_rank": 108.0,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 11.0,
"hr_rank": 55,
"rbi_value": 39.0,
"rbi_rank": 46,
"tb_value": 106.0,
"tb_rank": 527,
"bb_value": 19.0,
"bb_rank": 161,
"so_value": 45.0,
"so_rank": 158,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.2960288,
"obp_rank": "137",
"slg_value": 0.4156862,
"slg_rank": "88",
"ops_value": 0.711715,
"ops_rank": 225.0,
"war_value": 0.55,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 207.0,
"k_percent": 16.2,
"bb_percent": 6.8,
"woba": 0.312,
"xwoba": 0.277,
"xba": 0.226,
"xslg": 0.341,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 4.7,
"hard_hit_percent": 31.1,
"exit_velocity_avg": 87.8,
"launch_angle_avg": 13.5,
"whiff_percent": 21.1,
"swing_percent": 52.0
},
"components": {
"expected_quality": -0.5348,
"regression_edge": -1.0,
"xwoba_edge": -0.7714,
"xba_edge": -0.3571,
"xslg_edge": -0.4429,
"barrel_edge": -0.4667,
"hard_hit_edge": -1.0571,
"exit_velocity_edge": -0.4,
"sweet_spot_edge": -0.05,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "605170",
"player_name": "Victor Caratini",
"offense_factor": 1.0345,
"quality_score": 0.4602,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "605170",
"espn_id": 33229,
"player_name": "Victor Caratini",
"team": "MIN",
"role": "batter",
"espn_rank": 381,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 381,
"gp_value": 53.0,
"gp_rank": 216,
"ab_value": 163.0,
"ab_rank": 220,
"r_value": 11.0,
"r_rank": 327,
"h_value": 35.0,
"h_rank": 232,
"avg_value": 0.2147239,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 25.0,
"rbi_rank": 161,
"tb_value": 52.0,
"tb_rank": 1488,
"bb_value": 18.0,
"bb_rank": 174,
"so_value": 38.0,
"so_rank": 208,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3112244,
"obp_rank": "-",
"slg_value": 0.3190184,
"slg_rank": "-",
"ops_value": 0.6302428,
"ops_rank": null,
"war_value": -0.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 148.0,
"k_percent": 19.4,
"bb_percent": 9.2,
"woba": 0.287,
"xwoba": 0.339,
"xba": 0.251,
"xslg": 0.397,
"sweet_spot_percent": 40.2,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 39.4,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 11.6,
"whiff_percent": 21.2,
"swing_percent": 42.2
},
"components": {
"expected_quality": 0.5535,
"regression_edge": 1.4857,
"xwoba_edge": 1.0,
"xba_edge": 0.3571,
"xslg_edge": 0.3571,
"barrel_edge": 0.0,
"hard_hit_edge": 0.1286,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": 1.15,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "656484",
"player_name": "Tristan Gray",
"offense_factor": 0.999,
"quality_score": -0.0127,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656484",
"espn_id": 39918,
"player_name": "Tristan Gray",
"team": "MIN",
"role": "batter",
"espn_rank": 514,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 514,
"gp_value": 46.0,
"gp_rank": 263,
"ab_value": 127.0,
"ab_rank": 266,
"r_value": 13.0,
"r_rank": 302,
"h_value": 31.0,
"h_rank": 262,
"avg_value": 0.2440944,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 27.0,
"rbi_rank": 139,
"tb_value": 47.0,
"tb_rank": 1566,
"bb_value": 8.0,
"bb_rank": 314,
"so_value": 42.0,
"so_rank": 178,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.2877697,
"obp_rank": "-",
"slg_value": 0.3700787,
"slg_rank": "-",
"ops_value": 0.6578484,
"ops_rank": null,
"war_value": -0.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 90.0,
"k_percent": 30.0,
"bb_percent": 5.7,
"woba": 0.289,
"xwoba": 0.292,
"xba": 0.239,
"xslg": 0.366,
"sweet_spot_percent": 41.6,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 41.6,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 14.8,
"whiff_percent": 34.0,
"swing_percent": 55.4
},
"components": {
"expected_quality": -0.0469,
"regression_edge": 0.0857,
"xwoba_edge": -0.3429,
"xba_edge": 0.0143,
"xslg_edge": -0.0857,
"barrel_edge": 0.0,
"hard_hit_edge": 0.4429,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": 1.3833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "807712",
"player_name": "Luke Keaschall",
"offense_factor": 0.9671,
"quality_score": -0.4392,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "807712",
"espn_id": 4977664,
"player_name": "Luke Keaschall",
"team": "MIN",
"role": "batter",
"espn_rank": 279,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 279,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 244.0,
"ab_rank": 103,
"r_value": 33.0,
"r_rank": 90,
"h_value": 60.0,
"h_rank": 96,
"avg_value": 0.2459016,
"avg_rank": 97.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 24.0,
"rbi_rank": 173,
"tb_value": 80.0,
"tb_rank": 1223,
"bb_value": 25.0,
"bb_rank": 90,
"so_value": 44.0,
"so_rank": 165,
"sb_value": 10.0,
"sb_rank": 37,
"obp_value": 0.3249097,
"obp_rank": "94",
"slg_value": 0.3278688,
"slg_rank": "145",
"ops_value": 0.6527785,
"ops_rank": 51.0,
"war_value": 0.18,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 205.0,
"k_percent": 15.9,
"bb_percent": 9.0,
"woba": 0.296,
"xwoba": 0.289,
"xba": 0.228,
"xslg": 0.335,
"sweet_spot_percent": 36.0,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 29.6,
"exit_velocity_avg": 84.8,
"launch_angle_avg": 17.0,
"whiff_percent": 16.3,
"swing_percent": 41.9
},
"components": {
"expected_quality": -0.5155,
"regression_edge": -0.2,
"xwoba_edge": -0.4286,
"xba_edge": -0.3,
"xslg_edge": -0.5286,
"barrel_edge": -0.8444,
"hard_hit_edge": -1.2714,
"exit_velocity_edge": -1.6,
"sweet_spot_edge": 0.45,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away MIN | True | 24 | 0.2711 | 0.9320 | 0.9770 | 1.0250 | 0.9180 | 1.0530 | neutral | 0.2810 | 0.2680 | 27.70 | 4.80 | 25.20 | 10.50 | 43.40 | |
| Home TEX | True | 586 | -0.2171 | 0.9600 | 1.0185 | 1.0049 | 1.0134 | 1.0713 | neutral | 0.3330 | 0.3320 | 23.60 | 9.90 | 25.50 | 10 | 40.20 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away MIN | True | None | 94 | 87.97 | 2371 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0983 | |
| Home TEX | True | None | 96 | 92.16 | 2336 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.1361 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0178 |
| home_runs_vs_away_pitcher | 0.9786 |
| home_pitcher_quality_edge | -0.4882 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "683004",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 240.0,
"k_percent": 23.6,
"bb_percent": 9.9,
"woba": 0.332,
"xwoba": 0.333,
"sweet_spot_percent": 37.0,
"barrel_batted_rate": 10.0,
"hard_hit_percent": 40.2,
"avg_best_speed": 76.3779,
"avg_hyper_speed": 94.0797,
"whiff_percent": 25.5,
"swing_percent": 47.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4301,
"command_and_miss": 0.0257,
"regression_edge": -0.0286,
"xwoba_edge": -0.5143,
"barrel_edge": -0.6,
"hard_hit_edge": -0.2714,
"whiff_edge": -0.0286,
"bb_edge": -0.175,
"pitch_design_score": 0.1361
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "683004",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.15993154511234,
"release_spin_rate": 2335.530048343372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.15993154511234,
"release_spin_rate": 2335.530048343372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.1599,
"release_spin_rate": 2335.53,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1361,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9724,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.2171,
"sample_weight": 0.96,
"run_prevention_factor": 1.0185,
"strikeout_factor": 1.0049,
"walk_factor": 1.0134,
"homer_factor": 1.0713,
"woba_minus_xwoba": -0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683004",
"espn_id": 4622181,
"player_name": "Jack Leiter",
"team": "TEX",
"role": "pitcher",
"espn_rank": 586,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 586,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 2.0,
"qs_rank": 109,
"era_value": 4.8552,
"era_rank": 57.0,
"w_value": 3.0,
"w_rank": 107,
"l_value": 6.0,
"l_rank": 17,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 76.0,
"ip_rank": 54,
"h_value": 73.0,
"h_rank": 44,
"er_value": 41.0,
"er_rank": 20,
"hr_value": 12.0,
"hr_rank": 30,
"bb_value": 33.0,
"bb_rank": 13,
"k_value": 79.0,
"k_rank": 34,
"k_per_9_value": 9.355263,
"k_per_9_rank": 17,
"whip_value": 1.3947,
"whip_rank": 57.0,
"war_value": -0.27,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "657746",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 233.0,
"k_percent": 27.7,
"bb_percent": 4.8,
"woba": 0.268,
"xwoba": 0.281,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 10.5,
"hard_hit_percent": 43.4,
"avg_best_speed": 78.8985,
"avg_hyper_speed": 94.5234,
"whiff_percent": 25.2,
"swing_percent": 50.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3542,
"command_and_miss": 0.5293,
"regression_edge": -0.3714,
"xwoba_edge": 0.9714,
"barrel_edge": -0.7111,
"hard_hit_edge": -0.7286,
"whiff_edge": -0.0714,
"bb_edge": 1.1,
"pitch_design_score": -0.0983
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "657746",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 94,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 94,
"pitch_usage": 0.0,
"release_speed": 87.97292842814021,
"release_spin_rate": 2370.846699153044,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 94,
"pitch_usage": 0.0,
"release_speed": 87.97292842814021,
"release_spin_rate": 2370.846699153044,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 87.9729,
"release_spin_rate": 2370.8467,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0983,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.7024,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.2711,
"sample_weight": 0.932,
"run_prevention_factor": 0.977,
"strikeout_factor": 1.025,
"walk_factor": 0.918,
"homer_factor": 1.053,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657746",
"espn_id": 42450,
"player_name": "Joe Ryan",
"team": "MIN",
"role": "pitcher",
"espn_rank": 24,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 24,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 15.0,
"gs_rank": 2,
"qs_value": 9.0,
"qs_rank": 7,
"era_value": 3.17,
"era_rank": 19.0,
"w_value": 4.0,
"w_rank": 65,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 82.1,
"ip_rank": 28,
"h_value": 66.0,
"h_rank": 74,
"er_value": 29.0,
"er_rank": 92,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 16.0,
"bb_rank": 176,
"k_value": 92.0,
"k_rank": 13,
"k_per_9_value": 10.05668,
"k_per_9_rank": 12,
"whip_value": 0.9959,
"whip_rank": 7.0,
"war_value": 2.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0178,
"home_runs_vs_away_pitcher": 0.9786,
"home_pitcher_quality_edge": -0.4882
},
"score_before": {
"away_runs": 3.0,
"home_runs": 2.0
},
"score_after": {
"away_runs": 3.0533,
"home_runs": 1.9571,
"home_win_probability": 0.398
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away MIN | 16-51 | 0.239 | 1.20 | 3.90 | -177 | cold | average | |
| Home TEX | 15-46 | 0.246 | 1 | 3.20 | -138 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away MIN | 35-40 | 0.467 | -30 | -0.400 | True |
| Home TEX | 35-38 | 0.479 | -6 | -0.082 | True |
| Signal | - | - | 0.318 | 0.337 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target MIN | - | - | 3 | - | - | - | - |
| Game target TEX | - | - | 2 | - | - | - | - |
| Player finalized MIN | 33 | 9 | 4 | 0 | 3 | 0 | 9 |
| Player finalized TEX | 32 | 9 | 1 | 0 | 1 | 0 | 9 |
| Player model fractional MIN | 31.83 | 7.41 | 4.40 | 1.40 | 4.48 | 2.81 | 7.45 |
| Player model fractional TEX | 31.26 | 6.86 | 3.49 | 0.80 | 3.02 | 2.79 | 7.22 |
| Simulation box MIN | 36 | 9 | 4 | 3 | 4 | 2 | 7 |
| Simulation box TEX | 33 | 6 | 1 | 0 | 1 | 4 | 7 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away MIN | Starter | Joe Ryan | 6 | 1 | 7 | 4 | 3 | 3.47 | 1.09 | True |
| Away MIN | Middle Reliever | Anthony Banda | 1 | 0 | 0 | 2 | 0 | 2.55 | 1.39 | True |
| Away MIN | Middle Reliever | Travis Adams | 1 | 0 | 0 | 0 | 0 | 5.07 | 1.33 | True |
| Away MIN | Middle Reliever | Yoendrys Gómez | 1 | 0 | 0 | 0 | 1 | 3.83 | 1.39 | True |
| Home TEX | Starter | Jack Leiter | 5.10 | 2 | 4 | 5 | 1 | 5.25 | 1.42 | True |
| Home TEX | Middle Reliever | Jacob Latz | 1.10 | 1 | 0 | 2 | 0 | 2.15 | 0.87 | True |
| Home TEX | Middle Reliever | Jakob Junis | 1 | 0 | 0 | 0 | 1 | 3.49 | 1.18 | True |
| Home TEX | Middle Reliever | Cole Winn | 0.20 | 1 | 1 | 2 | 0 | 6.10 | 1.42 | True |
| Home TEX | Middle Reliever | Tyler Alexander | 0.20 | 0 | 2 | 0 | 0 | 4.99 | 1.52 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | TEX | batter | DH | Joc Pederson | worse | 11 | 2 | 9 | 1 | 10 | predicted_AB | 2.2690 | boost | better |
| away | MIN | pitcher | Starter | Joe Ryan | better | 1 | 1 | 0 | 1 | 0 | predicted_SO | 2.0000 | boost | better |
| away | MIN | batter | 1B | Royce Lewis | better | 8 | 5 | 3 | 6 | 2 | predicted_HR | 1.8200 | boost | better |
| away | MIN | batter | SS | Tristan Gray | better | 11 | 5 | 6 | 6 | 5 | predicted_RBI | 1.5900 | boost | better |
| home | TEX | batter | LF | Wyatt Langford | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | -1.3200 | deboost | worse |
| away | MIN | batter | LF | Trevor Larnach | worse | 11 | 5 | 6 | 4 | 7 | predicted_SO | 1.2630 | boost | worse |
| away | MIN | batter | CF | Byron Buxton | worse | 11 | 4 | 7 | 5 | 6 | predicted_SO | -1.1750 | deboost | better |
| home | TEX | batter | 1B | Jake Burger | worse | 9 | 1 | 8 | 2 | 7 | predicted_SO | -1.0700 | deboost | better |
| away | MIN | pitcher | Middle Reliever | Anthony Banda | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -1.0000 | deboost | worse |
| away | MIN | pitcher | Middle Reliever | Yoendrys Gómez | worse | 1 | 0 | 1 | 0 | 1 | predicted_SO | -1.0000 | deboost | worse |
| home | TEX | batter | 3B | Josh Jung | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | 0.9700 | boost | better |
| home | TEX | batter | RF | Brandon Nimmo | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -0.8870 | deboost | better |
| away | MIN | batter | C | Victor Caratini | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | 0.8650 | boost | better |
| home | TEX | batter | C | Kyle Higashioka | worse | 11 | 2 | 9 | 1 | 10 | predicted_AB | 0.8060 | boost | better |
| home | TEX | batter | SS | Ezequiel Duran | worse | 9 | 4 | 5 | 4 | 5 | predicted_RBI | 0.8000 | boost | better |
| away | MIN | batter | DH | Josh Bell | worse | 9 | 3 | 6 | 2 | 7 | predicted_RBI | -0.7500 | deboost | worse |
| home | TEX | batter | CF | Alejandro Osuna | worse | 11 | 3 | 8 | 4 | 7 | predicted_BB | 0.7180 | boost | better |
| home | TEX | batter | 2B | Josh Smith | worse | 9 | 4 | 5 | 3 | 6 | predicted_BB | 0.5630 | boost | better |
| away | MIN | batter | RF | Kody Clemens | worse | 11 | 2 | 9 | 1 | 10 | predicted_R | -0.5080 | deboost | worse |
| away | MIN | batter | 2B | Luke Keaschall | worse | 11 | 3 | 8 | 2 | 9 | predicted_R | -0.4850 | deboost | worse |
| home | TEX | pitcher | Middle Reliever | Cole Winn | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | TEX | pitcher | Middle Reliever | Tyler Alexander | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | MIN | batter | 3B | Brooks Lee | worse | 10 | 4 | 6 | 3 | 7 | predicted_R | -0.4560 | deboost | worse |
| home | TEX | pitcher | Starter | Jack Leiter | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| home | TEX | pitcher | Middle Reliever | Jacob Latz | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Joe Ryan |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.2711 |
| ESPN Rank | 24 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0983 |
| Avg Velo | 87.9729 |
| Avg Spin | 2370.8467 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 1 |
| Pre H | 4 |
| Pre BB | 3 |
| Pre SO | 7 |
| Season ERA | 3.1700 |
| Season WHIP | 0.9960 |
| Role Avg IP | 5.4890 |
| Recent Avg IP | 6.3330 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"opponent": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"edges": {
"quality_edge": -0.01,
"offense_edge": 0.0685,
"opponent_offense_edge": -0.1011,
"defense_strength": -0.1054,
"opponent_defense_weakness": -0.1056,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0005,
"run_prevention": 0.9949,
"strikeout": 1.0078
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "657746",
"profile": {
"available": true,
"pitcher_id": "657746",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 233.0,
"k_percent": 27.7,
"bb_percent": 4.8,
"woba": 0.268,
"xwoba": 0.281,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 10.5,
"hard_hit_percent": 43.4,
"avg_best_speed": 78.8985,
"avg_hyper_speed": 94.5234,
"whiff_percent": 25.2,
"swing_percent": 50.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3542,
"command_and_miss": 0.5293,
"regression_edge": -0.3714,
"xwoba_edge": 0.9714,
"barrel_edge": -0.7111,
"hard_hit_edge": -0.7286,
"whiff_edge": -0.0714,
"bb_edge": 1.1,
"pitch_design_score": -0.0983
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "657746",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 94,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 94,
"pitch_usage": 0.0,
"release_speed": 87.97292842814021,
"release_spin_rate": 2370.846699153044,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 94,
"pitch_usage": 0.0,
"release_speed": 87.97292842814021,
"release_spin_rate": 2370.846699153044,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 87.9729,
"release_spin_rate": 2370.8467,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0983,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.7024,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.2711,
"sample_weight": 0.932,
"run_prevention_factor": 0.977,
"strikeout_factor": 1.025,
"walk_factor": 0.918,
"homer_factor": 1.053,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657746",
"espn_id": 42450,
"player_name": "Joe Ryan",
"team": "MIN",
"role": "pitcher",
"espn_rank": 24,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 24,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 15.0,
"gs_rank": 2,
"qs_value": 9.0,
"qs_rank": 7,
"era_value": 3.17,
"era_rank": 19.0,
"w_value": 4.0,
"w_rank": 65,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 82.1,
"ip_rank": 28,
"h_value": 66.0,
"h_rank": 74,
"er_value": 29.0,
"er_rank": 92,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 16.0,
"bb_rank": 176,
"k_value": 92.0,
"k_rank": 13,
"k_per_9_value": 10.05668,
"k_per_9_rank": 12,
"whip_value": 0.9959,
"whip_rank": 7.0,
"war_value": 2.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 0.9786,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 0.9786,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9236,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0494,
"adjusted": 1
},
"predicted_SO": {
"original": 7.0,
"factor": 1.0233,
"adjusted": 7
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 55.0,
"ER": 19,
"H": 48,
"BB": 10,
"SO": 64,
"HR": 7,
"ERA": 3.109090909090909,
"WHIP": 1.0545454545454545,
"K9": 10.472727272727273,
"HR9": 1.1454545454545455,
"games_pitched": 10,
"quality_starts": 7,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "657746",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 94,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 94,
"pitch_usage": 0.0,
"release_speed": 87.97292842814021,
"release_spin_rate": 2370.846699153044,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 94,
"pitch_usage": 0.0,
"release_speed": 87.97292842814021,
"release_spin_rate": 2370.846699153044,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 87.9729,
"release_spin_rate": 2370.8467,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0983,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.7024,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 15.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.75,
"prior_weight": 0.25
},
"role": "pitcher",
"player_id": "657746",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 31.2,
"ER": 11.0,
"R": 11.0,
"H": 29.0,
"BB": 2.0,
"SO": 40.0,
"HR": 5.0,
"BF": 129.0,
"Pitches": 499.0
},
"per_game": {
"IP": 6.1,
"ER": 2.2,
"R": 2.2,
"H": 5.8,
"BB": 0.4,
"SO": 8.0,
"HR": 1.0,
"BF": 25.8,
"Pitches": 99.8
},
"rates": {
"ERA": 3.1263,
"WHIP": 0.9789,
"ER_per_IP": 0.34737,
"H_per_IP": 0.91579,
"BB_per_IP": 0.06316,
"SO_per_IP": 1.26316,
"HR_per_IP": 0.15789
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.0,
"ER": 19.0,
"R": 22.0,
"H": 48.0,
"BB": 10.0,
"SO": 64.0,
"HR": 7.0,
"BF": 225.0,
"Pitches": 885.0
},
"per_game": {
"IP": 5.1,
"ER": 1.9,
"R": 2.2,
"H": 4.8,
"BB": 1.0,
"SO": 6.4,
"HR": 0.7,
"BF": 22.5,
"Pitches": 88.5
},
"rates": {
"ERA": 3.1091,
"WHIP": 1.0545,
"ER_per_IP": 0.34545,
"H_per_IP": 0.87273,
"BB_per_IP": 0.18182,
"SO_per_IP": 1.16364,
"HR_per_IP": 0.12727
}
},
"season": {
"games": 15,
"totals": {
"IP": 82.1,
"ER": 29.0,
"R": 34.0,
"H": 66.0,
"BB": 16.0,
"SO": 92.0,
"HR": 8.0,
"BF": 332.0,
"Pitches": 1333.0
},
"per_game": {
"IP": 5.1,
"ER": 1.9333,
"R": 2.2667,
"H": 4.4,
"BB": 1.0667,
"SO": 6.1333,
"HR": 0.5333,
"BF": 22.1333,
"Pitches": 88.8667
},
"rates": {
"ERA": 3.17,
"WHIP": 0.996,
"ER_per_IP": 0.35223,
"H_per_IP": 0.80162,
"BB_per_IP": 0.19433,
"SO_per_IP": 1.11741,
"HR_per_IP": 0.09717
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.253,
"predicted_H": 5.265,
"predicted_BB": 1.103,
"predicted_SO": 6.619,
"predicted_HR": 0.804,
"predicted_ERA": 3.4738,
"predicted_WHIP": 1.0909
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4556,
"form_weight": 0.5444,
"form_reliability": 0.75,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 15.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.75,
"prior_weight": 0.25
},
"applied_metrics": {
"predicted_IP": {
"model": 6.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.253,
"final": 1.6821,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 5.265,
"final": 4.6886,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 1.103,
"final": 1.9673,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 6.619,
"final": 5.8813,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.804,
"final": 0.4377,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4738,
"final": 3.4738,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0909,
"final": 1.0909,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Anthony Banda |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0223 |
| ESPN Rank | 381 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 4.5000 |
| Season WHIP | 1.3000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"opponent": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"edges": {
"quality_edge": -0.01,
"offense_edge": 0.0685,
"opponent_offense_edge": -0.1011,
"defense_strength": -0.1054,
"opponent_defense_weakness": -0.1056,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0005,
"run_prevention": 0.9949,
"strikeout": 1.0078
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "607455",
"profile": {
"available": true,
"pitcher_id": "607455",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 104.0,
"k_percent": 20.1,
"bb_percent": 10.4,
"woba": 0.32,
"xwoba": 0.317,
"sweet_spot_percent": 28.7,
"barrel_batted_rate": 5.8,
"hard_hit_percent": 37.9,
"avg_best_speed": 80.5819,
"avg_hyper_speed": 94.031,
"whiff_percent": 26.3,
"swing_percent": 45.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.0183,
"command_and_miss": -0.1843,
"regression_edge": 0.0857,
"xwoba_edge": -0.0571,
"barrel_edge": 0.3333,
"hard_hit_edge": 0.0571,
"whiff_edge": 0.0857,
"bb_edge": -0.3,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "607455",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.0223,
"sample_weight": 0.45,
"run_prevention_factor": 1.0019,
"strikeout_factor": 0.9954,
"walk_factor": 1.0108,
"homer_factor": 0.9877,
"woba_minus_xwoba": 0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "607455",
"espn_id": 34542,
"player_name": "Anthony Banda",
"team": "MIN",
"role": "pitcher",
"espn_rank": 381,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 381,
"gp_value": 34.0,
"gp_rank": 13,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.5,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 9.0,
"hld_rank": 31,
"ip_value": 30.0,
"ip_rank": 251,
"h_value": 25.0,
"h_rank": 266,
"er_value": 15.0,
"er_rank": 209,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 14.0,
"bb_rank": 209,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 8.1,
"k_per_9_rank": 29,
"whip_value": 1.3,
"whip_rank": null,
"war_value": 0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0009,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0009,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0049,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9945,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9979,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.1,
"ER": 0,
"H": 6,
"BB": 6,
"SO": 8,
"HR": 0,
"ERA": 0.0,
"WHIP": 1.44,
"K9": 8.639999999999999,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "607455",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.958,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5437,
"prior_weight": 0.4563
},
"role": "pitcher",
"player_id": "607455",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 34,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 0.0,
"R": 1.0,
"H": 4.0,
"BB": 2.0,
"SO": 3.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 72.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.2,
"H": 0.8,
"BB": 0.4,
"SO": 0.6,
"HR": 0.0,
"BF": 3.8,
"Pitches": 14.4
},
"rates": {
"ERA": 0.0,
"WHIP": 1.5,
"ER_per_IP": 0.0,
"H_per_IP": 1.0,
"BB_per_IP": 0.5,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 0.0,
"R": 1.0,
"H": 6.0,
"BB": 6.0,
"SO": 8.0,
"HR": 0.0,
"BF": 36.0,
"Pitches": 144.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.1,
"H": 0.6,
"BB": 0.6,
"SO": 0.8,
"HR": 0.0,
"BF": 3.6,
"Pitches": 14.4
},
"rates": {
"ERA": 0.0,
"WHIP": 1.44,
"ER_per_IP": 0.0,
"H_per_IP": 0.72,
"BB_per_IP": 0.72,
"SO_per_IP": 0.96,
"HR_per_IP": 0.0
}
},
"season": {
"games": 34,
"totals": {
"IP": 30.0,
"ER": 15.0,
"R": 17.0,
"H": 25.0,
"BB": 14.0,
"SO": 27.0,
"HR": 2.0,
"BF": 134.0,
"Pitches": 537.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4412,
"R": 0.5,
"H": 0.7353,
"BB": 0.4118,
"SO": 0.7941,
"HR": 0.0588,
"BF": 3.9412,
"Pitches": 15.7941
},
"rates": {
"ERA": 4.5,
"WHIP": 1.3,
"ER_per_IP": 0.5,
"H_per_IP": 0.83333,
"BB_per_IP": 0.46667,
"SO_per_IP": 0.9,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.242,
"predicted_H": 0.784,
"predicted_BB": 0.407,
"predicted_SO": 0.763,
"predicted_HR": 0.063,
"predicted_ERA": 2.5464,
"predicted_WHIP": 1.3925
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5428,
"form_weight": 0.4572,
"form_reliability": 0.5437,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.958,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5437,
"prior_weight": 0.4563
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.242,
"final": 0.1106,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.784,
"final": 1.444,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.407,
"final": 0.1861,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.763,
"final": 0.8916,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.063,
"final": 0.0288,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5464,
"final": 2.5464,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3925,
"final": 1.3925,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Travis Adams |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0086 |
| ESPN Rank | 581 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0219 |
| Avg Velo | 89.3371 |
| Avg Spin | 2344.9974 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 6.4800 |
| Season WHIP | 1.4400 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"opponent": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"edges": {
"quality_edge": -0.01,
"offense_edge": 0.0685,
"opponent_offense_edge": -0.1011,
"defense_strength": -0.1054,
"opponent_defense_weakness": -0.1056,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0005,
"run_prevention": 0.9949,
"strikeout": 1.0078
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "701519",
"profile": {
"available": true,
"pitcher_id": "701519",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 46.0,
"k_percent": 27.0,
"bb_percent": 9.5,
"woba": 0.349,
"xwoba": 0.33,
"sweet_spot_percent": 40.4,
"barrel_batted_rate": 10.6,
"hard_hit_percent": 31.9,
"avg_best_speed": 73.7884,
"avg_hyper_speed": 93.9783,
"whiff_percent": 29.7,
"swing_percent": 48.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.348,
"command_and_miss": 0.4743,
"regression_edge": 0.5429,
"xwoba_edge": -0.4286,
"barrel_edge": -0.7333,
"hard_hit_edge": 0.9143,
"whiff_edge": 0.5714,
"bb_edge": -0.075,
"pitch_design_score": -0.0219
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "701519",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 12,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 12,
"pitch_usage": 0.0,
"release_speed": 89.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 12,
"pitch_usage": 0.0,
"release_speed": 89.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3371,
"release_spin_rate": 2344.9974,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0219,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1567,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0086,
"sample_weight": 0.45,
"run_prevention_factor": 1.0007,
"strikeout_factor": 1.0219,
"walk_factor": 1.0027,
"homer_factor": 1.0157,
"woba_minus_xwoba": 0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701519",
"espn_id": 4424951,
"player_name": "Travis Adams",
"team": "MIN",
"role": "pitcher",
"espn_rank": 581,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 581,
"gp_value": 12.0,
"gp_rank": 352,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 6.48,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 1.0,
"hld_rank": 198,
"ip_value": 16.2,
"ip_rank": 419,
"h_value": 17.0,
"h_rank": 386,
"er_value": 12.0,
"er_rank": 266,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 20.0,
"k_rank": 352,
"k_per_9_value": 10.8,
"k_per_9_rank": 22,
"whip_value": 1.44,
"whip_rank": null,
"war_value": -0.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0003,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0003,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0071,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0099,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 13.0,
"ER": 9,
"H": 11,
"BB": 5,
"SO": 15,
"HR": 4,
"ERA": 6.230769230769231,
"WHIP": 1.2307692307692308,
"K9": 10.384615384615385,
"HR9": 2.769230769230769,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": true,
"pitcher_id": "701519",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 12,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 12,
"pitch_usage": 0.0,
"release_speed": 89.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 12,
"pitch_usage": 0.0,
"release_speed": 89.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3371,
"release_spin_rate": 2344.9974,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0219,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1567,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.31,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3983,
"prior_weight": 0.6017
},
"role": "pitcher",
"player_id": "701519",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.2,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 2.0,
"SO": 8.0,
"HR": 2.0,
"BF": 28.0,
"Pitches": 116.0
},
"per_game": {
"IP": 1.1,
"ER": 0.8,
"R": 0.8,
"H": 1.4,
"BB": 0.4,
"SO": 1.6,
"HR": 0.4,
"BF": 5.6,
"Pitches": 23.2
},
"rates": {
"ERA": 5.4,
"WHIP": 1.35,
"ER_per_IP": 0.6,
"H_per_IP": 1.05,
"BB_per_IP": 0.3,
"SO_per_IP": 1.2,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.0,
"ER": 9.0,
"R": 9.0,
"H": 11.0,
"BB": 5.0,
"SO": 15.0,
"HR": 4.0,
"BF": 54.0,
"Pitches": 210.0
},
"per_game": {
"IP": 1.1,
"ER": 0.9,
"R": 0.9,
"H": 1.1,
"BB": 0.5,
"SO": 1.5,
"HR": 0.4,
"BF": 5.4,
"Pitches": 21.0
},
"rates": {
"ERA": 6.2308,
"WHIP": 1.2308,
"ER_per_IP": 0.69231,
"H_per_IP": 0.84615,
"BB_per_IP": 0.38462,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.30769
}
},
"season": {
"games": 12,
"totals": {
"IP": 16.2,
"ER": 12.0,
"R": 12.0,
"H": 17.0,
"BB": 7.0,
"SO": 20.0,
"HR": 4.0,
"BF": 74.0,
"Pitches": 282.0
},
"per_game": {
"IP": 1.1,
"ER": 1.0,
"R": 1.0,
"H": 1.4167,
"BB": 0.5833,
"SO": 1.6667,
"HR": 0.3333,
"BF": 6.1667,
"Pitches": 23.5
},
"rates": {
"ERA": 6.48,
"WHIP": 1.44,
"ER_per_IP": 0.72,
"H_per_IP": 1.02,
"BB_per_IP": 0.42,
"SO_per_IP": 1.2,
"HR_per_IP": 0.24
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.638,
"predicted_H": 1.103,
"predicted_BB": 0.407,
"predicted_SO": 1.173,
"predicted_HR": 0.231,
"predicted_ERA": 5.0653,
"predicted_WHIP": 1.3329
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6042,
"form_weight": 0.3958,
"form_reliability": 0.3983,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.31,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3983,
"prior_weight": 0.6017
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.638,
"final": 0.2525,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.103,
"final": 0.4365,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.407,
"final": 0.1611,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.173,
"final": 0.4643,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.231,
"final": 0.0914,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.0653,
"final": 5.0653,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3329,
"final": 1.3329,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Yoendrys Gómez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2541 |
| ESPN Rank | 174 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 3.8571 |
| Season WHIP | 1.3429 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"opponent": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"edges": {
"quality_edge": -0.01,
"offense_edge": 0.0685,
"opponent_offense_edge": -0.1011,
"defense_strength": -0.1054,
"opponent_defense_weakness": -0.1056,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0005,
"run_prevention": 0.9949,
"strikeout": 1.0078
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "672782",
"profile": {
"available": true,
"pitcher_id": "672782",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 109.0,
"k_percent": 22.1,
"bb_percent": 11.0,
"woba": 0.315,
"xwoba": 0.356,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 43.0,
"avg_best_speed": 78.4976,
"avg_hyper_speed": 94.4368,
"whiff_percent": 25.2,
"swing_percent": 46.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.7339,
"command_and_miss": -0.1407,
"regression_edge": -1.1714,
"xwoba_edge": -1.1714,
"barrel_edge": -1.0,
"hard_hit_edge": -0.6714,
"whiff_edge": -0.0714,
"bb_edge": -0.45,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "672782",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.2541,
"sample_weight": 0.45,
"run_prevention_factor": 1.0216,
"strikeout_factor": 0.9977,
"walk_factor": 1.0162,
"homer_factor": 1.0639,
"woba_minus_xwoba": -0.041,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "672782",
"espn_id": 42898,
"player_name": "Yoendrys Gomez",
"team": "MIN",
"role": "pitcher",
"espn_rank": 174,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 174,
"gp_value": 29.0,
"gp_rank": 80,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.8571,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 7.0,
"sv_rank": 20,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 35.0,
"ip_rank": 186,
"h_value": 30.0,
"h_rank": 211,
"er_value": 15.0,
"er_rank": 209,
"hr_value": 5.0,
"hr_rank": 157,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 34.0,
"k_rank": 204,
"k_per_9_value": 8.742857,
"k_per_9_rank": 29,
"whip_value": 1.3428,
"whip_rank": null,
"war_value": 0.57,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0097,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0097,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0073,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0288,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.999,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 2,
"H": 7,
"BB": 4,
"SO": 11,
"HR": 0,
"ERA": 2.0,
"WHIP": 1.2222222222222223,
"K9": 11.0,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-15T00:00:00"
}{
"available": false,
"pitcher_id": "672782",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.95,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5816,
"prior_weight": 0.4184
},
"role": "pitcher",
"player_id": "672782",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 2.0,
"SO": 3.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 81.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.4,
"SO": 0.6,
"HR": 0.0,
"BF": 4.0,
"Pitches": 16.2
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.6154,
"ER_per_IP": 0.46154,
"H_per_IP": 1.15385,
"BB_per_IP": 0.46154,
"SO_per_IP": 0.69231,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 4.0,
"SO": 11.0,
"HR": 0.0,
"BF": 38.0,
"Pitches": 160.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.7,
"BB": 0.4,
"SO": 1.1,
"HR": 0.0,
"BF": 3.8,
"Pitches": 16.0
},
"rates": {
"ERA": 2.0,
"WHIP": 1.2222,
"ER_per_IP": 0.22222,
"H_per_IP": 0.77778,
"BB_per_IP": 0.44444,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 35.0,
"ER": 15.0,
"R": 17.0,
"H": 30.0,
"BB": 17.0,
"SO": 34.0,
"HR": 5.0,
"BF": 154.0,
"Pitches": 593.0
},
"per_game": {
"IP": 1.1,
"ER": 0.5172,
"R": 0.5862,
"H": 1.0345,
"BB": 0.5862,
"SO": 1.1724,
"HR": 0.1724,
"BF": 5.3103,
"Pitches": 20.4483
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.3429,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.48571,
"SO_per_IP": 0.97143,
"HR_per_IP": 0.14286
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.442,
"predicted_H": 1.005,
"predicted_BB": 0.436,
"predicted_SO": 0.972,
"predicted_HR": 0.081,
"predicted_ERA": 3.8292,
"predicted_WHIP": 1.3873
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5268,
"form_weight": 0.4732,
"form_reliability": 0.5816,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.95,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5816,
"prior_weight": 0.4184
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.442,
"final": 0.2092,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.005,
"final": 0.4756,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.436,
"final": 0.7331,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.972,
"final": 0.9867,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.081,
"final": 0.0383,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8292,
"final": 3.8292,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3873,
"final": 1.3873,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.206 | 0.000 | 0.000 | Hitting_2B | 0.227 | 0.000 | -0.227 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 4.500 | 4.000 | 4.000 | Hitting_AB | 4.253 | 4.000 | -0.253 | 0.000 |
| predicted_AVG | 0.263 | 0.250 | 0.250 | Hitting_AVG | 0.272 | 0.250 | -0.022 | 0.000 |
| predicted_BB | 0.333 | 1.000 | 0.000 | Hitting_BB | 0.343 | 1.000 | 0.657 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.180 | 1.000 | 1.000 | Hitting_H | 1.159 | 1.000 | -0.159 | 0.000 |
| predicted_HR | 0.350 | 0.000 | 0.000 | Hitting_HR | 0.382 | 0.000 | -0.382 | 0.000 |
| predicted_OBP | 0.369 | 0.400 | 0.250 | Hitting_OBP | 0.332 | 0.400 | 0.068 | 0.000 |
| predicted_R | 0.810 | 1.000 | 1.000 | Hitting_R | 0.845 | 3.000 | 0.155 | -2.000 |
| predicted_RBI | 0.670 | 0.000 | 1.000 | Hitting_RBI | 0.618 | 0.000 | -0.618 | 0.000 |
| predicted_SLG | 0.602 | 0.250 | 0.250 | Hitting_SLG | 0.603 | 0.250 | -0.353 | 0.000 |
| predicted_SO | 1.175 | 0.000 | 1.000 | Hitting_SO | 1.236 | 0.000 | -1.236 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.3330 -> 1.0000 (boost 0.6670, better) |
| Biggest Deboost | predicted_SO: 1.1750 -> 0.0000 (deboost -1.1750, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 5 | 1 | 5 | 1 | predicted_R: 0.8100 -> 0.8813 (boost 0.0713, better) | predicted_AB: 4.5000 -> 4.2823 (deboost -0.2177, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.6603 -> 0.6234 (deboost -0.0369, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_RBI: 0.6721 -> 1.0000 (boost 0.3279, better) | predicted_HR: 0.3831 -> 0.0000 (deboost -0.3831, worse) | AB rounded to 4 (raw=4.50), rates preserved: AVG=0.278 HR/AB=0.085 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8835 -> 1.0000 (boost 0.1165, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.6234 -> 0.2500 (deboost -0.3734, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.6234 (boost 0.3734, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621439",
"player_name": "Byron Buxton",
"position": "CF",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.206,
"predicted_3B": 0.016,
"predicted_AB": 4.5,
"predicted_AVG": 0.263,
"predicted_BB": 0.333,
"predicted_H": 1.18,
"predicted_HR": 0.35,
"predicted_OBP": 0.369,
"predicted_R": 0.81,
"predicted_RBI": 0.67,
"predicted_SLG": 0.602,
"predicted_SO": 1.175
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2431,
"predicted_3B": 0.0135,
"predicted_AB": 4.2823,
"predicted_AVG": 0.2942,
"predicted_BB": 0.3423,
"predicted_H": 1.2488,
"predicted_HBP": 0.029,
"predicted_HR": 0.3842,
"predicted_OBP": 0.3798,
"predicted_R": 0.8813,
"predicted_RBI": 0.6704,
"predicted_SLG": 0.6603,
"predicted_SO": 1.1497
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.206,
"after": 0.2431,
"delta": 0.0371,
"percent_delta": 0.1801,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0135,
"delta": -0.0025,
"percent_delta": -0.1563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5,
"after": 4.2823,
"delta": -0.2177,
"percent_delta": -0.0484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2942,
"delta": 0.0312,
"percent_delta": 0.1186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.3423,
"delta": 0.0093,
"percent_delta": 0.0279,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 1.2488,
"delta": 0.0688,
"percent_delta": 0.0583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.35,
"after": 0.3842,
"delta": 0.0342,
"percent_delta": 0.0977,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.369,
"after": 0.3798,
"delta": 0.0108,
"percent_delta": 0.0293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.81,
"after": 0.8813,
"delta": 0.0713,
"percent_delta": 0.088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.67,
"after": 0.6704,
"delta": 0.0004,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.602,
"after": 0.6603,
"delta": 0.0583,
"percent_delta": 0.0968,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.175,
"after": 1.1497,
"delta": -0.0253,
"percent_delta": -0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.81,
"after": 0.8813,
"delta": 0.0713,
"percent_delta": 0.088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.5,
"after": 4.2823,
"delta": -0.2177,
"percent_delta": -0.0484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 63
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2431,
"predicted_3B": 0.0135,
"predicted_AB": 4.2823,
"predicted_AVG": 0.2919,
"predicted_BB": 0.3431,
"predicted_H": 1.25,
"predicted_HBP": 0.029,
"predicted_HR": 0.3831,
"predicted_OBP": 0.3444,
"predicted_R": 0.8835,
"predicted_RBI": 0.6721,
"predicted_SLG": 0.6234,
"predicted_SO": 1.1469
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2431,
"after": 0.2431,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0135,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2823,
"after": 4.2823,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2942,
"after": 0.2919,
"delta": -0.0023,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3423,
"after": 0.3431,
"delta": 0.0008,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2488,
"after": 1.25,
"delta": 0.0012,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.029,
"after": 0.029,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3842,
"after": 0.3831,
"delta": -0.0011,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3798,
"after": 0.3444,
"delta": -0.0354,
"percent_delta": -0.0932,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8813,
"after": 0.8835,
"delta": 0.0022,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6704,
"after": 0.6721,
"delta": 0.0017,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.6603,
"after": 0.6234,
"delta": -0.0369,
"percent_delta": -0.0559,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1497,
"after": 1.1469,
"delta": -0.0028,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.6603,
"after": 0.6234,
"delta": -0.0369,
"percent_delta": -0.0559,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.50), rates preserved: AVG=0.278 HR/AB=0.085",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2431,
"after": 0.0,
"delta": -0.2431,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0,
"delta": -0.0135,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2823,
"after": 4.0,
"delta": -0.2823,
"percent_delta": -0.0659,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3431,
"after": 0.0,
"delta": -0.3431,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.25,
"after": 1.0,
"delta": -0.25,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3831,
"after": 0.0,
"delta": -0.3831,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6721,
"after": 1.0,
"delta": 0.3279,
"percent_delta": 0.4879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1469,
"after": 1.0,
"delta": -0.1469,
"percent_delta": -0.1281,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6721,
"after": 1.0,
"delta": 0.3279,
"percent_delta": 0.4879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3831,
"after": 0.0,
"delta": -0.3831,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8835,
"after": 1.0,
"delta": 0.1165,
"percent_delta": 0.1319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8835,
"after": 1.0,
"delta": 0.1165,
"percent_delta": 0.1319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2919,
"after": 0.25,
"delta": -0.0419,
"percent_delta": -0.1435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3444,
"after": 0.25,
"delta": -0.0944,
"percent_delta": -0.2741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.6234,
"after": 0.25,
"delta": -0.3734,
"percent_delta": -0.599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.6234,
"after": 0.25,
"delta": -0.3734,
"percent_delta": -0.599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2919,
"predicted_BB": 1.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3444,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.6234,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2919,
"delta": 0.0419,
"percent_delta": 0.1676,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3444,
"delta": 0.0944,
"percent_delta": 0.3778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.6234,
"delta": 0.3734,
"percent_delta": 1.4935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.6234,
"delta": 0.3734,
"percent_delta": 1.4935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.206,
"after": 0.0,
"delta": -0.206,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5,
"after": 4.0,
"delta": -0.5,
"percent_delta": -0.1111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2919,
"delta": 0.0289,
"percent_delta": 0.1099,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 1.0,
"delta": 0.667,
"percent_delta": 2.003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 1.0,
"delta": -0.18,
"percent_delta": -0.1525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.369,
"after": 0.3444,
"delta": -0.0246,
"percent_delta": -0.0667,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.81,
"after": 1.0,
"delta": 0.19,
"percent_delta": 0.2346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.67,
"after": 0.0,
"delta": -0.67,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.602,
"after": 0.6234,
"delta": 0.0214,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.175,
"after": 0.0,
"delta": -1.175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.333,
"after": 1.0,
"delta": 0.667,
"percent_delta": 2.003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.175,
"after": 0.0,
"delta": -1.175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.206 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 4.500 | - |
| predicted_AVG | 0.263 | - |
| predicted_BB | 0.333 | - |
| predicted_H | 1.180 | - |
| predicted_HR | 0.350 | - |
| predicted_OBP | 0.369 | - |
| predicted_R | 0.810 | - |
| predicted_RBI | 0.670 | - |
| predicted_SLG | 0.602 | - |
| predicted_SO | 1.175 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.243 | 0.037 |
| predicted_3B | 0.013 | -0.003 |
| predicted_AB | 4.282 | -0.218 |
| predicted_AVG | 0.294 | 0.031 |
| predicted_BB | 0.342 | 0.009 |
| predicted_H | 1.249 | 0.069 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.384 | 0.034 |
| predicted_OBP | 0.380 | 0.011 |
| predicted_R | 0.881 | 0.071 |
| predicted_RBI | 0.670 | 0.000 |
| predicted_SLG | 0.660 | 0.058 |
| predicted_SO | 1.150 | -0.025 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.243 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 4.282 | 0.000 |
| predicted_AVG | 0.292 | -0.002 |
| predicted_BB | 0.343 | 0.001 |
| predicted_H | 1.250 | 0.001 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.383 | -0.001 |
| predicted_OBP | 0.344 | -0.035 |
| predicted_R | 0.883 | 0.002 |
| predicted_RBI | 0.672 | 0.002 |
| predicted_SLG | 0.623 | -0.037 |
| predicted_SO | 1.147 | -0.003 |
AB rounded to 4 (raw=4.50), rates preserved: AVG=0.278 HR/AB=0.085
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.243 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 4.000 | -0.282 |
| predicted_AVG | 0.250 | -0.042 |
| predicted_BB | 0.000 | -0.343 |
| predicted_H | 1.000 | -0.250 |
| predicted_HR | 0.000 | -0.383 |
| predicted_OBP | 0.250 | -0.094 |
| predicted_R | 1.000 | 0.117 |
| predicted_RBI | 1.000 | 0.328 |
| predicted_SLG | 0.250 | -0.373 |
| predicted_SO | 1.000 | -0.147 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 10.000 | 3.000 | 0.000 | 3.000 | 4.000 | 8.000 | 2.000 | 6.000 | 0.5000 | 0.5455 | 1.1000 | 0.5000 | 0.1500 | 0.2000 | 0.1000 | 0.3000 |
| last_10 | 0.20 | 10 | - | 37.000 | 15.000 | 3.000 | 0.000 | 6.000 | 9.000 | 11.000 | 4.000 | 10.000 | 0.4054 | 0.4634 | 0.9730 | 0.4054 | 0.1622 | 0.2432 | 0.1081 | 0.2703 |
| season | 0.60 | 63 | - | 258.000 | 71.000 | 13.000 | 1.000 | 23.000 | 36.000 | 51.000 | 21.000 | 74.000 | 0.2752 | 0.3357 | 0.6008 | 0.2752 | 0.0891 | 0.1395 | 0.0814 | 0.2868 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2940 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.9840 |
| predicted_AVG | 0.3370 |
| predicted_BB | 0.3550 |
| predicted_H | 1.3430 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.4310 |
| predicted_OBP | 0.3946 |
| predicted_R | 0.9790 |
| predicted_RBI | 0.6710 |
| predicted_SLG | 0.7401 |
| predicted_SO | 1.1150 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2060 | 0.2940 | 0.2431 | model_form_blend |
| predicted_3B | 0.0160 | 0.0100 | 0.0135 | model_form_blend |
| predicted_AB | 4.5000 | 3.9840 | 4.2823 | model_form_blend |
| predicted_AVG | 0.2630 | 0.3370 | 0.2942 | model_form_blend |
| predicted_BB | 0.3330 | 0.3550 | 0.3423 | model_form_blend |
| predicted_H | 1.1800 | 1.3430 | 1.2488 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.3500 | 0.4310 | 0.3842 | model_form_blend |
| predicted_OBP | 0.3690 | 0.3946 | 0.3798 | model_form_blend |
| predicted_R | 0.8100 | 0.9790 | 0.8813 | model_form_blend |
| predicted_RBI | 0.6700 | 0.6710 | 0.6704 | model_form_blend |
| predicted_SLG | 0.6020 | 0.7401 | 0.6603 | model_form_blend |
| predicted_SO | 1.1750 | 1.1150 | 1.1497 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 233 |
| Season rows before report date | 233 |
| Report year | 2026 |
| Profile rows used | 63 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.275 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 3 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 621439 |
| playerID | 621439 |
| playerName | Byron Buxton |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 26.1 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.397 |
| sl_xwoba | 0.35 |
| sl_xba | 0.245 |
| sl_xslg | 0.515 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 18.9 |
| sl_hard_hit_percent | 49.7 |
| sl_exit_velocity_avg | 91.1 |
| sl_launch_angle_avg | 21.1 |
| sl_whiff_percent | 31.1 |
| sl_swing_percent | 53.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.175 | 0.000 | 0.000 | Hitting_2B | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 3.193 | 4.000 | 3.000 | Hitting_AB | 3.405 | 6.000 | 0.595 | -2.000 |
| predicted_AVG | 0.246 | 0.250 | 0.333 | Hitting_AVG | 0.273 | 0.667 | -0.023 | -0.417 |
| predicted_BB | 0.421 | 1.000 | 0.000 | Hitting_BB | 0.520 | 0.000 | 0.480 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_H | 0.340 | 1.000 | 1.000 | Hitting_H | 0.931 | 4.000 | 0.069 | -3.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.058 | 1.000 | -0.058 | -1.000 |
| predicted_OBP | 0.315 | 0.400 | 0.333 | Hitting_OBP | 0.378 | 0.667 | 0.022 | -0.267 |
| predicted_R | 0.544 | 1.000 | 1.000 | Hitting_R | 0.613 | 2.000 | 0.387 | -1.000 |
| predicted_RBI | 0.150 | 0.000 | 0.000 | Hitting_RBI | 0.341 | 1.000 | -0.341 | -1.000 |
| predicted_SLG | 0.395 | 0.250 | 0.333 | Hitting_SLG | 0.396 | 1.167 | -0.146 | -0.917 |
| predicted_SO | 0.737 | 2.000 | 1.000 | Hitting_SO | 0.775 | 0.000 | 1.225 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.7370 -> 2.0000 (boost 1.2630, worse) |
| Biggest Deboost | predicted_2B: 0.1750 -> 0.0000 (deboost -0.1750, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.3400 -> 0.5760 (boost 0.2360, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4029 -> 0.3020 (deboost -0.1009, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_H: 0.5766 -> 1.0000 (boost 0.4234, better) | predicted_BB: 0.3855 -> 0.0000 (deboost -0.3855, worse) | AB rounded to 3 (raw=3.25), rates preserved: AVG=0.177 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5238 -> 1.0000 (boost 0.4762, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1774 -> 0.3330 (boost 0.1556, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 2 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1774 (deboost -0.1556, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663616",
"player_name": "Trevor Larnach",
"position": "LF",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.175,
"predicted_3B": 0.018,
"predicted_AB": 3.193,
"predicted_AVG": 0.246,
"predicted_BB": 0.421,
"predicted_H": 0.34,
"predicted_HR": 0.05,
"predicted_OBP": 0.315,
"predicted_R": 0.544,
"predicted_RBI": 0.15,
"predicted_SLG": 0.395,
"predicted_SO": 0.737
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1585,
"predicted_3B": 0.0151,
"predicted_AB": 3.2504,
"predicted_AVG": 0.2572,
"predicted_BB": 0.3846,
"predicted_H": 0.576,
"predicted_HBP": 0.051,
"predicted_HR": 0.0723,
"predicted_OBP": 0.3289,
"predicted_R": 0.5225,
"predicted_RBI": 0.1992,
"predicted_SLG": 0.4029,
"predicted_SO": 0.7316
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.175,
"after": 0.1585,
"delta": -0.0165,
"percent_delta": -0.0943,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0151,
"delta": -0.0029,
"percent_delta": -0.1611,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.193,
"after": 3.2504,
"delta": 0.0574,
"percent_delta": 0.018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2572,
"delta": 0.0112,
"percent_delta": 0.0455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.421,
"after": 0.3846,
"delta": -0.0364,
"percent_delta": -0.0865,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.34,
"after": 0.576,
"delta": 0.236,
"percent_delta": 0.6941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0723,
"delta": 0.0223,
"percent_delta": 0.446,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3289,
"delta": 0.0139,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.544,
"after": 0.5225,
"delta": -0.0215,
"percent_delta": -0.0395,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.1992,
"delta": 0.0492,
"percent_delta": 0.328,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.4029,
"delta": 0.0079,
"percent_delta": 0.02,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.737,
"after": 0.7316,
"delta": -0.0054,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.34,
"after": 0.576,
"delta": 0.236,
"percent_delta": 0.6941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 57
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1585,
"predicted_3B": 0.0151,
"predicted_AB": 3.2504,
"predicted_AVG": 0.1774,
"predicted_BB": 0.3855,
"predicted_H": 0.5766,
"predicted_HBP": 0.051,
"predicted_HR": 0.0721,
"predicted_OBP": 0.2646,
"predicted_R": 0.5238,
"predicted_RBI": 0.1997,
"predicted_SLG": 0.302,
"predicted_SO": 0.7298
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1585,
"after": 0.1585,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0151,
"after": 0.0151,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2504,
"after": 3.2504,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2572,
"after": 0.1774,
"delta": -0.0798,
"percent_delta": -0.3103,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3846,
"after": 0.3855,
"delta": 0.0009,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.576,
"after": 0.5766,
"delta": 0.0006,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.051,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0723,
"after": 0.0721,
"delta": -0.0002,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3289,
"after": 0.2646,
"delta": -0.0643,
"percent_delta": -0.1955,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5225,
"after": 0.5238,
"delta": 0.0013,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1992,
"after": 0.1997,
"delta": 0.0005,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4029,
"after": 0.302,
"delta": -0.1009,
"percent_delta": -0.2504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7316,
"after": 0.7298,
"delta": -0.0018,
"percent_delta": -0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4029,
"after": 0.302,
"delta": -0.1009,
"percent_delta": -0.2504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.25), rates preserved: AVG=0.177 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1585,
"after": 0.0,
"delta": -0.1585,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0151,
"after": 0.0,
"delta": -0.0151,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2504,
"after": 3.0,
"delta": -0.2504,
"percent_delta": -0.077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3855,
"after": 0.0,
"delta": -0.3855,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5766,
"after": 1.0,
"delta": 0.4234,
"percent_delta": 0.7343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0721,
"after": 0.0,
"delta": -0.0721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.1997,
"after": 0.0,
"delta": -0.1997,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7298,
"after": 1.0,
"delta": 0.2702,
"percent_delta": 0.3702,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5766,
"after": 1.0,
"delta": 0.4234,
"percent_delta": 0.7343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3855,
"after": 0.0,
"delta": -0.3855,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5238,
"after": 1.0,
"delta": 0.4762,
"percent_delta": 0.9091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5238,
"after": 1.0,
"delta": 0.4762,
"percent_delta": 0.9091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1774,
"after": 0.333,
"delta": 0.1556,
"percent_delta": 0.8771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2646,
"after": 0.333,
"delta": 0.0684,
"percent_delta": 0.2585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.302,
"after": 0.333,
"delta": 0.031,
"percent_delta": 0.1026,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1774,
"after": 0.333,
"delta": 0.1556,
"percent_delta": 0.8771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1774,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.2646,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.302,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1774,
"delta": -0.1556,
"percent_delta": -0.4673,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2646,
"delta": -0.0684,
"percent_delta": -0.2054,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.302,
"delta": -0.031,
"percent_delta": -0.0931,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1774,
"delta": -0.1556,
"percent_delta": -0.4673,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.175,
"after": 0.0,
"delta": -0.175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.193,
"after": 4.0,
"delta": 0.807,
"percent_delta": 0.2527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.1774,
"delta": -0.0686,
"percent_delta": -0.2789,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.421,
"after": 1.0,
"delta": 0.579,
"percent_delta": 1.3753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.34,
"after": 1.0,
"delta": 0.66,
"percent_delta": 1.9412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.2646,
"delta": -0.0504,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.544,
"after": 1.0,
"delta": 0.456,
"percent_delta": 0.8382,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.302,
"delta": -0.093,
"percent_delta": -0.2354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.737,
"after": 2.0,
"delta": 1.263,
"percent_delta": 1.7137,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.737,
"after": 2.0,
"delta": 1.263,
"percent_delta": 1.7137,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.175,
"after": 0.0,
"delta": -0.175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.193 | - |
| predicted_AVG | 0.246 | - |
| predicted_BB | 0.421 | - |
| predicted_H | 0.340 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.544 | - |
| predicted_RBI | 0.150 | - |
| predicted_SLG | 0.395 | - |
| predicted_SO | 0.737 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.159 | -0.016 |
| predicted_3B | 0.015 | -0.003 |
| predicted_AB | 3.250 | 0.057 |
| predicted_AVG | 0.257 | 0.011 |
| predicted_BB | 0.385 | -0.036 |
| predicted_H | 0.576 | 0.236 |
| predicted_HBP | 0.051 | - |
| predicted_HR | 0.072 | 0.022 |
| predicted_OBP | 0.329 | 0.014 |
| predicted_R | 0.522 | -0.022 |
| predicted_RBI | 0.199 | 0.049 |
| predicted_SLG | 0.403 | 0.008 |
| predicted_SO | 0.732 | -0.005 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.159 | 0.000 |
| predicted_3B | 0.015 | 0.000 |
| predicted_AB | 3.250 | 0.000 |
| predicted_AVG | 0.177 | -0.080 |
| predicted_BB | 0.386 | 0.001 |
| predicted_H | 0.577 | 0.001 |
| predicted_HBP | 0.051 | 0.000 |
| predicted_HR | 0.072 | -0.000 |
| predicted_OBP | 0.265 | -0.064 |
| predicted_R | 0.524 | 0.001 |
| predicted_RBI | 0.200 | 0.001 |
| predicted_SLG | 0.302 | -0.101 |
| predicted_SO | 0.730 | -0.002 |
AB rounded to 3 (raw=3.25), rates preserved: AVG=0.177 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.159 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 3.000 | -0.250 |
| predicted_AVG | 0.333 | 0.156 |
| predicted_BB | 0.000 | -0.386 |
| predicted_H | 1.000 | 0.423 |
| predicted_HR | 0.000 | -0.072 |
| predicted_OBP | 0.333 | 0.068 |
| predicted_R | 1.000 | 0.476 |
| predicted_RBI | 0.000 | -0.200 |
| predicted_SLG | 0.333 | 0.031 |
| predicted_SO | 1.000 | 0.270 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 1.000 | 3.000 | 0.3333 | 0.3684 | 0.5000 | 0.3333 | 0.0556 | 0.0556 | 0.0556 | 0.1667 |
| last_10 | 0.20 | 10 | - | 31.000 | 8.000 | 1.000 | 0.000 | 1.000 | 1.000 | 4.000 | 2.000 | 7.000 | 0.2581 | 0.3235 | 0.3871 | 0.2581 | 0.0323 | 0.0323 | 0.0645 | 0.2258 |
| season | 0.60 | 57 | - | 182.000 | 48.000 | 10.000 | 1.000 | 4.000 | 17.000 | 31.000 | 24.000 | 42.000 | 0.2637 | 0.3589 | 0.3956 | 0.2637 | 0.0220 | 0.0934 | 0.1319 | 0.2308 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1350 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.3320 |
| predicted_AVG | 0.2732 |
| predicted_BB | 0.3330 |
| predicted_H | 0.9110 |
| predicted_HBP | 0.0510 |
| predicted_HR | 0.1040 |
| predicted_OBP | 0.3487 |
| predicted_R | 0.4920 |
| predicted_RBI | 0.2690 |
| predicted_SLG | 0.4141 |
| predicted_SO | 0.7240 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1750 | 0.1350 | 0.1585 | model_form_blend |
| predicted_3B | 0.0180 | 0.0110 | 0.0151 | model_form_blend |
| predicted_AB | 3.1930 | 3.3320 | 3.2504 | model_form_blend |
| predicted_AVG | 0.2460 | 0.2732 | 0.2572 | model_form_blend |
| predicted_BB | 0.4210 | 0.3330 | 0.3846 | model_form_blend |
| predicted_H | 0.3400 | 0.9110 | 0.5760 | model_form_blend |
| predicted_HBP | - | 0.0510 | 0.0510 | form_only |
| predicted_HR | 0.0500 | 0.1040 | 0.0723 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3487 | 0.3289 | model_form_blend |
| predicted_R | 0.5440 | 0.4920 | 0.5225 | model_form_blend |
| predicted_RBI | 0.1500 | 0.2690 | 0.1992 | model_form_blend |
| predicted_SLG | 0.3950 | 0.4141 | 0.4029 | model_form_blend |
| predicted_SO | 0.7370 | 0.7240 | 0.7316 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 173 |
| Season rows before report date | 173 |
| Report year | 2026 |
| Profile rows used | 57 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.264 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 6 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 4 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 7 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 663616 |
| playerID | 663616 |
| playerName | Trevor Larnach |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 19.8 |
| sl_bb_percent | 12.7 |
| sl_woba | 0.343 |
| sl_xwoba | 0.327 |
| sl_xba | 0.248 |
| sl_xslg | 0.372 |
| sl_sweet_spot_percent | 37.9 |
| sl_barrel_batted_rate | 6.4 |
| sl_hard_hit_percent | 30.0 |
| sl_exit_velocity_avg | 86.3 |
| sl_launch_angle_avg | 13.8 |
| sl_whiff_percent | 27.0 |
| sl_swing_percent | 41.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.122 | 0.000 | 0.000 | Hitting_2B | 0.101 | 0.000 | -0.101 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.640 | 4.000 | 4.000 | Hitting_AB | 3.411 | 5.000 | 0.589 | -1.000 |
| predicted_AVG | 0.242 | 0.500 | 0.250 | Hitting_AVG | 0.180 | 0.200 | 0.320 | 0.300 |
| predicted_BB | 0.390 | 0.000 | 0.000 | Hitting_BB | 0.395 | 0.000 | -0.395 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.880 | 2.000 | 1.000 | Hitting_H | 0.612 | 1.000 | 1.388 | 1.000 |
| predicted_HR | 0.180 | 2.000 | 0.000 | Hitting_HR | 0.116 | 0.000 | 1.884 | 2.000 |
| predicted_OBP | 0.321 | 0.500 | 0.250 | Hitting_OBP | 0.273 | 0.200 | 0.227 | 0.300 |
| predicted_R | 0.415 | 1.000 | 0.000 | Hitting_R | 0.380 | 1.000 | 0.620 | 0.000 |
| predicted_RBI | 0.590 | 2.000 | 1.000 | Hitting_RBI | 0.465 | 2.000 | 1.535 | 0.000 |
| predicted_SLG | 0.442 | 2.000 | 0.250 | Hitting_SLG | 0.311 | 0.200 | 1.689 | 1.800 |
| predicted_SO | 1.073 | 0.000 | 1.000 | Hitting_SO | 1.155 | 2.000 | -1.155 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 8 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 3 |
| Better Metrics | 6 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_HR: 0.1800 -> 2.0000 (boost 1.8200, better) |
| Biggest Deboost | predicted_SO: 1.0730 -> 0.0000 (deboost -1.0730, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 3 | 0 | predicted_R: 0.4150 -> 0.4720 (boost 0.0570, better) | predicted_SO: 1.0730 -> 1.0180 (deboost -0.0550, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.4563 -> 0.4448 (deboost -0.0115, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 3 | 3 | predicted_RBI: 0.6141 -> 1.0000 (boost 0.3859, better) | predicted_BB: 0.3873 -> 0.0000 (deboost -0.3873, worse) | AB rounded to 4 (raw=3.64), rates preserved: AVG=0.245 HR/AB=0.053 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4732 -> 0.0000 (deboost -0.4732, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4448 -> 0.2500 (deboost -0.1948, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_HR: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4448 (boost 0.1948, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668904",
"player_name": "Royce Lewis",
"position": "1B",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.122,
"predicted_3B": 0.0,
"predicted_AB": 3.64,
"predicted_AVG": 0.242,
"predicted_BB": 0.39,
"predicted_H": 0.88,
"predicted_HR": 0.18,
"predicted_OBP": 0.321,
"predicted_R": 0.415,
"predicted_RBI": 0.59,
"predicted_SLG": 0.442,
"predicted_SO": 1.073
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1365,
"predicted_3B": 0.0008,
"predicted_AB": 3.6145,
"predicted_AVG": 0.2469,
"predicted_BB": 0.3864,
"predicted_H": 0.8917,
"predicted_HBP": 0.031,
"predicted_HR": 0.1929,
"predicted_OBP": 0.3227,
"predicted_R": 0.472,
"predicted_RBI": 0.6126,
"predicted_SLG": 0.4563,
"predicted_SO": 1.018
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.122,
"after": 0.1365,
"delta": 0.0145,
"percent_delta": 0.1189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.64,
"after": 3.6145,
"delta": -0.0255,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2469,
"delta": 0.0049,
"percent_delta": 0.0202,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.39,
"after": 0.3864,
"delta": -0.0036,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.8917,
"delta": 0.0117,
"percent_delta": 0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.1929,
"delta": 0.0129,
"percent_delta": 0.0717,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3227,
"delta": 0.0017,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.415,
"after": 0.472,
"delta": 0.057,
"percent_delta": 0.1373,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.6126,
"delta": 0.0226,
"percent_delta": 0.0383,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.442,
"after": 0.4563,
"delta": 0.0143,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.073,
"after": 1.018,
"delta": -0.055,
"percent_delta": -0.0513,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.415,
"after": 0.472,
"delta": 0.057,
"percent_delta": 0.1373,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.073,
"after": 1.018,
"delta": -0.055,
"percent_delta": -0.0513,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 41
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1365,
"predicted_3B": 0.0008,
"predicted_AB": 3.6145,
"predicted_AVG": 0.2469,
"predicted_BB": 0.3873,
"predicted_H": 0.8926,
"predicted_HBP": 0.031,
"predicted_HR": 0.1924,
"predicted_OBP": 0.3198,
"predicted_R": 0.4732,
"predicted_RBI": 0.6141,
"predicted_SLG": 0.4448,
"predicted_SO": 1.0156
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1365,
"after": 0.1365,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6145,
"after": 3.6145,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2469,
"after": 0.2469,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3864,
"after": 0.3873,
"delta": 0.0009,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8917,
"after": 0.8926,
"delta": 0.0009,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.031,
"after": 0.031,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1929,
"after": 0.1924,
"delta": -0.0005,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3227,
"after": 0.3198,
"delta": -0.0029,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.4732,
"delta": 0.0012,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6126,
"after": 0.6141,
"delta": 0.0015,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4563,
"after": 0.4448,
"delta": -0.0115,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.018,
"after": 1.0156,
"delta": -0.0024,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4563,
"after": 0.4448,
"delta": -0.0115,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.64), rates preserved: AVG=0.245 HR/AB=0.053",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1365,
"after": 0.0,
"delta": -0.1365,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6145,
"after": 4.0,
"delta": 0.3855,
"percent_delta": 0.1067,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3873,
"after": 0.0,
"delta": -0.3873,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8926,
"after": 1.0,
"delta": 0.1074,
"percent_delta": 0.1203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.031,
"after": 0.0,
"delta": -0.031,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6141,
"after": 1.0,
"delta": 0.3859,
"percent_delta": 0.6284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0156,
"after": 1.0,
"delta": -0.0156,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6141,
"after": 1.0,
"delta": 0.3859,
"percent_delta": 0.6284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3873,
"after": 0.0,
"delta": -0.3873,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4732,
"after": 0.0,
"delta": -0.4732,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4732,
"after": 0.0,
"delta": -0.4732,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2469,
"after": 0.25,
"delta": 0.0031,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3198,
"after": 0.25,
"delta": -0.0698,
"percent_delta": -0.2183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4448,
"after": 0.25,
"delta": -0.1948,
"percent_delta": -0.4379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4448,
"after": 0.25,
"delta": -0.1948,
"percent_delta": -0.4379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 2.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2469,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 2.0,
"predicted_OBP": 0.3198,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4448,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2469,
"delta": -0.0031,
"percent_delta": -0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3198,
"delta": 0.0698,
"percent_delta": 0.2793,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4448,
"delta": 0.1948,
"percent_delta": 0.7792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4448,
"delta": 0.1948,
"percent_delta": 0.7792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.122,
"after": 0.0,
"delta": -0.122,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.64,
"after": 4.0,
"delta": 0.36,
"percent_delta": 0.0989,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2469,
"delta": 0.0049,
"percent_delta": 0.0202,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 2.0,
"delta": 1.12,
"percent_delta": 1.2727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 2.0,
"delta": 1.82,
"percent_delta": 10.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3198,
"delta": -0.0012,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.415,
"after": 1.0,
"delta": 0.585,
"percent_delta": 1.4096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 2.0,
"delta": 1.41,
"percent_delta": 2.3898,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.442,
"after": 0.4448,
"delta": 0.0028,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.073,
"after": 0.0,
"delta": -1.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 6,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.18,
"after": 2.0,
"delta": 1.82,
"percent_delta": 10.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.073,
"after": 0.0,
"delta": -1.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.122 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.640 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.390 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.321 | - |
| predicted_R | 0.415 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.442 | - |
| predicted_SO | 1.073 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.137 | 0.015 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.615 | -0.026 |
| predicted_AVG | 0.247 | 0.005 |
| predicted_BB | 0.386 | -0.004 |
| predicted_H | 0.892 | 0.012 |
| predicted_HBP | 0.031 | - |
| predicted_HR | 0.193 | 0.013 |
| predicted_OBP | 0.323 | 0.002 |
| predicted_R | 0.472 | 0.057 |
| predicted_RBI | 0.613 | 0.023 |
| predicted_SLG | 0.456 | 0.014 |
| predicted_SO | 1.018 | -0.055 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.137 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.615 | 0.000 |
| predicted_AVG | 0.247 | 0.000 |
| predicted_BB | 0.387 | 0.001 |
| predicted_H | 0.893 | 0.001 |
| predicted_HBP | 0.031 | 0.000 |
| predicted_HR | 0.192 | -0.001 |
| predicted_OBP | 0.320 | -0.003 |
| predicted_R | 0.473 | 0.001 |
| predicted_RBI | 0.614 | 0.001 |
| predicted_SLG | 0.445 | -0.012 |
| predicted_SO | 1.016 | -0.002 |
AB rounded to 4 (raw=3.64), rates preserved: AVG=0.245 HR/AB=0.053
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.137 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.385 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 0.000 | -0.387 |
| predicted_H | 1.000 | 0.107 |
| predicted_HR | 0.000 | -0.192 |
| predicted_OBP | 0.250 | -0.070 |
| predicted_R | 0.000 | -0.473 |
| predicted_RBI | 1.000 | 0.386 |
| predicted_SLG | 0.250 | -0.195 |
| predicted_SO | 1.000 | -0.016 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 2.000 | 2.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 1.000 | 0.000 | 2.000 | 6.000 | 5.000 | 2.000 | 4.000 | 0.3333 | 0.3810 | 0.7222 | 0.3333 | 0.1111 | 0.3333 | 0.1111 | 0.2222 |
| last_10 | 0.20 | 10 | - | 37.000 | 12.000 | 2.000 | 0.000 | 3.000 | 7.000 | 6.000 | 4.000 | 7.000 | 0.3243 | 0.3810 | 0.6216 | 0.3243 | 0.0811 | 0.1892 | 0.1081 | 0.1892 |
| season | 0.60 | 41 | - | 141.000 | 29.000 | 5.000 | 0.000 | 6.000 | 20.000 | 17.000 | 16.000 | 44.000 | 0.2057 | 0.2919 | 0.3688 | 0.2057 | 0.0425 | 0.1418 | 0.1135 | 0.3121 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1580 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.5770 |
| predicted_AVG | 0.2542 |
| predicted_BB | 0.3810 |
| predicted_H | 0.9090 |
| predicted_HBP | 0.0310 |
| predicted_HR | 0.2120 |
| predicted_OBP | 0.3253 |
| predicted_R | 0.5560 |
| predicted_RBI | 0.6460 |
| predicted_SLG | 0.4774 |
| predicted_SO | 0.9370 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1220 | 0.1580 | 0.1365 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.6400 | 3.5770 | 3.6145 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2542 | 0.2469 | model_form_blend |
| predicted_BB | 0.3900 | 0.3810 | 0.3864 | model_form_blend |
| predicted_H | 0.8800 | 0.9090 | 0.8917 | model_form_blend |
| predicted_HBP | - | 0.0310 | 0.0310 | form_only |
| predicted_HR | 0.1800 | 0.2120 | 0.1929 | model_form_blend |
| predicted_OBP | 0.3210 | 0.3253 | 0.3227 | model_form_blend |
| predicted_R | 0.4150 | 0.5560 | 0.4720 | model_form_blend |
| predicted_RBI | 0.5900 | 0.6460 | 0.6126 | model_form_blend |
| predicted_SLG | 0.4420 | 0.4774 | 0.4563 | model_form_blend |
| predicted_SO | 1.0730 | 0.9370 | 1.0180 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 129 |
| Season rows before report date | 129 |
| Report year | 2026 |
| Profile rows used | 41 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 2 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.206 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 668904 |
| playerID | 668904 |
| playerName | Royce Lewis |
| pos | 3B |
| started | True |
| startingPosition | 1B |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 27.3 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.295 |
| sl_xwoba | 0.3 |
| sl_xba | 0.214 |
| sl_xslg | 0.365 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 41.4 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 16.6 |
| sl_whiff_percent | 35.0 |
| sl_swing_percent | 47.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.246 | 0.000 | 0.000 | Hitting_2B | 0.238 | 1.000 | -0.238 | -1.000 |
| predicted_3B | 0.033 | 0.000 | 0.000 | Hitting_3B | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_AB | 3.525 | 4.000 | 4.000 | Hitting_AB | 3.632 | 4.000 | 0.368 | 0.000 |
| predicted_AVG | 0.240 | 0.000 | 0.250 | Hitting_AVG | 0.235 | 0.500 | -0.235 | -0.500 |
| predicted_BB | 0.262 | 0.000 | 0.000 | Hitting_BB | 0.330 | 1.000 | -0.330 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_H | 0.360 | 0.000 | 1.000 | Hitting_H | 0.854 | 2.000 | -0.854 | -2.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.146 | 1.000 | -0.146 | -1.000 |
| predicted_OBP | 0.302 | 0.000 | 0.250 | Hitting_OBP | 0.317 | 0.600 | -0.317 | -0.600 |
| predicted_R | 0.508 | 0.000 | 1.000 | Hitting_R | 0.486 | 2.000 | -0.486 | -2.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.432 | 3.000 | -0.432 | -3.000 |
| predicted_SLG | 0.478 | 0.000 | 0.250 | Hitting_SLG | 0.439 | 1.500 | -0.439 | -1.500 |
| predicted_SO | 0.836 | 1.000 | 1.000 | Hitting_SO | 0.903 | 0.000 | 0.097 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_AB: 3.5250 -> 4.0000 (boost 0.4750, better) |
| Biggest Deboost | predicted_R: 0.5080 -> 0.0000 (deboost -0.5080, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 6 | 1 | 7 | 0 | predicted_H: 0.3600 -> 0.6210 (boost 0.2610, better) | predicted_SO: 0.8360 -> 0.7818 (deboost -0.0542, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5040 -> 0.3784 (deboost -0.1256, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_AB: 3.5742 -> 4.0000 (boost 0.4258, better) | predicted_RBI: 0.4437 -> 0.0000 (deboost -0.4437, worse) | AB rounded to 4 (raw=3.57), rates preserved: AVG=0.174 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5440 -> 1.0000 (boost 0.4560, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1739 -> 0.2500 (boost 0.0761, better) | predicted_SLG: 0.3784 -> 0.2500 (deboost -0.1284, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 0 | 2 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3784 (boost 0.1284, better) | predicted_AVG: 0.2500 -> 0.1739 (deboost -0.0761, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665019",
"player_name": "Kody Clemens",
"position": "RF",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.246,
"predicted_3B": 0.033,
"predicted_AB": 3.525,
"predicted_AVG": 0.24,
"predicted_BB": 0.262,
"predicted_H": 0.36,
"predicted_HR": 0.08,
"predicted_OBP": 0.302,
"predicted_R": 0.508,
"predicted_RBI": 0.27,
"predicted_SLG": 0.478,
"predicted_SO": 0.836
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2443,
"predicted_3B": 0.0276,
"predicted_AB": 3.5742,
"predicted_AVG": 0.2528,
"predicted_BB": 0.2691,
"predicted_H": 0.621,
"predicted_HBP": 0.049,
"predicted_HR": 0.1442,
"predicted_OBP": 0.3142,
"predicted_R": 0.5426,
"predicted_RBI": 0.4426,
"predicted_SLG": 0.504,
"predicted_SO": 0.7818
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.246,
"after": 0.2443,
"delta": -0.0017,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.033,
"after": 0.0276,
"delta": -0.0054,
"percent_delta": -0.1636,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.525,
"after": 3.5742,
"delta": 0.0492,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2528,
"delta": 0.0128,
"percent_delta": 0.0533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.262,
"after": 0.2691,
"delta": 0.0071,
"percent_delta": 0.0271,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.36,
"after": 0.621,
"delta": 0.261,
"percent_delta": 0.725,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.1442,
"delta": 0.0642,
"percent_delta": 0.8025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.302,
"after": 0.3142,
"delta": 0.0122,
"percent_delta": 0.0404,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.508,
"after": 0.5426,
"delta": 0.0346,
"percent_delta": 0.0681,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.4426,
"delta": 0.1726,
"percent_delta": 0.6393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.478,
"after": 0.504,
"delta": 0.026,
"percent_delta": 0.0544,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.836,
"after": 0.7818,
"delta": -0.0542,
"percent_delta": -0.0648,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 7,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.36,
"after": 0.621,
"delta": 0.261,
"percent_delta": 0.725,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.836,
"after": 0.7818,
"delta": -0.0542,
"percent_delta": -0.0648,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 61
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2443,
"predicted_3B": 0.0276,
"predicted_AB": 3.5742,
"predicted_AVG": 0.1739,
"predicted_BB": 0.2697,
"predicted_H": 0.6216,
"predicted_HBP": 0.049,
"predicted_HR": 0.1438,
"predicted_OBP": 0.2319,
"predicted_R": 0.544,
"predicted_RBI": 0.4437,
"predicted_SLG": 0.3784,
"predicted_SO": 0.7799
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2443,
"after": 0.2443,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0276,
"after": 0.0276,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5742,
"after": 3.5742,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2528,
"after": 0.1739,
"delta": -0.0789,
"percent_delta": -0.3121,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2691,
"after": 0.2697,
"delta": 0.0006,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.621,
"after": 0.6216,
"delta": 0.0006,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.049,
"after": 0.049,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1442,
"after": 0.1438,
"delta": -0.0004,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3142,
"after": 0.2319,
"delta": -0.0823,
"percent_delta": -0.2619,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5426,
"after": 0.544,
"delta": 0.0014,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4426,
"after": 0.4437,
"delta": 0.0011,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.504,
"after": 0.3784,
"delta": -0.1256,
"percent_delta": -0.2492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7818,
"after": 0.7799,
"delta": -0.0019,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.504,
"after": 0.3784,
"delta": -0.1256,
"percent_delta": -0.2492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.57), rates preserved: AVG=0.174 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2443,
"after": 0.0,
"delta": -0.2443,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0276,
"after": 0.0,
"delta": -0.0276,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5742,
"after": 4.0,
"delta": 0.4258,
"percent_delta": 0.1191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2697,
"after": 0.0,
"delta": -0.2697,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6216,
"after": 1.0,
"delta": 0.3784,
"percent_delta": 0.6088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.049,
"after": 0.0,
"delta": -0.049,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1438,
"after": 0.0,
"delta": -0.1438,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4437,
"after": 0.0,
"delta": -0.4437,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7799,
"after": 1.0,
"delta": 0.2201,
"percent_delta": 0.2822,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5742,
"after": 4.0,
"delta": 0.4258,
"percent_delta": 0.1191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4437,
"after": 0.0,
"delta": -0.4437,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.544,
"after": 1.0,
"delta": 0.456,
"percent_delta": 0.8382,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.544,
"after": 1.0,
"delta": 0.456,
"percent_delta": 0.8382,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1739,
"after": 0.25,
"delta": 0.0761,
"percent_delta": 0.4376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2319,
"after": 0.25,
"delta": 0.0181,
"percent_delta": 0.0781,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3784,
"after": 0.25,
"delta": -0.1284,
"percent_delta": -0.3393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1739,
"after": 0.25,
"delta": 0.0761,
"percent_delta": 0.4376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3784,
"after": 0.25,
"delta": -0.1284,
"percent_delta": -0.3393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1739,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2319,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3784,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1739,
"delta": -0.0761,
"percent_delta": -0.3043,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2319,
"delta": -0.0181,
"percent_delta": -0.0724,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3784,
"delta": 0.1284,
"percent_delta": 0.5136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3784,
"delta": 0.1284,
"percent_delta": 0.5136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1739,
"delta": -0.0761,
"percent_delta": -0.3043,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.246,
"after": 0.0,
"delta": -0.246,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.033,
"after": 0.0,
"delta": -0.033,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.525,
"after": 4.0,
"delta": 0.475,
"percent_delta": 0.1348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.1739,
"delta": -0.0661,
"percent_delta": -0.2754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.262,
"after": 0.0,
"delta": -0.262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.302,
"after": 0.2319,
"delta": -0.0701,
"percent_delta": -0.2321,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.508,
"after": 0.0,
"delta": -0.508,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.478,
"after": 0.3784,
"delta": -0.0996,
"percent_delta": -0.2084,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.836,
"after": 1.0,
"delta": 0.164,
"percent_delta": 0.1962,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.525,
"after": 4.0,
"delta": 0.475,
"percent_delta": 0.1348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.508,
"after": 0.0,
"delta": -0.508,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.246 | - |
| predicted_3B | 0.033 | - |
| predicted_AB | 3.525 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.262 | - |
| predicted_H | 0.360 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.302 | - |
| predicted_R | 0.508 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.478 | - |
| predicted_SO | 0.836 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.244 | -0.002 |
| predicted_3B | 0.028 | -0.005 |
| predicted_AB | 3.574 | 0.049 |
| predicted_AVG | 0.253 | 0.013 |
| predicted_BB | 0.269 | 0.007 |
| predicted_H | 0.621 | 0.261 |
| predicted_HBP | 0.049 | - |
| predicted_HR | 0.144 | 0.064 |
| predicted_OBP | 0.314 | 0.012 |
| predicted_R | 0.543 | 0.035 |
| predicted_RBI | 0.443 | 0.173 |
| predicted_SLG | 0.504 | 0.026 |
| predicted_SO | 0.782 | -0.054 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.244 | 0.000 |
| predicted_3B | 0.028 | 0.000 |
| predicted_AB | 3.574 | 0.000 |
| predicted_AVG | 0.174 | -0.079 |
| predicted_BB | 0.270 | 0.001 |
| predicted_H | 0.622 | 0.001 |
| predicted_HBP | 0.049 | 0.000 |
| predicted_HR | 0.144 | -0.000 |
| predicted_OBP | 0.232 | -0.082 |
| predicted_R | 0.544 | 0.001 |
| predicted_RBI | 0.444 | 0.001 |
| predicted_SLG | 0.378 | -0.126 |
| predicted_SO | 0.780 | -0.002 |
AB rounded to 4 (raw=3.57), rates preserved: AVG=0.174 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.244 |
| predicted_3B | 0.000 | -0.028 |
| predicted_AB | 4.000 | 0.426 |
| predicted_AVG | 0.250 | 0.076 |
| predicted_BB | 0.000 | -0.270 |
| predicted_H | 1.000 | 0.378 |
| predicted_HR | 0.000 | -0.144 |
| predicted_OBP | 0.250 | 0.018 |
| predicted_R | 1.000 | 0.456 |
| predicted_RBI | 0.000 | -0.444 |
| predicted_SLG | 0.250 | -0.128 |
| predicted_SO | 1.000 | 0.220 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 6.000 | 1.000 | 0.000 | 2.000 | 7.000 | 4.000 | 2.000 | 2.000 | 0.3158 | 0.3810 | 0.6842 | 0.3158 | 0.1053 | 0.3684 | 0.1053 | 0.1053 |
| last_10 | 0.20 | 10 | - | 37.000 | 11.000 | 3.000 | 0.000 | 3.000 | 8.000 | 7.000 | 2.000 | 5.000 | 0.2973 | 0.3333 | 0.6216 | 0.2973 | 0.0811 | 0.2162 | 0.0541 | 0.1351 |
| season | 0.60 | 61 | - | 215.000 | 54.000 | 15.000 | 2.000 | 11.000 | 28.000 | 31.000 | 16.000 | 51.000 | 0.2512 | 0.3178 | 0.4930 | 0.2512 | 0.0512 | 0.1302 | 0.0744 | 0.2372 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2420 |
| predicted_3B | 0.0200 |
| predicted_AB | 3.6430 |
| predicted_AVG | 0.2708 |
| predicted_BB | 0.2790 |
| predicted_H | 0.9860 |
| predicted_HBP | 0.0490 |
| predicted_HR | 0.2340 |
| predicted_OBP | 0.3313 |
| predicted_R | 0.5910 |
| predicted_RBI | 0.6840 |
| predicted_SLG | 0.5404 |
| predicted_SO | 0.7060 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2460 | 0.2420 | 0.2443 | model_form_blend |
| predicted_3B | 0.0330 | 0.0200 | 0.0276 | model_form_blend |
| predicted_AB | 3.5250 | 3.6430 | 3.5742 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2708 | 0.2528 | model_form_blend |
| predicted_BB | 0.2620 | 0.2790 | 0.2691 | model_form_blend |
| predicted_H | 0.3600 | 0.9860 | 0.6210 | model_form_blend |
| predicted_HBP | - | 0.0490 | 0.0490 | form_only |
| predicted_HR | 0.0800 | 0.2340 | 0.1442 | model_form_blend |
| predicted_OBP | 0.3020 | 0.3313 | 0.3142 | model_form_blend |
| predicted_R | 0.5080 | 0.5910 | 0.5426 | model_form_blend |
| predicted_RBI | 0.2700 | 0.6840 | 0.4426 | model_form_blend |
| predicted_SLG | 0.4780 | 0.5404 | 0.5040 | model_form_blend |
| predicted_SO | 0.8360 | 0.7060 | 0.7818 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 185 |
| Season rows before report date | 185 |
| Report year | 2026 |
| Profile rows used | 61 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.251 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 1 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 1 |
| Hitting_R | 2 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 6 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 665019 |
| playerID | 665019 |
| playerName | Kody Clemens |
| pos | 1B |
| started | True |
| startingPosition | RF |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 21.4 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.35 |
| sl_xwoba | 0.337 |
| sl_xba | 0.256 |
| sl_xslg | 0.456 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 13.3 |
| sl_hard_hit_percent | 44.0 |
| sl_exit_velocity_avg | 92.5 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 24.4 |
| sl_swing_percent | 48.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.194 | 0.000 | 0.000 | Hitting_2B | 0.179 | 1.000 | -0.179 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.810 | 4.000 | 4.000 | Hitting_AB | 3.778 | 4.000 | 0.222 | 0.000 |
| predicted_AVG | 0.253 | 0.250 | 0.250 | Hitting_AVG | 0.227 | 0.500 | 0.023 | -0.250 |
| predicted_BB | 0.264 | 0.000 | 0.000 | Hitting_BB | 0.316 | 1.000 | -0.316 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.960 | 1.000 | 1.000 | Hitting_H | 0.859 | 2.000 | 0.141 | -1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.103 | 0.000 | -0.103 | 0.000 |
| predicted_OBP | 0.325 | 0.250 | 0.250 | Hitting_OBP | 0.289 | 0.600 | -0.039 | -0.350 |
| predicted_R | 0.486 | 0.000 | 0.000 | Hitting_R | 0.517 | 1.000 | -0.517 | -1.000 |
| predicted_RBI | 0.750 | 0.000 | 1.000 | Hitting_RBI | 0.603 | 2.000 | -0.603 | -2.000 |
| predicted_SLG | 0.447 | 0.250 | 0.250 | Hitting_SLG | 0.356 | 0.750 | -0.106 | -0.500 |
| predicted_SO | 0.931 | 1.000 | 1.000 | Hitting_SO | 0.970 | 0.000 | 0.030 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.8100 -> 4.0000 (boost 0.1900, better) |
| Biggest Deboost | predicted_RBI: 0.7500 -> 0.0000 (deboost -0.7500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.4470 -> 0.4633 (boost 0.0163, better) | predicted_AB: 3.8100 -> 3.7408 (deboost -0.0692, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3274 -> 0.3120 (deboost -0.0154, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_AB: 3.7408 -> 4.0000 (boost 0.2592, better) | predicted_BB: 0.2486 -> 0.0000 (deboost -0.2486, worse) | AB rounded to 4 (raw=3.81), rates preserved: AVG=0.261 HR/AB=0.042 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4986 -> 0.0000 (deboost -0.4986, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4519 -> 0.2500 (deboost -0.2019, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4519 (boost 0.2019, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "605137",
"player_name": "Josh Bell",
"position": "DH",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.194,
"predicted_3B": 0.0,
"predicted_AB": 3.81,
"predicted_AVG": 0.253,
"predicted_BB": 0.264,
"predicted_H": 0.96,
"predicted_HR": 0.16,
"predicted_OBP": 0.325,
"predicted_R": 0.486,
"predicted_RBI": 0.75,
"predicted_SLG": 0.447,
"predicted_SO": 0.931
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2113,
"predicted_3B": 0.0004,
"predicted_AB": 3.7408,
"predicted_AVG": 0.267,
"predicted_BB": 0.248,
"predicted_H": 0.995,
"predicted_HBP": 0.018,
"predicted_HR": 0.1613,
"predicted_OBP": 0.3274,
"predicted_R": 0.4974,
"predicted_RBI": 0.799,
"predicted_SLG": 0.4633,
"predicted_SO": 0.8989
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.2113,
"delta": 0.0173,
"percent_delta": 0.0892,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.81,
"after": 3.7408,
"delta": -0.0692,
"percent_delta": -0.0182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.267,
"delta": 0.014,
"percent_delta": 0.0553,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.264,
"after": 0.248,
"delta": -0.016,
"percent_delta": -0.0606,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 0.995,
"delta": 0.035,
"percent_delta": 0.0365,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.1613,
"delta": 0.0013,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3274,
"delta": 0.0024,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.486,
"after": 0.4974,
"delta": 0.0114,
"percent_delta": 0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.75,
"after": 0.799,
"delta": 0.049,
"percent_delta": 0.0653,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4633,
"delta": 0.0163,
"percent_delta": 0.0365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.931,
"after": 0.8989,
"delta": -0.0321,
"percent_delta": -0.0345,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4633,
"delta": 0.0163,
"percent_delta": 0.0365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.81,
"after": 3.7408,
"delta": -0.0692,
"percent_delta": -0.0182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 72
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2113,
"predicted_3B": 0.0004,
"predicted_AB": 3.7408,
"predicted_AVG": 0.2663,
"predicted_BB": 0.2486,
"predicted_H": 0.996,
"predicted_HBP": 0.018,
"predicted_HR": 0.1608,
"predicted_OBP": 0.312,
"predicted_R": 0.4986,
"predicted_RBI": 0.801,
"predicted_SLG": 0.4519,
"predicted_SO": 0.8967
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2113,
"after": 0.2113,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7408,
"after": 3.7408,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2663,
"delta": -0.0007,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.248,
"after": 0.2486,
"delta": 0.0006,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.995,
"after": 0.996,
"delta": 0.001,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1613,
"after": 0.1608,
"delta": -0.0005,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3274,
"after": 0.312,
"delta": -0.0154,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4974,
"after": 0.4986,
"delta": 0.0012,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.799,
"after": 0.801,
"delta": 0.002,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4633,
"after": 0.4519,
"delta": -0.0114,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8989,
"after": 0.8967,
"delta": -0.0022,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3274,
"after": 0.312,
"delta": -0.0154,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.81), rates preserved: AVG=0.261 HR/AB=0.042",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2113,
"after": 0.0,
"delta": -0.2113,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7408,
"after": 4.0,
"delta": 0.2592,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2486,
"after": 0.0,
"delta": -0.2486,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.996,
"after": 1.0,
"delta": 0.004,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1608,
"after": 0.0,
"delta": -0.1608,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.801,
"after": 1.0,
"delta": 0.199,
"percent_delta": 0.2484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8967,
"after": 1.0,
"delta": 0.1033,
"percent_delta": 0.1152,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.7408,
"after": 4.0,
"delta": 0.2592,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2486,
"after": 0.0,
"delta": -0.2486,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4986,
"after": 0.0,
"delta": -0.4986,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4986,
"after": 0.0,
"delta": -0.4986,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2663,
"after": 0.25,
"delta": -0.0163,
"percent_delta": -0.0612,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.25,
"delta": -0.062,
"percent_delta": -0.1987,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4519,
"after": 0.25,
"delta": -0.2019,
"percent_delta": -0.4468,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4519,
"after": 0.25,
"delta": -0.2019,
"percent_delta": -0.4468,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2663,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.312,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4519,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2663,
"delta": 0.0163,
"percent_delta": 0.065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.312,
"delta": 0.062,
"percent_delta": 0.2479,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4519,
"delta": 0.2019,
"percent_delta": 0.8078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4519,
"delta": 0.2019,
"percent_delta": 0.8078,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.81,
"after": 4.0,
"delta": 0.19,
"percent_delta": 0.0499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2663,
"delta": 0.0133,
"percent_delta": 0.0526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.264,
"after": 0.0,
"delta": -0.264,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.0,
"delta": 0.04,
"percent_delta": 0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.312,
"delta": -0.013,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.486,
"after": 0.0,
"delta": -0.486,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.75,
"after": 0.0,
"delta": -0.75,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4519,
"delta": 0.0049,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.931,
"after": 1.0,
"delta": 0.069,
"percent_delta": 0.0741,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.81,
"after": 4.0,
"delta": 0.19,
"percent_delta": 0.0499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.75,
"after": 0.0,
"delta": -0.75,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.194 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.810 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.264 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.486 | - |
| predicted_RBI | 0.750 | - |
| predicted_SLG | 0.447 | - |
| predicted_SO | 0.931 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.211 | 0.017 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.741 | -0.069 |
| predicted_AVG | 0.267 | 0.014 |
| predicted_BB | 0.248 | -0.016 |
| predicted_H | 0.995 | 0.035 |
| predicted_HBP | 0.018 | - |
| predicted_HR | 0.161 | 0.001 |
| predicted_OBP | 0.327 | 0.002 |
| predicted_R | 0.497 | 0.011 |
| predicted_RBI | 0.799 | 0.049 |
| predicted_SLG | 0.463 | 0.016 |
| predicted_SO | 0.899 | -0.032 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.211 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.741 | 0.000 |
| predicted_AVG | 0.266 | -0.001 |
| predicted_BB | 0.249 | 0.001 |
| predicted_H | 0.996 | 0.001 |
| predicted_HBP | 0.018 | 0.000 |
| predicted_HR | 0.161 | -0.001 |
| predicted_OBP | 0.312 | -0.015 |
| predicted_R | 0.499 | 0.001 |
| predicted_RBI | 0.801 | 0.002 |
| predicted_SLG | 0.452 | -0.011 |
| predicted_SO | 0.897 | -0.002 |
AB rounded to 4 (raw=3.81), rates preserved: AVG=0.261 HR/AB=0.042
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.211 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.259 |
| predicted_AVG | 0.250 | -0.016 |
| predicted_BB | 0.000 | -0.249 |
| predicted_H | 1.000 | 0.004 |
| predicted_HR | 0.000 | -0.161 |
| predicted_OBP | 0.250 | -0.062 |
| predicted_R | 0.000 | -0.499 |
| predicted_RBI | 1.000 | 0.199 |
| predicted_SLG | 0.250 | -0.202 |
| predicted_SO | 1.000 | 0.103 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 7.000 | 2.000 | 0.000 | 1.000 | 7.000 | 3.000 | 1.000 | 3.000 | 0.4118 | 0.4444 | 0.7059 | 0.4118 | 0.0588 | 0.4118 | 0.0588 | 0.1765 |
| last_10 | 0.20 | 10 | - | 38.000 | 12.000 | 2.000 | 0.000 | 3.000 | 12.000 | 5.000 | 1.000 | 9.000 | 0.3158 | 0.3333 | 0.6053 | 0.3158 | 0.0790 | 0.3158 | 0.0263 | 0.2368 |
| season | 0.60 | 72 | - | 262.000 | 63.000 | 14.000 | 0.000 | 8.000 | 45.000 | 35.000 | 19.000 | 67.000 | 0.2405 | 0.2947 | 0.3855 | 0.2405 | 0.0305 | 0.1718 | 0.0725 | 0.2557 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2350 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6460 |
| predicted_AVG | 0.2861 |
| predicted_BB | 0.2260 |
| predicted_H | 1.0430 |
| predicted_HBP | 0.0180 |
| predicted_HR | 0.1630 |
| predicted_OBP | 0.3306 |
| predicted_R | 0.5130 |
| predicted_RBI | 0.8660 |
| predicted_SLG | 0.4856 |
| predicted_SO | 0.8550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1940 | 0.2350 | 0.2113 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8100 | 3.6460 | 3.7408 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2861 | 0.2670 | model_form_blend |
| predicted_BB | 0.2640 | 0.2260 | 0.2480 | model_form_blend |
| predicted_H | 0.9600 | 1.0430 | 0.9950 | model_form_blend |
| predicted_HBP | - | 0.0180 | 0.0180 | form_only |
| predicted_HR | 0.1600 | 0.1630 | 0.1613 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3306 | 0.3274 | model_form_blend |
| predicted_R | 0.4860 | 0.5130 | 0.4974 | model_form_blend |
| predicted_RBI | 0.7500 | 0.8660 | 0.7990 | model_form_blend |
| predicted_SLG | 0.4470 | 0.4856 | 0.4633 | model_form_blend |
| predicted_SO | 0.9310 | 0.8550 | 0.8989 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 234 |
| Season rows before report date | 234 |
| Report year | 2026 |
| Profile rows used | 72 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.24 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 605137 |
| playerID | 605137 |
| playerName | Josh Bell |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 23.5 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.3 |
| sl_xwoba | 0.312 |
| sl_xba | 0.245 |
| sl_xslg | 0.417 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 10.2 |
| sl_hard_hit_percent | 42.1 |
| sl_exit_velocity_avg | 89.5 |
| sl_launch_angle_avg | 12.7 |
| sl_whiff_percent | 25.5 |
| sl_swing_percent | 51.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.147 | 0.000 | 0.000 | Hitting_2B | 0.185 | 1.000 | -0.185 | -1.000 |
| predicted_3B | 0.015 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 3.750 | 4.000 | 4.000 | Hitting_AB | 3.758 | 5.000 | 0.242 | -1.000 |
| predicted_AVG | 0.231 | 0.250 | 0.250 | Hitting_AVG | 0.246 | 0.400 | 0.004 | -0.150 |
| predicted_BB | 0.265 | 0.000 | 0.000 | Hitting_BB | 0.282 | 0.000 | -0.282 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_H | 0.850 | 1.000 | 1.000 | Hitting_H | 0.925 | 2.000 | 0.075 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.128 | 0.000 | -0.128 | 0.000 |
| predicted_OBP | 0.290 | 0.250 | 0.250 | Hitting_OBP | 0.305 | 0.400 | -0.055 | -0.150 |
| predicted_R | 0.456 | 0.000 | 0.000 | Hitting_R | 0.489 | 0.000 | -0.489 | 0.000 |
| predicted_RBI | 0.440 | 0.000 | 0.000 | Hitting_RBI | 0.573 | 0.000 | -0.573 | 0.000 |
| predicted_SLG | 0.399 | 0.250 | 0.250 | Hitting_SLG | 0.407 | 0.600 | -0.157 | -0.350 |
| predicted_SO | 0.662 | 1.000 | 1.000 | Hitting_SO | 0.687 | 0.000 | 0.313 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.6620 -> 1.0000 (boost 0.3380, worse) |
| Biggest Deboost | predicted_R: 0.4560 -> 0.0000 (deboost -0.4560, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 2 | 0 | predicted_SLG: 0.3990 -> 0.4072 (boost 0.0082, better) | predicted_SO: 0.6620 -> 0.5878 (deboost -0.0742, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.2865 -> 0.2784 (deboost -0.0081, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.5864 -> 1.0000 (boost 0.4136, worse) | predicted_RBI: 0.4512 -> 0.0000 (deboost -0.4512, worse) | AB rounded to 4 (raw=3.79), rates preserved: AVG=0.227 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4584 -> 0.0000 (deboost -0.4584, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2267 -> 0.2500 (boost 0.0233, better) | predicted_SLG: 0.4044 -> 0.2500 (deboost -0.1544, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 0 | 0 | 0 | 0 | 0 | - | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4044 (boost 0.1544, better) | predicted_AVG: 0.2500 -> 0.2267 (deboost -0.0233, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686797",
"player_name": "Brooks Lee",
"position": "3B",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.147,
"predicted_3B": 0.015,
"predicted_AB": 3.75,
"predicted_AVG": 0.231,
"predicted_BB": 0.265,
"predicted_H": 0.85,
"predicted_HR": 0.15,
"predicted_OBP": 0.29,
"predicted_R": 0.456,
"predicted_RBI": 0.44,
"predicted_SLG": 0.399,
"predicted_SO": 0.662
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1491,
"predicted_3B": 0.0129,
"predicted_AB": 3.7926,
"predicted_AVG": 0.229,
"predicted_BB": 0.2713,
"predicted_H": 0.8588,
"predicted_HBP": 0.02,
"predicted_HR": 0.1669,
"predicted_OBP": 0.2865,
"predicted_R": 0.4573,
"predicted_RBI": 0.4501,
"predicted_SLG": 0.4072,
"predicted_SO": 0.5878
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.1491,
"delta": 0.0021,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0129,
"delta": -0.0021,
"percent_delta": -0.14,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.75,
"after": 3.7926,
"delta": 0.0426,
"percent_delta": 0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.229,
"delta": -0.002,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.265,
"after": 0.2713,
"delta": 0.0063,
"percent_delta": 0.0238,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 0.8588,
"delta": 0.0088,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1669,
"delta": 0.0169,
"percent_delta": 0.1127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2865,
"delta": -0.0035,
"percent_delta": -0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.456,
"after": 0.4573,
"delta": 0.0013,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.4501,
"delta": 0.0101,
"percent_delta": 0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4072,
"delta": 0.0082,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.662,
"after": 0.5878,
"delta": -0.0742,
"percent_delta": -0.1121,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4072,
"delta": 0.0082,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.662,
"after": 0.5878,
"delta": -0.0742,
"percent_delta": -0.1121,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1491,
"predicted_3B": 0.0129,
"predicted_AB": 3.7926,
"predicted_AVG": 0.2267,
"predicted_BB": 0.272,
"predicted_H": 0.8597,
"predicted_HBP": 0.02,
"predicted_HR": 0.1664,
"predicted_OBP": 0.2784,
"predicted_R": 0.4584,
"predicted_RBI": 0.4512,
"predicted_SLG": 0.4044,
"predicted_SO": 0.5864
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1491,
"after": 0.1491,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0129,
"after": 0.0129,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7926,
"after": 3.7926,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2267,
"delta": -0.0023,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2713,
"after": 0.272,
"delta": 0.0007,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8588,
"after": 0.8597,
"delta": 0.0009,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1669,
"after": 0.1664,
"delta": -0.0005,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2865,
"after": 0.2784,
"delta": -0.0081,
"percent_delta": -0.0283,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4573,
"after": 0.4584,
"delta": 0.0011,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4501,
"after": 0.4512,
"delta": 0.0011,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4072,
"after": 0.4044,
"delta": -0.0028,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.5878,
"after": 0.5864,
"delta": -0.0014,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2865,
"after": 0.2784,
"delta": -0.0081,
"percent_delta": -0.0283,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.79), rates preserved: AVG=0.227 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1491,
"after": 0.0,
"delta": -0.1491,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0129,
"after": 0.0,
"delta": -0.0129,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7926,
"after": 4.0,
"delta": 0.2074,
"percent_delta": 0.0547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.272,
"after": 0.0,
"delta": -0.272,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8597,
"after": 1.0,
"delta": 0.1403,
"percent_delta": 0.1632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1664,
"after": 0.0,
"delta": -0.1664,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4512,
"after": 0.0,
"delta": -0.4512,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5864,
"after": 1.0,
"delta": 0.4136,
"percent_delta": 0.7053,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5864,
"after": 1.0,
"delta": 0.4136,
"percent_delta": 0.7053,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4512,
"after": 0.0,
"delta": -0.4512,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4584,
"after": 0.0,
"delta": -0.4584,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4584,
"after": 0.0,
"delta": -0.4584,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2267,
"after": 0.25,
"delta": 0.0233,
"percent_delta": 0.1028,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2784,
"after": 0.25,
"delta": -0.0284,
"percent_delta": -0.102,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4044,
"after": 0.25,
"delta": -0.1544,
"percent_delta": -0.3818,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2267,
"after": 0.25,
"delta": 0.0233,
"percent_delta": 0.1028,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4044,
"after": 0.25,
"delta": -0.1544,
"percent_delta": -0.3818,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2267,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2784,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4044,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2267,
"delta": -0.0233,
"percent_delta": -0.0933,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2784,
"delta": 0.0284,
"percent_delta": 0.1136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4044,
"delta": 0.1544,
"percent_delta": 0.6177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4044,
"delta": 0.1544,
"percent_delta": 0.6177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2267,
"delta": -0.0233,
"percent_delta": -0.0933,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0,
"delta": -0.015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.75,
"after": 4.0,
"delta": 0.25,
"percent_delta": 0.0667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2267,
"delta": -0.0043,
"percent_delta": -0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.265,
"after": 0.0,
"delta": -0.265,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 1.0,
"delta": 0.15,
"percent_delta": 0.1765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2784,
"delta": -0.0116,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.456,
"after": 0.0,
"delta": -0.456,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.0,
"delta": -0.44,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4044,
"delta": 0.0054,
"percent_delta": 0.0135,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.662,
"after": 1.0,
"delta": 0.338,
"percent_delta": 0.5106,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.662,
"after": 1.0,
"delta": 0.338,
"percent_delta": 0.5106,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.456,
"after": 0.0,
"delta": -0.456,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.147 | - |
| predicted_3B | 0.015 | - |
| predicted_AB | 3.750 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.265 | - |
| predicted_H | 0.850 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.290 | - |
| predicted_R | 0.456 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.399 | - |
| predicted_SO | 0.662 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.149 | 0.002 |
| predicted_3B | 0.013 | -0.002 |
| predicted_AB | 3.793 | 0.043 |
| predicted_AVG | 0.229 | -0.002 |
| predicted_BB | 0.271 | 0.006 |
| predicted_H | 0.859 | 0.009 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.167 | 0.017 |
| predicted_OBP | 0.286 | -0.004 |
| predicted_R | 0.457 | 0.001 |
| predicted_RBI | 0.450 | 0.010 |
| predicted_SLG | 0.407 | 0.008 |
| predicted_SO | 0.588 | -0.074 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.149 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.793 | 0.000 |
| predicted_AVG | 0.227 | -0.002 |
| predicted_BB | 0.272 | 0.001 |
| predicted_H | 0.860 | 0.001 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.166 | -0.001 |
| predicted_OBP | 0.278 | -0.008 |
| predicted_R | 0.458 | 0.001 |
| predicted_RBI | 0.451 | 0.001 |
| predicted_SLG | 0.404 | -0.003 |
| predicted_SO | 0.586 | -0.001 |
AB rounded to 4 (raw=3.79), rates preserved: AVG=0.227 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.149 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 4.000 | 0.207 |
| predicted_AVG | 0.250 | 0.023 |
| predicted_BB | 0.000 | -0.272 |
| predicted_H | 1.000 | 0.140 |
| predicted_HR | 0.000 | -0.166 |
| predicted_OBP | 0.250 | -0.028 |
| predicted_R | 0.000 | -0.458 |
| predicted_RBI | 0.000 | -0.451 |
| predicted_SLG | 0.250 | -0.154 |
| predicted_SO | 1.000 | 0.414 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 4.000 | 1.000 | 0.000 | 1.000 | 1.000 | 2.000 | 1.000 | 0.000 | 0.2000 | 0.2381 | 0.4000 | 0.2000 | 0.0500 | 0.0500 | 0.0500 | 0.0000 |
| last_10 | 0.20 | 10 | - | 40.000 | 8.000 | 1.000 | 0.000 | 3.000 | 4.000 | 5.000 | 4.000 | 2.000 | 0.2000 | 0.2727 | 0.4500 | 0.2000 | 0.0750 | 0.1000 | 0.1000 | 0.0500 |
| season | 0.60 | 68 | - | 255.000 | 61.000 | 10.000 | 1.000 | 11.000 | 38.000 | 31.000 | 18.000 | 45.000 | 0.2392 | 0.2935 | 0.4157 | 0.2392 | 0.0431 | 0.1490 | 0.0706 | 0.1765 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.8510 |
| predicted_AVG | 0.2262 |
| predicted_BB | 0.2800 |
| predicted_H | 0.8710 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.1900 |
| predicted_OBP | 0.2817 |
| predicted_R | 0.4590 |
| predicted_RBI | 0.4640 |
| predicted_SLG | 0.4185 |
| predicted_SO | 0.4860 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.1520 | 0.1491 | model_form_blend |
| predicted_3B | 0.0150 | 0.0100 | 0.0129 | model_form_blend |
| predicted_AB | 3.7500 | 3.8510 | 3.7926 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2262 | 0.2290 | model_form_blend |
| predicted_BB | 0.2650 | 0.2800 | 0.2713 | model_form_blend |
| predicted_H | 0.8500 | 0.8710 | 0.8588 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.1500 | 0.1900 | 0.1669 | model_form_blend |
| predicted_OBP | 0.2900 | 0.2817 | 0.2865 | model_form_blend |
| predicted_R | 0.4560 | 0.4590 | 0.4573 | model_form_blend |
| predicted_RBI | 0.4400 | 0.4640 | 0.4501 | model_form_blend |
| predicted_SLG | 0.3990 | 0.4185 | 0.4072 | model_form_blend |
| predicted_SO | 0.6620 | 0.4860 | 0.5878 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 227 |
| Season rows before report date | 227 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.239 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 686797 |
| playerID | 686797 |
| playerName | Brooks Lee |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 16.2 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.312 |
| sl_xwoba | 0.277 |
| sl_xba | 0.226 |
| sl_xslg | 0.341 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 4.7 |
| sl_hard_hit_percent | 31.1 |
| sl_exit_velocity_avg | 87.8 |
| sl_launch_angle_avg | 13.5 |
| sl_whiff_percent | 21.1 |
| sl_swing_percent | 52.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.096 | 0.000 | 0.000 | Hitting_2B | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.135 | 4.000 | 3.000 | Hitting_AB | 3.309 | 3.000 | 0.691 | 1.000 |
| predicted_AVG | 0.248 | 0.250 | 0.333 | Hitting_AVG | 0.192 | 0.333 | 0.058 | -0.083 |
| predicted_BB | 0.327 | 0.000 | 0.000 | Hitting_BB | 0.352 | 1.000 | -0.352 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.750 | 1.000 | 1.000 | Hitting_H | 0.636 | 1.000 | 0.364 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.043 | 1.000 | -0.043 | -1.000 |
| predicted_OBP | 0.320 | 0.250 | 0.333 | Hitting_OBP | 0.290 | 0.500 | -0.040 | -0.250 |
| predicted_R | 0.212 | 0.000 | 0.000 | Hitting_R | 0.191 | 1.000 | -0.191 | -1.000 |
| predicted_RBI | 0.470 | 0.000 | 0.000 | Hitting_RBI | 0.488 | 2.000 | -0.488 | -2.000 |
| predicted_SLG | 0.403 | 0.250 | 0.333 | Hitting_SLG | 0.246 | 1.333 | 0.004 | -1.083 |
| predicted_SO | 0.731 | 1.000 | 1.000 | Hitting_SO | 0.772 | 0.000 | 0.228 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.1350 -> 4.0000 (boost 0.8650, better) |
| Biggest Deboost | predicted_RBI: 0.4700 -> 0.0000 (deboost -0.4700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3217 -> 0.3110 (deboost -0.0107, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 0.6940 -> 1.0000 (boost 0.3060, worse) | predicted_RBI: 0.4811 -> 0.0000 (deboost -0.4811, worse) | AB rounded to 3 (raw=3.16), rates preserved: AVG=0.239 HR/AB=0.039 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2319 -> 0.0000 (deboost -0.2319, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2388 -> 0.3330 (boost 0.0942, better) | predicted_SLG: 0.3959 -> 0.3330 (deboost -0.0629, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3959 (boost 0.0629, better) | predicted_AVG: 0.3330 -> 0.2388 (deboost -0.0942, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "605170",
"player_name": "Victor Caratini",
"position": "C",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.096,
"predicted_3B": 0.0,
"predicted_AB": 3.135,
"predicted_AVG": 0.248,
"predicted_BB": 0.327,
"predicted_H": 0.75,
"predicted_HR": 0.12,
"predicted_OBP": 0.32,
"predicted_R": 0.212,
"predicted_RBI": 0.47,
"predicted_SLG": 0.403,
"predicted_SO": 0.731
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1239,
"predicted_3B": 0.0008,
"predicted_AB": 3.1556,
"predicted_AVG": 0.2437,
"predicted_BB": 0.3299,
"predicted_H": 0.7529,
"predicted_HBP": 0.104,
"predicted_HR": 0.1237,
"predicted_OBP": 0.3217,
"predicted_R": 0.2313,
"predicted_RBI": 0.4799,
"predicted_SLG": 0.4064,
"predicted_SO": 0.6957
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.096,
"after": 0.1239,
"delta": 0.0279,
"percent_delta": 0.2906,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.135,
"after": 3.1556,
"delta": 0.0206,
"percent_delta": 0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2437,
"delta": -0.0043,
"percent_delta": -0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.327,
"after": 0.3299,
"delta": 0.0029,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 0.7529,
"delta": 0.0029,
"percent_delta": 0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1237,
"delta": 0.0037,
"percent_delta": 0.0308,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3217,
"delta": 0.0017,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.212,
"after": 0.2313,
"delta": 0.0193,
"percent_delta": 0.091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.4799,
"delta": 0.0099,
"percent_delta": 0.0211,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4064,
"delta": 0.0034,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.731,
"after": 0.6957,
"delta": -0.0353,
"percent_delta": -0.0483,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 52
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1239,
"predicted_3B": 0.0008,
"predicted_AB": 3.1556,
"predicted_AVG": 0.2388,
"predicted_BB": 0.3307,
"predicted_H": 0.7537,
"predicted_HBP": 0.104,
"predicted_HR": 0.1234,
"predicted_OBP": 0.311,
"predicted_R": 0.2319,
"predicted_RBI": 0.4811,
"predicted_SLG": 0.3959,
"predicted_SO": 0.694
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1239,
"after": 0.1239,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1556,
"after": 3.1556,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2437,
"after": 0.2388,
"delta": -0.0049,
"percent_delta": -0.0201,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3299,
"after": 0.3307,
"delta": 0.0008,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7529,
"after": 0.7537,
"delta": 0.0008,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.104,
"after": 0.104,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1237,
"after": 0.1234,
"delta": -0.0003,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3217,
"after": 0.311,
"delta": -0.0107,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2313,
"after": 0.2319,
"delta": 0.0006,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4799,
"after": 0.4811,
"delta": 0.0012,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4064,
"after": 0.3959,
"delta": -0.0105,
"percent_delta": -0.0258,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6957,
"after": 0.694,
"delta": -0.0017,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3217,
"after": 0.311,
"delta": -0.0107,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.16), rates preserved: AVG=0.239 HR/AB=0.039",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1239,
"after": 0.0,
"delta": -0.1239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1556,
"after": 3.0,
"delta": -0.1556,
"percent_delta": -0.0493,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3307,
"after": 0.0,
"delta": -0.3307,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7537,
"after": 1.0,
"delta": 0.2463,
"percent_delta": 0.3268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.104,
"after": 0.0,
"delta": -0.104,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1234,
"after": 0.0,
"delta": -0.1234,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4811,
"after": 0.0,
"delta": -0.4811,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.694,
"after": 1.0,
"delta": 0.306,
"percent_delta": 0.4409,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.694,
"after": 1.0,
"delta": 0.306,
"percent_delta": 0.4409,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4811,
"after": 0.0,
"delta": -0.4811,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2319,
"after": 0.0,
"delta": -0.2319,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2319,
"after": 0.0,
"delta": -0.2319,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2388,
"after": 0.333,
"delta": 0.0942,
"percent_delta": 0.3945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.333,
"delta": 0.022,
"percent_delta": 0.0707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3959,
"after": 0.333,
"delta": -0.0629,
"percent_delta": -0.1589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2388,
"after": 0.333,
"delta": 0.0942,
"percent_delta": 0.3945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3959,
"after": 0.333,
"delta": -0.0629,
"percent_delta": -0.1589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2388,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.311,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3959,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2388,
"delta": -0.0942,
"percent_delta": -0.2828,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.311,
"delta": -0.022,
"percent_delta": -0.066,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3959,
"delta": 0.0629,
"percent_delta": 0.1888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3959,
"delta": 0.0629,
"percent_delta": 0.1888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2388,
"delta": -0.0942,
"percent_delta": -0.2828,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.096,
"after": 0.0,
"delta": -0.096,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.135,
"after": 4.0,
"delta": 0.865,
"percent_delta": 0.2759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2388,
"delta": -0.0092,
"percent_delta": -0.0371,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.327,
"after": 0.0,
"delta": -0.327,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 1.0,
"delta": 0.25,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.311,
"delta": -0.009,
"percent_delta": -0.0281,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.212,
"after": 0.0,
"delta": -0.212,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.3959,
"delta": -0.0071,
"percent_delta": -0.0176,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.731,
"after": 1.0,
"delta": 0.269,
"percent_delta": 0.368,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.135,
"after": 4.0,
"delta": 0.865,
"percent_delta": 0.2759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.096 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.135 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.327 | - |
| predicted_H | 0.750 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.320 | - |
| predicted_R | 0.212 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.403 | - |
| predicted_SO | 0.731 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.124 | 0.028 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.156 | 0.021 |
| predicted_AVG | 0.244 | -0.004 |
| predicted_BB | 0.330 | 0.003 |
| predicted_H | 0.753 | 0.003 |
| predicted_HBP | 0.104 | - |
| predicted_HR | 0.124 | 0.004 |
| predicted_OBP | 0.322 | 0.002 |
| predicted_R | 0.231 | 0.019 |
| predicted_RBI | 0.480 | 0.010 |
| predicted_SLG | 0.406 | 0.003 |
| predicted_SO | 0.696 | -0.035 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.124 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.156 | 0.000 |
| predicted_AVG | 0.239 | -0.005 |
| predicted_BB | 0.331 | 0.001 |
| predicted_H | 0.754 | 0.001 |
| predicted_HBP | 0.104 | 0.000 |
| predicted_HR | 0.123 | -0.000 |
| predicted_OBP | 0.311 | -0.011 |
| predicted_R | 0.232 | 0.001 |
| predicted_RBI | 0.481 | 0.001 |
| predicted_SLG | 0.396 | -0.011 |
| predicted_SO | 0.694 | -0.002 |
AB rounded to 3 (raw=3.16), rates preserved: AVG=0.239 HR/AB=0.039
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.124 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.156 |
| predicted_AVG | 0.333 | 0.094 |
| predicted_BB | 0.000 | -0.331 |
| predicted_H | 1.000 | 0.246 |
| predicted_HR | 0.000 | -0.123 |
| predicted_OBP | 0.333 | 0.022 |
| predicted_R | 0.000 | -0.232 |
| predicted_RBI | 0.000 | -0.481 |
| predicted_SLG | 0.333 | -0.063 |
| predicted_SO | 1.000 | 0.306 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 1.000 | 0.000 | 1.000 | 2.000 | 1.000 | 2.000 | 2.000 | 0.2000 | 0.2941 | 0.4667 | 0.2000 | 0.0667 | 0.1333 | 0.1333 | 0.1333 |
| last_10 | 0.20 | 10 | - | 30.000 | 10.000 | 3.000 | 0.000 | 2.000 | 6.000 | 3.000 | 3.000 | 5.000 | 0.3333 | 0.4118 | 0.6333 | 0.3333 | 0.0667 | 0.2000 | 0.1000 | 0.1667 |
| season | 0.60 | 52 | - | 163.000 | 35.000 | 5.000 | 0.000 | 4.000 | 25.000 | 11.000 | 17.000 | 38.000 | 0.2147 | 0.3077 | 0.3190 | 0.2147 | 0.0245 | 0.1534 | 0.1043 | 0.2331 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1640 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1850 |
| predicted_AVG | 0.2375 |
| predicted_BB | 0.3340 |
| predicted_H | 0.7570 |
| predicted_HBP | 0.1040 |
| predicted_HR | 0.1290 |
| predicted_OBP | 0.3241 |
| predicted_R | 0.2590 |
| predicted_RBI | 0.4940 |
| predicted_SLG | 0.4112 |
| predicted_SO | 0.6450 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0960 | 0.1640 | 0.1239 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.1350 | 3.1850 | 3.1556 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2375 | 0.2437 | model_form_blend |
| predicted_BB | 0.3270 | 0.3340 | 0.3299 | model_form_blend |
| predicted_H | 0.7500 | 0.7570 | 0.7529 | model_form_blend |
| predicted_HBP | - | 0.1040 | 0.1040 | form_only |
| predicted_HR | 0.1200 | 0.1290 | 0.1237 | model_form_blend |
| predicted_OBP | 0.3200 | 0.3241 | 0.3217 | model_form_blend |
| predicted_R | 0.2120 | 0.2590 | 0.2313 | model_form_blend |
| predicted_RBI | 0.4700 | 0.4940 | 0.4799 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4112 | 0.4064 | model_form_blend |
| predicted_SO | 0.7310 | 0.6450 | 0.6957 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 162 |
| Season rows before report date | 162 |
| Report year | 2026 |
| Profile rows used | 52 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.215 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260614_STL@MIN |
| game_type | full |
| mlbID | 605170 |
| playerID | 605170 |
| playerName | Victor Caratini |
| pos | C |
| started | True |
| startingPosition | C |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-14 |
| sl_k_percent | 19.4 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.287 |
| sl_xwoba | 0.339 |
| sl_xba | 0.251 |
| sl_xslg | 0.397 |
| sl_sweet_spot_percent | 40.2 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 39.4 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 11.6 |
| sl_whiff_percent | 21.2 |
| sl_swing_percent | 42.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.089 | 0.000 | 0.000 | Hitting_2B | 0.090 | 0.000 | -0.090 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.822 | 4.000 | 3.000 | Hitting_AB | 3.171 | 5.000 | 0.829 | -1.000 |
| predicted_AVG | 0.249 | 0.250 | 0.333 | Hitting_AVG | 0.230 | 0.000 | 0.020 | 0.250 |
| predicted_BB | 0.178 | 0.000 | 0.000 | Hitting_BB | 0.180 | 0.000 | -0.180 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.640 | 1.000 | 1.000 | Hitting_H | 0.730 | 0.000 | 0.270 | 1.000 |
| predicted_HR | 0.080 | 1.000 | 0.000 | Hitting_HR | 0.126 | 0.000 | 0.874 | 1.000 |
| predicted_OBP | 0.281 | 0.250 | 0.333 | Hitting_OBP | 0.275 | 0.000 | -0.025 | 0.250 |
| predicted_R | 0.289 | 1.000 | 0.000 | Hitting_R | 0.306 | 0.000 | 0.694 | 1.000 |
| predicted_RBI | 0.410 | 2.000 | 0.000 | Hitting_RBI | 0.640 | 0.000 | 1.360 | 2.000 |
| predicted_SLG | 0.342 | 1.000 | 0.333 | Hitting_SLG | 0.378 | 0.000 | 0.622 | 1.000 |
| predicted_SO | 0.933 | 0.000 | 1.000 | Hitting_SO | 1.117 | 2.000 | -1.117 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_RBI: 0.4100 -> 2.0000 (boost 1.5900, better) |
| Biggest Deboost | predicted_SO: 0.9330 -> 0.0000 (deboost -0.9330, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2490 -> 0.2385 (deboost -0.0105, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_AVG: 0.2385 -> 0.2253 (deboost -0.0132, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_H: 0.6458 -> 1.0000 (boost 0.3542, better) | predicted_RBI: 0.4274 -> 0.0000 (deboost -0.4274, worse) | AB rounded to 3 (raw=2.87), rates preserved: AVG=0.225 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2605 -> 0.0000 (deboost -0.2605, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 2 | 0 | 2 | 0 | predicted_AVG: 0.2253 -> 0.3330 (boost 0.1077, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_RBI: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.3330 -> 0.2253 (deboost -0.1077, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656484",
"player_name": "Tristan Gray",
"position": "SS",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.089,
"predicted_3B": 0.0,
"predicted_AB": 2.822,
"predicted_AVG": 0.249,
"predicted_BB": 0.178,
"predicted_H": 0.64,
"predicted_HR": 0.08,
"predicted_OBP": 0.281,
"predicted_R": 0.289,
"predicted_RBI": 0.41,
"predicted_SLG": 0.342,
"predicted_SO": 0.933
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0898,
"predicted_3B": 0.0008,
"predicted_AB": 2.8666,
"predicted_AVG": 0.2385,
"predicted_BB": 0.1812,
"predicted_H": 0.6452,
"predicted_HBP": 0.016,
"predicted_HR": 0.0732,
"predicted_OBP": 0.276,
"predicted_R": 0.2599,
"predicted_RBI": 0.4263,
"predicted_SLG": 0.3332,
"predicted_SO": 0.9171
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.089,
"after": 0.0898,
"delta": 0.0008,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.822,
"after": 2.8666,
"delta": 0.0446,
"percent_delta": 0.0158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2385,
"delta": -0.0105,
"percent_delta": -0.0422,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.178,
"after": 0.1812,
"delta": 0.0032,
"percent_delta": 0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.6452,
"delta": 0.0052,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0732,
"delta": -0.0068,
"percent_delta": -0.085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.276,
"delta": -0.005,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.289,
"after": 0.2599,
"delta": -0.0291,
"percent_delta": -0.1007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.4263,
"delta": 0.0163,
"percent_delta": 0.0398,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.342,
"after": 0.3332,
"delta": -0.0088,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.933,
"after": 0.9171,
"delta": -0.0159,
"percent_delta": -0.017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2385,
"delta": -0.0105,
"percent_delta": -0.0422,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 45
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0898,
"predicted_3B": 0.0008,
"predicted_AB": 2.8666,
"predicted_AVG": 0.2253,
"predicted_BB": 0.1816,
"predicted_H": 0.6458,
"predicted_HBP": 0.016,
"predicted_HR": 0.073,
"predicted_OBP": 0.2715,
"predicted_R": 0.2605,
"predicted_RBI": 0.4274,
"predicted_SLG": 0.3336,
"predicted_SO": 0.9149
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0898,
"after": 0.0898,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8666,
"after": 2.8666,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2385,
"after": 0.2253,
"delta": -0.0132,
"percent_delta": -0.0553,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1812,
"after": 0.1816,
"delta": 0.0004,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6452,
"after": 0.6458,
"delta": 0.0006,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.016,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0732,
"after": 0.073,
"delta": -0.0002,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.2715,
"delta": -0.0045,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2599,
"after": 0.2605,
"delta": 0.0006,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4263,
"after": 0.4274,
"delta": 0.0011,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3332,
"after": 0.3336,
"delta": 0.0004,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9171,
"after": 0.9149,
"delta": -0.0022,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2385,
"after": 0.2253,
"delta": -0.0132,
"percent_delta": -0.0553,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.87), rates preserved: AVG=0.225 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0898,
"after": 0.0,
"delta": -0.0898,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8666,
"after": 3.0,
"delta": 0.1334,
"percent_delta": 0.0465,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1816,
"after": 0.0,
"delta": -0.1816,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6458,
"after": 1.0,
"delta": 0.3542,
"percent_delta": 0.5485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.073,
"after": 0.0,
"delta": -0.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4274,
"after": 0.0,
"delta": -0.4274,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9149,
"after": 1.0,
"delta": 0.0851,
"percent_delta": 0.093,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6458,
"after": 1.0,
"delta": 0.3542,
"percent_delta": 0.5485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4274,
"after": 0.0,
"delta": -0.4274,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2605,
"after": 0.0,
"delta": -0.2605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2605,
"after": 0.0,
"delta": -0.2605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2253,
"after": 0.333,
"delta": 0.1077,
"percent_delta": 0.478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2715,
"after": 0.333,
"delta": 0.0615,
"percent_delta": 0.2265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3336,
"after": 0.333,
"delta": -0.0006,
"percent_delta": -0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2253,
"after": 0.333,
"delta": 0.1077,
"percent_delta": 0.478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2253,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2715,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3336,
"predicted_SO": 0.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2253,
"delta": -0.1077,
"percent_delta": -0.3234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2715,
"delta": -0.0615,
"percent_delta": -0.1848,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3336,
"delta": 0.0006,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2253,
"delta": -0.1077,
"percent_delta": -0.3234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.089,
"after": 0.0,
"delta": -0.089,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.822,
"after": 4.0,
"delta": 1.178,
"percent_delta": 0.4174,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2253,
"delta": -0.0237,
"percent_delta": -0.0952,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.178,
"after": 0.0,
"delta": -0.178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0,
"delta": 0.36,
"percent_delta": 0.5625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 1.0,
"delta": 0.92,
"percent_delta": 11.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2715,
"delta": -0.0095,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.289,
"after": 1.0,
"delta": 0.711,
"percent_delta": 2.4602,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 2.0,
"delta": 1.59,
"percent_delta": 3.878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.342,
"after": 0.3336,
"delta": -0.0084,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.933,
"after": 0.0,
"delta": -0.933,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.41,
"after": 2.0,
"delta": 1.59,
"percent_delta": 3.878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.933,
"after": 0.0,
"delta": -0.933,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.089 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.822 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.178 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.281 | - |
| predicted_R | 0.289 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.342 | - |
| predicted_SO | 0.933 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.090 | 0.001 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.867 | 0.045 |
| predicted_AVG | 0.238 | -0.011 |
| predicted_BB | 0.181 | 0.003 |
| predicted_H | 0.645 | 0.005 |
| predicted_HBP | 0.016 | - |
| predicted_HR | 0.073 | -0.007 |
| predicted_OBP | 0.276 | -0.005 |
| predicted_R | 0.260 | -0.029 |
| predicted_RBI | 0.426 | 0.016 |
| predicted_SLG | 0.333 | -0.009 |
| predicted_SO | 0.917 | -0.016 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.090 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.867 | 0.000 |
| predicted_AVG | 0.225 | -0.013 |
| predicted_BB | 0.182 | 0.000 |
| predicted_H | 0.646 | 0.001 |
| predicted_HBP | 0.016 | 0.000 |
| predicted_HR | 0.073 | -0.000 |
| predicted_OBP | 0.272 | -0.005 |
| predicted_R | 0.261 | 0.001 |
| predicted_RBI | 0.427 | 0.001 |
| predicted_SLG | 0.334 | 0.000 |
| predicted_SO | 0.915 | -0.002 |
AB rounded to 3 (raw=2.87), rates preserved: AVG=0.225 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.090 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.133 |
| predicted_AVG | 0.333 | 0.108 |
| predicted_BB | 0.000 | -0.182 |
| predicted_H | 1.000 | 0.354 |
| predicted_HR | 0.000 | -0.073 |
| predicted_OBP | 0.333 | 0.061 |
| predicted_R | 0.000 | -0.261 |
| predicted_RBI | 0.000 | -0.427 |
| predicted_SLG | 0.333 | -0.001 |
| predicted_SO | 1.000 | 0.085 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.000 | 2.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 4.000 | 0.1429 | 0.2000 | 0.1429 | 0.1429 | 0.0000 | 0.0714 | 0.0714 | 0.2857 |
| last_10 | 0.20 | 10 | - | 24.000 | 5.000 | 1.000 | 0.000 | 0.000 | 2.000 | 0.000 | 1.000 | 8.000 | 0.2083 | 0.2308 | 0.2500 | 0.2083 | 0.0000 | 0.0833 | 0.0417 | 0.3333 |
| season | 0.60 | 45 | - | 127.000 | 31.000 | 4.000 | 0.000 | 4.000 | 27.000 | 13.000 | 8.000 | 42.000 | 0.2441 | 0.2878 | 0.3701 | 0.2441 | 0.0315 | 0.2126 | 0.0630 | 0.3307 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0910 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.9340 |
| predicted_AVG | 0.2227 |
| predicted_BB | 0.1860 |
| predicted_H | 0.6530 |
| predicted_HBP | 0.0160 |
| predicted_HR | 0.0630 |
| predicted_OBP | 0.2685 |
| predicted_R | 0.2160 |
| predicted_RBI | 0.4510 |
| predicted_SLG | 0.3200 |
| predicted_SO | 0.8930 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0890 | 0.0910 | 0.0898 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.8220 | 2.9340 | 2.8666 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2227 | 0.2385 | model_form_blend |
| predicted_BB | 0.1780 | 0.1860 | 0.1812 | model_form_blend |
| predicted_H | 0.6400 | 0.6530 | 0.6452 | model_form_blend |
| predicted_HBP | - | 0.0160 | 0.0160 | form_only |
| predicted_HR | 0.0800 | 0.0630 | 0.0732 | model_form_blend |
| predicted_OBP | 0.2810 | 0.2685 | 0.2760 | model_form_blend |
| predicted_R | 0.2890 | 0.2160 | 0.2599 | model_form_blend |
| predicted_RBI | 0.4100 | 0.4510 | 0.4263 | model_form_blend |
| predicted_SLG | 0.3420 | 0.3200 | 0.3332 | model_form_blend |
| predicted_SO | 0.9330 | 0.8930 | 0.9171 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 111 |
| Season rows before report date | 111 |
| Report year | 2026 |
| Profile rows used | 45 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.244 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 656484 |
| playerID | 656484 |
| playerName | Tristan Gray |
| pos | 3B |
| started | True |
| startingPosition | SS |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 30.0 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.289 |
| sl_xwoba | 0.292 |
| sl_xba | 0.239 |
| sl_xslg | 0.366 |
| sl_sweet_spot_percent | 41.6 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 41.6 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 14.8 |
| sl_whiff_percent | 34.0 |
| sl_swing_percent | 55.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.176 | 0.000 | 0.000 | Hitting_2B | 0.181 | 1.000 | -0.181 | -1.000 |
| predicted_3B | 0.015 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 3.588 | 4.000 | 4.000 | Hitting_AB | 3.674 | 4.000 | 0.326 | 0.000 |
| predicted_AVG | 0.242 | 0.250 | 0.250 | Hitting_AVG | 0.243 | 0.500 | 0.007 | -0.250 |
| predicted_BB | 0.368 | 0.000 | 0.000 | Hitting_BB | 0.401 | 1.000 | -0.401 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_H | 0.780 | 1.000 | 1.000 | Hitting_H | 0.894 | 2.000 | 0.106 | -1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_OBP | 0.326 | 0.250 | 0.250 | Hitting_OBP | 0.326 | 0.600 | -0.076 | -0.350 |
| predicted_R | 0.485 | 0.000 | 1.000 | Hitting_R | 0.493 | 1.000 | -0.493 | -1.000 |
| predicted_RBI | 0.380 | 0.000 | 0.000 | Hitting_RBI | 0.383 | 1.000 | -0.383 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.194 | 0.000 | -0.194 | 0.000 |
| predicted_SLG | 0.377 | 0.250 | 0.250 | Hitting_SLG | 0.324 | 0.750 | -0.074 | -0.500 |
| predicted_SO | 0.647 | 1.000 | 1.000 | Hitting_SO | 0.639 | 1.000 | 0.361 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.5880 -> 4.0000 (boost 0.4120, better) |
| Biggest Deboost | predicted_R: 0.4850 -> 0.0000 (deboost -0.4850, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3284 -> 0.3049 (deboost -0.0235, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_AB: 3.5556 -> 4.0000 (boost 0.4444, better) | predicted_RBI: 0.3907 -> 0.0000 (deboost -0.3907, worse) | AB rounded to 4 (raw=3.59), rates preserved: AVG=0.227 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5293 -> 1.0000 (boost 0.4707, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2292 -> 0.2500 (boost 0.0208, better) | predicted_SLG: 0.3601 -> 0.2500 (deboost -0.1101, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3601 (boost 0.1101, better) | predicted_AVG: 0.2500 -> 0.2292 (deboost -0.0208, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "807712",
"player_name": "Luke Keaschall",
"position": "2B",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.015,
"predicted_AB": 3.588,
"predicted_AVG": 0.242,
"predicted_BB": 0.368,
"predicted_H": 0.78,
"predicted_HR": 0.08,
"predicted_OBP": 0.326,
"predicted_R": 0.485,
"predicted_RBI": 0.38,
"predicted_SLG": 0.377,
"predicted_SO": 0.647
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1962,
"predicted_3B": 0.0125,
"predicted_AB": 3.5556,
"predicted_AVG": 0.2433,
"predicted_BB": 0.3865,
"predicted_H": 0.8141,
"predicted_HBP": 0.054,
"predicted_HR": 0.0817,
"predicted_OBP": 0.3284,
"predicted_R": 0.528,
"predicted_RBI": 0.3897,
"predicted_SLG": 0.381,
"predicted_SO": 0.6874
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.1962,
"delta": 0.0202,
"percent_delta": 0.1148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0125,
"delta": -0.0025,
"percent_delta": -0.1667,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.588,
"after": 3.5556,
"delta": -0.0324,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2433,
"delta": 0.0013,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.368,
"after": 0.3865,
"delta": 0.0185,
"percent_delta": 0.0503,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.8141,
"delta": 0.0341,
"percent_delta": 0.0437,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0817,
"delta": 0.0017,
"percent_delta": 0.0212,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3284,
"delta": 0.0024,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.485,
"after": 0.528,
"delta": 0.043,
"percent_delta": 0.0887,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.3897,
"delta": 0.0097,
"percent_delta": 0.0255,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.377,
"after": 0.381,
"delta": 0.004,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.647,
"after": 0.6874,
"delta": 0.0404,
"percent_delta": 0.0624,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1962,
"predicted_3B": 0.0125,
"predicted_AB": 3.5556,
"predicted_AVG": 0.2292,
"predicted_BB": 0.3874,
"predicted_H": 0.8149,
"predicted_HBP": 0.054,
"predicted_HR": 0.0815,
"predicted_OBP": 0.3049,
"predicted_R": 0.5293,
"predicted_RBI": 0.3907,
"predicted_SLG": 0.3601,
"predicted_SO": 0.6858
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1962,
"after": 0.1962,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0125,
"after": 0.0125,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5556,
"after": 3.5556,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2433,
"after": 0.2292,
"delta": -0.0141,
"percent_delta": -0.058,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3865,
"after": 0.3874,
"delta": 0.0009,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8141,
"after": 0.8149,
"delta": 0.0008,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.054,
"after": 0.054,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0817,
"after": 0.0815,
"delta": -0.0002,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3284,
"after": 0.3049,
"delta": -0.0235,
"percent_delta": -0.0716,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.528,
"after": 0.5293,
"delta": 0.0013,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3897,
"after": 0.3907,
"delta": 0.001,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.381,
"after": 0.3601,
"delta": -0.0209,
"percent_delta": -0.0549,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6874,
"after": 0.6858,
"delta": -0.0016,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3284,
"after": 0.3049,
"delta": -0.0235,
"percent_delta": -0.0716,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.59), rates preserved: AVG=0.227 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1962,
"after": 0.0,
"delta": -0.1962,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0125,
"after": 0.0,
"delta": -0.0125,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5556,
"after": 4.0,
"delta": 0.4444,
"percent_delta": 0.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3874,
"after": 0.0,
"delta": -0.3874,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8149,
"after": 1.0,
"delta": 0.1851,
"percent_delta": 0.2271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.054,
"after": 0.0,
"delta": -0.054,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0815,
"after": 0.0,
"delta": -0.0815,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3907,
"after": 0.0,
"delta": -0.3907,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6858,
"after": 1.0,
"delta": 0.3142,
"percent_delta": 0.4582,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5556,
"after": 4.0,
"delta": 0.4444,
"percent_delta": 0.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3907,
"after": 0.0,
"delta": -0.3907,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5293,
"after": 1.0,
"delta": 0.4707,
"percent_delta": 0.8893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5293,
"after": 1.0,
"delta": 0.4707,
"percent_delta": 0.8893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2292,
"after": 0.25,
"delta": 0.0208,
"percent_delta": 0.0908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3049,
"after": 0.25,
"delta": -0.0549,
"percent_delta": -0.1801,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3601,
"after": 0.25,
"delta": -0.1101,
"percent_delta": -0.3057,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2292,
"after": 0.25,
"delta": 0.0208,
"percent_delta": 0.0908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3601,
"after": 0.25,
"delta": -0.1101,
"percent_delta": -0.3057,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2292,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3049,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3601,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2292,
"delta": -0.0208,
"percent_delta": -0.0832,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3049,
"delta": 0.0549,
"percent_delta": 0.2197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3601,
"delta": 0.1101,
"percent_delta": 0.4406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3601,
"delta": 0.1101,
"percent_delta": 0.4406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2292,
"delta": -0.0208,
"percent_delta": -0.0832,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0,
"delta": -0.015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.588,
"after": 4.0,
"delta": 0.412,
"percent_delta": 0.1148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2292,
"delta": -0.0128,
"percent_delta": -0.0529,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.368,
"after": 0.0,
"delta": -0.368,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 1.0,
"delta": 0.22,
"percent_delta": 0.2821,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3049,
"delta": -0.0211,
"percent_delta": -0.0647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.485,
"after": 0.0,
"delta": -0.485,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.377,
"after": 0.3601,
"delta": -0.0169,
"percent_delta": -0.0448,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.647,
"after": 1.0,
"delta": 0.353,
"percent_delta": 0.5456,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.588,
"after": 4.0,
"delta": 0.412,
"percent_delta": 0.1148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.485,
"after": 0.0,
"delta": -0.485,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | - |
| predicted_3B | 0.015 | - |
| predicted_AB | 3.588 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.368 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.485 | - |
| predicted_RBI | 0.380 | - |
| predicted_SLG | 0.377 | - |
| predicted_SO | 0.647 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.196 | 0.020 |
| predicted_3B | 0.013 | -0.002 |
| predicted_AB | 3.556 | -0.032 |
| predicted_AVG | 0.243 | 0.001 |
| predicted_BB | 0.387 | 0.019 |
| predicted_H | 0.814 | 0.034 |
| predicted_HBP | 0.054 | - |
| predicted_HR | 0.082 | 0.002 |
| predicted_OBP | 0.328 | 0.002 |
| predicted_R | 0.528 | 0.043 |
| predicted_RBI | 0.390 | 0.010 |
| predicted_SLG | 0.381 | 0.004 |
| predicted_SO | 0.687 | 0.040 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.196 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.556 | 0.000 |
| predicted_AVG | 0.229 | -0.014 |
| predicted_BB | 0.387 | 0.001 |
| predicted_H | 0.815 | 0.001 |
| predicted_HBP | 0.054 | 0.000 |
| predicted_HR | 0.082 | -0.000 |
| predicted_OBP | 0.305 | -0.024 |
| predicted_R | 0.529 | 0.001 |
| predicted_RBI | 0.391 | 0.001 |
| predicted_SLG | 0.360 | -0.021 |
| predicted_SO | 0.686 | -0.002 |
AB rounded to 4 (raw=3.59), rates preserved: AVG=0.227 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.196 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 4.000 | 0.444 |
| predicted_AVG | 0.250 | 0.021 |
| predicted_BB | 0.000 | -0.387 |
| predicted_H | 1.000 | 0.185 |
| predicted_HR | 0.000 | -0.082 |
| predicted_OBP | 0.250 | -0.055 |
| predicted_R | 1.000 | 0.471 |
| predicted_RBI | 0.000 | -0.391 |
| predicted_SLG | 0.250 | -0.110 |
| predicted_SO | 1.000 | 0.314 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 2.000 | 0.000 | 1.000 | 3.000 | 5.000 | 3.000 | 5.000 | 0.2353 | 0.3500 | 0.5294 | 0.2353 | 0.0588 | 0.1765 | 0.1765 | 0.2941 |
| last_10 | 0.20 | 10 | - | 32.000 | 8.000 | 2.000 | 0.000 | 1.000 | 3.000 | 5.000 | 4.000 | 7.000 | 0.2500 | 0.3514 | 0.4062 | 0.2500 | 0.0312 | 0.0938 | 0.1250 | 0.2188 |
| season | 0.60 | 68 | - | 244.000 | 60.000 | 12.000 | 1.000 | 2.000 | 24.000 | 33.000 | 25.000 | 44.000 | 0.2459 | 0.3225 | 0.3279 | 0.2459 | 0.0082 | 0.0984 | 0.1025 | 0.1803 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2240 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.5110 |
| predicted_AVG | 0.2452 |
| predicted_BB | 0.4120 |
| predicted_H | 0.8610 |
| predicted_HBP | 0.0540 |
| predicted_HR | 0.0840 |
| predicted_OBP | 0.3318 |
| predicted_R | 0.5870 |
| predicted_RBI | 0.4030 |
| predicted_SLG | 0.3864 |
| predicted_SO | 0.7430 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.2240 | 0.1962 | model_form_blend |
| predicted_3B | 0.0150 | 0.0090 | 0.0125 | model_form_blend |
| predicted_AB | 3.5880 | 3.5110 | 3.5556 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2452 | 0.2433 | model_form_blend |
| predicted_BB | 0.3680 | 0.4120 | 0.3865 | model_form_blend |
| predicted_H | 0.7800 | 0.8610 | 0.8141 | model_form_blend |
| predicted_HBP | - | 0.0540 | 0.0540 | form_only |
| predicted_HR | 0.0800 | 0.0840 | 0.0817 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3318 | 0.3284 | model_form_blend |
| predicted_R | 0.4850 | 0.5870 | 0.5280 | model_form_blend |
| predicted_RBI | 0.3800 | 0.4030 | 0.3897 | model_form_blend |
| predicted_SLG | 0.3770 | 0.3864 | 0.3810 | model_form_blend |
| predicted_SO | 0.6470 | 0.7430 | 0.6874 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 227 |
| Season rows before report date | 227 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.246 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 807712 |
| playerID | 807712 |
| playerName | Luke Keaschall |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 15.9 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.296 |
| sl_xwoba | 0.289 |
| sl_xba | 0.228 |
| sl_xslg | 0.335 |
| sl_sweet_spot_percent | 36.0 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 29.6 |
| sl_exit_velocity_avg | 84.8 |
| sl_launch_angle_avg | 17.0 |
| sl_whiff_percent | 16.3 |
| sl_swing_percent | 41.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 1.067 | 0.000 | 1.933 | 3.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.933 | 3.000 | -0.933 | -2.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 4.400 | 6.000 | -0.400 | -2.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.427 | 6.000 | 0.573 | 0.000 |
| predicted_SO | 7.000 | 7.000 | 7.000 | Pitching_SO | 6.133 | 8.000 | 0.867 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_SO: 5.0000 -> 7.0000 (boost 2.0000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 1 | 1 | 0 | 1 | 0 | predicted_SO: 5.0000 -> 7.0000 (boost 2.0000, better) | - | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "657746",
"player_name": "Joe Ryan",
"position": "Starter",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_SO": 5.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_SO": 7.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 7.0,
"delta": 2.0,
"percent_delta": 0.4,
"direction": "boost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SO",
"before": 5.0,
"after": 7.0,
"delta": 2.0,
"percent_delta": 0.4,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_R": 1.0,
"predicted_SO": 7.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 7.0,
"delta": 2.0,
"percent_delta": 0.4,
"direction": "boost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SO",
"before": 5.0,
"after": 7.0,
"delta": 2.0,
"percent_delta": 0.4,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 5.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 3.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 4.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 6.000 | 0.000 |
| predicted_SO | 7.000 | 2.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 31.200 | 11.000 | 29.000 | 2.000 | 40.000 | 5.000 | 3.1263 | 0.9789 | 0.3474 | 0.9158 | 0.0632 | 1.2632 | 0.1579 |
| last_10 | 0.35 | 10 | 55.000 | 19.000 | 48.000 | 10.000 | 64.000 | 7.000 | 3.1091 | 1.0545 | 0.3454 | 0.8727 | 0.1818 | 1.1636 | 0.1273 |
| season | 0.20 | 15 | 82.100 | 29.000 | 66.000 | 16.000 | 92.000 | 8.000 | 3.1700 | 0.9960 | 0.3522 | 0.8016 | 0.1943 | 1.1174 | 0.0972 |
| Metric | Value |
|---|---|
| predicted_BB | 1.1030 |
| predicted_ER | 2.2530 |
| predicted_ERA | 3.4738 |
| predicted_H | 5.2650 |
| predicted_HR | 0.8040 |
| predicted_IP | 6.0000 |
| predicted_SO | 6.6190 |
| predicted_WHIP | 1.0909 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 1.1030 | 1.9673 | model_form_blend |
| predicted_ER | 1.0000 | 2.2530 | 1.6821 | model_form_blend |
| predicted_ERA | - | 3.4738 | 3.4738 | form_only |
| predicted_H | 4.0000 | 5.2650 | 4.6886 | model_form_blend |
| predicted_HR | 0.0000 | 0.8040 | 0.4377 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 5.0000 | 6.6190 | 5.8813 | model_form_blend |
| predicted_WHIP | - | 1.0909 | 1.0909 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 15 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 6.0 |
| H | 4 |
| R | 1 |
| ER | 1 |
| BB | 3 |
| SO | 7 |
| HR | 0 |
| BF | 25 |
| Pitches | 102 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 24 |
| Pitching_ER | 3 |
| Pitching_ERA | 3.17 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 3 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 102 |
| Pitching_R | 3 |
| Pitching_SO | 8 |
| Pitching_Strikes | 67 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_STL@MIN |
| game_type | full |
| mlbID | 657746 |
| playerID | 657746 |
| playerName | Joe Ryan |
| pos | P |
| started | True |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-12 |
| sl_k_percent | 27.7 |
| sl_bb_percent | 4.8 |
| sl_woba | 0.268 |
| sl_xwoba | 0.281 |
| sl_sweet_spot_percent | 33.8 |
| sl_barrel_batted_rate | 10.5 |
| sl_hard_hit_percent | 43.4 |
| sl_whiff_percent | 25.2 |
| sl_swing_percent | 50.0 |
| sl_avg_best_speed | 78.898495596 |
| sl_avg_hyper_speed | 94.523390737 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.412 | 1.000 | -0.412 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.441 | 0.000 | -0.441 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.735 | 1.000 | 1.265 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.656 | 0.100 | 0.344 | 0.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.794 | 0.000 | -0.794 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "607455",
"player_name": "Anthony Banda",
"position": "Middle Reliever",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 0.000 | 4.000 | 2.000 | 3.000 | 0.000 | 0.0000 | 1.5000 | 0.0000 | 1.0000 | 0.5000 | 0.7500 | 0.0000 |
| last_10 | 0.35 | 10 | 8.100 | 0.000 | 6.000 | 6.000 | 8.000 | 0.000 | 0.0000 | 1.4400 | 0.0000 | 0.7200 | 0.7200 | 0.9600 | 0.0000 |
| season | 0.20 | 34 | 30.000 | 15.000 | 25.000 | 14.000 | 27.000 | 2.000 | 4.5000 | 1.3000 | 0.5000 | 0.8333 | 0.4667 | 0.9000 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4070 |
| predicted_ER | 0.2420 |
| predicted_ERA | 2.5464 |
| predicted_H | 0.7840 |
| predicted_HR | 0.0630 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7630 |
| predicted_WHIP | 1.3925 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4070 | 0.1861 | model_form_blend |
| predicted_ER | 0.0000 | 0.2420 | 0.1106 | model_form_blend |
| predicted_ERA | - | 2.5464 | 2.5464 | form_only |
| predicted_H | 2.0000 | 0.7840 | 1.4440 | model_form_blend |
| predicted_HR | 0.0000 | 0.0630 | 0.0288 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7630 | 0.8916 | model_form_blend |
| predicted_WHIP | - | 1.3925 | 1.3925 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 34 |
| Season rows before report date | 34 |
| Report year | 2026 |
| Profile rows used | 34 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 2 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.50 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260614_STL@MIN |
| game_type | full |
| mlbID | 607455 |
| playerID | 607455 |
| playerName | Anthony Banda |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-14 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.32 |
| sl_xwoba | 0.317 |
| sl_sweet_spot_percent | 28.7 |
| sl_barrel_batted_rate | 5.8 |
| sl_hard_hit_percent | 37.9 |
| sl_whiff_percent | 26.3 |
| sl_swing_percent | 45.3 |
| sl_avg_best_speed | 80.581873095 |
| sl_avg_hyper_speed | 94.030973333 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.583 | 0.000 | -0.583 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.000 | 0.000 | -1.000 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.417 | 0.000 | -1.417 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.292 | 1.000 | -0.292 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.667 | 3.000 | -1.667 | -3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "701519",
"player_name": "Travis Adams",
"position": "Middle Reliever",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.200 | 4.000 | 7.000 | 2.000 | 8.000 | 2.000 | 5.4000 | 1.3500 | 0.6000 | 1.0500 | 0.3000 | 1.2000 | 0.3000 |
| last_10 | 0.35 | 10 | 13.000 | 9.000 | 11.000 | 5.000 | 15.000 | 4.000 | 6.2308 | 1.2308 | 0.6923 | 0.8461 | 0.3846 | 1.1539 | 0.3077 |
| season | 0.20 | 12 | 16.200 | 12.000 | 17.000 | 7.000 | 20.000 | 4.000 | 6.4800 | 1.4400 | 0.7200 | 1.0200 | 0.4200 | 1.2000 | 0.2400 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4070 |
| predicted_ER | 0.6380 |
| predicted_ERA | 5.0653 |
| predicted_H | 1.1030 |
| predicted_HR | 0.2310 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1730 |
| predicted_WHIP | 1.3329 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4070 | 0.1611 | model_form_blend |
| predicted_ER | 0.0000 | 0.6380 | 0.2525 | model_form_blend |
| predicted_ERA | - | 5.0653 | 5.0653 | form_only |
| predicted_H | 0.0000 | 1.1030 | 0.4365 | model_form_blend |
| predicted_HR | 0.0000 | 0.2310 | 0.0914 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1730 | 0.4643 | model_form_blend |
| predicted_WHIP | - | 1.3329 | 1.3329 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 12 |
| Season rows before report date | 12 |
| Report year | 2026 |
| Profile rows used | 12 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 21 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 6.48 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 701519 |
| playerID | 701519 |
| playerName | Travis Adams |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-16 |
| sl_k_percent | 27.0 |
| sl_bb_percent | 9.5 |
| sl_woba | 0.349 |
| sl_xwoba | 0.33 |
| sl_sweet_spot_percent | 40.4 |
| sl_barrel_batted_rate | 10.6 |
| sl_hard_hit_percent | 31.9 |
| sl_whiff_percent | 29.7 |
| sl_swing_percent | 48.9 |
| sl_avg_best_speed | 73.788357391 |
| sl_avg_hyper_speed | 93.978330444 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.350 | 0.000 | 0.650 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.150 | 0.000 | -0.150 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.550 | 0.000 | -0.550 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.720 | 1.100 | 0.280 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.050 | 1.000 | -1.050 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "672782",
"player_name": "Yoendrys Gómez",
"position": "Middle Reliever",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 2.000 | 5.000 | 2.000 | 3.000 | 0.000 | 4.1538 | 1.6154 | 0.4615 | 1.1539 | 0.4615 | 0.6923 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 2.000 | 7.000 | 4.000 | 11.000 | 0.000 | 2.0000 | 1.2222 | 0.2222 | 0.7778 | 0.4444 | 1.2222 | 0.0000 |
| season | 0.20 | 29 | 35.000 | 15.000 | 30.000 | 17.000 | 34.000 | 5.000 | 3.8571 | 1.3429 | 0.4286 | 0.8571 | 0.4857 | 0.9714 | 0.1429 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4360 |
| predicted_ER | 0.4420 |
| predicted_ERA | 3.8292 |
| predicted_H | 1.0050 |
| predicted_HR | 0.0810 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9720 |
| predicted_WHIP | 1.3873 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4360 | 0.7331 | model_form_blend |
| predicted_ER | 0.0000 | 0.4420 | 0.2092 | model_form_blend |
| predicted_ERA | - | 3.8292 | 3.8292 | form_only |
| predicted_H | 0.0000 | 1.0050 | 0.4756 | model_form_blend |
| predicted_HR | 0.0000 | 0.0810 | 0.0383 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9720 | 0.9867 | model_form_blend |
| predicted_WHIP | - | 1.3873 | 1.3873 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 20 |
| Season rows before report date | 20 |
| Report year | 2026 |
| Profile rows used | 29 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.86 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260615_MIN@TEX |
| game_type | full |
| mlbID | 672782 |
| playerID | 672782 |
| playerName | Yoendrys Gómez |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-15 |
| sl_k_percent | 22.1 |
| sl_bb_percent | 11.0 |
| sl_woba | 0.315 |
| sl_xwoba | 0.356 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 43.0 |
| sl_whiff_percent | 25.2 |
| sl_swing_percent | 46.9 |
| sl_avg_best_speed | 78.497553913 |
| sl_avg_hyper_speed | 94.436798571 |
| Field | Value |
|---|---|
| Pitcher | Jack Leiter |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.2171 |
| ESPN Rank | 586 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1361 |
| Avg Velo | 92.1599 |
| Avg Spin | 2335.5300 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 2 |
| Pre H | 5 |
| Pre BB | 1 |
| Pre SO | 4 |
| Season ERA | 4.9737 |
| Season WHIP | 1.4079 |
| Role Avg IP | 5.4290 |
| Recent Avg IP | 5.2670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"opponent": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"edges": {
"quality_edge": 0.01,
"offense_edge": -0.1011,
"opponent_offense_edge": 0.0685,
"defense_strength": 0.1056,
"opponent_defense_weakness": 0.1054,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0008,
"run_prevention": 0.9999,
"strikeout": 0.9948
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "683004",
"profile": {
"available": true,
"pitcher_id": "683004",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 240.0,
"k_percent": 23.6,
"bb_percent": 9.9,
"woba": 0.332,
"xwoba": 0.333,
"sweet_spot_percent": 37.0,
"barrel_batted_rate": 10.0,
"hard_hit_percent": 40.2,
"avg_best_speed": 76.3779,
"avg_hyper_speed": 94.0797,
"whiff_percent": 25.5,
"swing_percent": 47.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4301,
"command_and_miss": 0.0257,
"regression_edge": -0.0286,
"xwoba_edge": -0.5143,
"barrel_edge": -0.6,
"hard_hit_edge": -0.2714,
"whiff_edge": -0.0286,
"bb_edge": -0.175,
"pitch_design_score": 0.1361
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "683004",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.15993154511234,
"release_spin_rate": 2335.530048343372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.15993154511234,
"release_spin_rate": 2335.530048343372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.1599,
"release_spin_rate": 2335.53,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1361,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9724,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.2171,
"sample_weight": 0.96,
"run_prevention_factor": 1.0185,
"strikeout_factor": 1.0049,
"walk_factor": 1.0134,
"homer_factor": 1.0713,
"woba_minus_xwoba": -0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683004",
"espn_id": 4622181,
"player_name": "Jack Leiter",
"team": "TEX",
"role": "pitcher",
"espn_rank": 586,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 586,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 2.0,
"qs_rank": 109,
"era_value": 4.8552,
"era_rank": 57.0,
"w_value": 3.0,
"w_rank": 107,
"l_value": 6.0,
"l_rank": 17,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 76.0,
"ip_rank": 54,
"h_value": 73.0,
"h_rank": 44,
"er_value": 41.0,
"er_rank": 20,
"hr_value": 12.0,
"hr_rank": 30,
"bb_value": 33.0,
"bb_rank": 13,
"k_value": 79.0,
"k_rank": 34,
"k_per_9_value": 9.355263,
"k_per_9_rank": 17,
"whip_value": 1.3947,
"whip_rank": 57.0,
"war_value": -0.27,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0178,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 1.0178,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0129,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0684,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0047,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 55.2,
"ER": 31,
"H": 53,
"BB": 24,
"SO": 55,
"HR": 9,
"ERA": 5.0119760479041915,
"WHIP": 1.3832335329341316,
"K9": 8.892215568862275,
"HR9": 1.4550898203592812,
"games_pitched": 10,
"quality_starts": 1,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "683004",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.15993154511234,
"release_spin_rate": 2335.530048343372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.15993154511234,
"release_spin_rate": 2335.530048343372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.1599,
"release_spin_rate": 2335.53,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1361,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9724,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "683004",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 26.1,
"ER": 18.0,
"R": 19.0,
"H": 28.0,
"BB": 12.0,
"SO": 24.0,
"HR": 4.0,
"BF": 121.0,
"Pitches": 474.0
},
"per_game": {
"IP": 5.1,
"ER": 3.6,
"R": 3.8,
"H": 5.6,
"BB": 2.4,
"SO": 4.8,
"HR": 0.8,
"BF": 24.2,
"Pitches": 94.8
},
"rates": {
"ERA": 6.1519,
"WHIP": 1.519,
"ER_per_IP": 0.68354,
"H_per_IP": 1.06329,
"BB_per_IP": 0.4557,
"SO_per_IP": 0.91139,
"HR_per_IP": 0.1519
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.2,
"ER": 31.0,
"R": 33.0,
"H": 53.0,
"BB": 24.0,
"SO": 55.0,
"HR": 9.0,
"BF": 245.0,
"Pitches": 946.0
},
"per_game": {
"IP": 5.2,
"ER": 3.1,
"R": 3.3,
"H": 5.3,
"BB": 2.4,
"SO": 5.5,
"HR": 0.9,
"BF": 24.5,
"Pitches": 94.6
},
"rates": {
"ERA": 5.012,
"WHIP": 1.3832,
"ER_per_IP": 0.55689,
"H_per_IP": 0.9521,
"BB_per_IP": 0.43114,
"SO_per_IP": 0.98802,
"HR_per_IP": 0.16168
}
},
"season": {
"games": 14,
"totals": {
"IP": 76.0,
"ER": 42.0,
"R": 44.0,
"H": 74.0,
"BB": 33.0,
"SO": 79.0,
"HR": 12.0,
"BF": 335.0,
"Pitches": 1321.0
},
"per_game": {
"IP": 5.1,
"ER": 3.0,
"R": 3.1429,
"H": 5.2857,
"BB": 2.3571,
"SO": 5.6429,
"HR": 0.8571,
"BF": 23.9286,
"Pitches": 94.3571
},
"rates": {
"ERA": 4.9737,
"WHIP": 1.4079,
"ER_per_IP": 0.55263,
"H_per_IP": 0.97368,
"BB_per_IP": 0.43421,
"SO_per_IP": 1.03947,
"HR_per_IP": 0.15789
}
}
},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 3.162,
"predicted_H": 5.408,
"predicted_BB": 2.286,
"predicted_SO": 5.186,
"predicted_HR": 0.833,
"predicted_ERA": 5.2517,
"predicted_WHIP": 1.4198
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.1,
"form": 5.1,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 3.162,
"final": 2.6261,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 5.408,
"final": 5.2198,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.286,
"final": 1.6929,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 5.186,
"final": 4.639,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.833,
"final": 0.91,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.2517,
"final": 5.2517,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4198,
"final": 1.4198,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jacob Latz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3734 |
| ESPN Rank | 50 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 0.8100 |
| Season WHIP | 0.4800 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"opponent": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"edges": {
"quality_edge": 0.01,
"offense_edge": -0.1011,
"opponent_offense_edge": 0.0685,
"defense_strength": 0.1056,
"opponent_defense_weakness": 0.1054,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0008,
"run_prevention": 0.9999,
"strikeout": 0.9948
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656641",
"profile": {
"available": true,
"pitcher_id": "656641",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 84.0,
"k_percent": 29.2,
"bb_percent": 5.8,
"woba": 0.173,
"xwoba": 0.236,
"sweet_spot_percent": 20.5,
"barrel_batted_rate": 6.4,
"hard_hit_percent": 42.3,
"avg_best_speed": 79.1395,
"avg_hyper_speed": 94.0419,
"whiff_percent": 29.3,
"swing_percent": 48.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.4407,
"command_and_miss": 0.7807,
"regression_edge": -1.8,
"xwoba_edge": 2.2571,
"barrel_edge": 0.2,
"hard_hit_edge": -0.5714,
"whiff_edge": 0.5143,
"bb_edge": 0.85,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656641",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3734,
"sample_weight": 0.45,
"run_prevention_factor": 0.9683,
"strikeout_factor": 1.0265,
"walk_factor": 0.9694,
"homer_factor": 0.9726,
"woba_minus_xwoba": -0.063,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656641",
"espn_id": 3210625,
"player_name": "Jacob Latz",
"team": "TEX",
"role": "pitcher",
"espn_rank": 50,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 50,
"gp_value": 26.0,
"gp_rank": 116,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.62,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 12.0,
"sv_rank": 11,
"hld_value": 2.0,
"hld_rank": 165,
"ip_value": 33.1,
"ip_rank": 204,
"h_value": 13.0,
"h_rank": 439,
"er_value": 6.0,
"er_rank": 464,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 35.0,
"k_rank": 199,
"k_per_9_value": 9.45,
"k_per_9_rank": 26,
"whip_value": 0.6,
"whip_rank": null,
"war_value": 1.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9857,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9857,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9862,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9877,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0119,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 12.2,
"ER": 1,
"H": 5,
"BB": 2,
"SO": 18,
"HR": 1,
"ERA": 0.7105263157894737,
"WHIP": 0.5526315789473685,
"K9": 12.789473684210527,
"HR9": 0.7105263157894737,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "656641",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.619,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5697,
"prior_weight": 0.4303
},
"role": "pitcher",
"player_id": "656641",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 7.1,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 2.0,
"SO": 11.0,
"HR": 0.0,
"BF": 25.0,
"Pitches": 107.0
},
"per_game": {
"IP": 1.1,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.4,
"SO": 2.2,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.4
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5455,
"ER_per_IP": 0.0,
"H_per_IP": 0.27273,
"BB_per_IP": 0.27273,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 14.2,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 2.0,
"SO": 19.0,
"HR": 1.0,
"BF": 50.0,
"Pitches": 197.0
},
"per_game": {
"IP": 1.1,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.2,
"SO": 1.9,
"HR": 0.1,
"BF": 5.0,
"Pitches": 19.7
},
"rates": {
"ERA": 0.6136,
"WHIP": 0.4773,
"ER_per_IP": 0.06818,
"H_per_IP": 0.34091,
"BB_per_IP": 0.13636,
"SO_per_IP": 1.29545,
"HR_per_IP": 0.06818
}
},
"season": {
"games": 25,
"totals": {
"IP": 33.1,
"ER": 3.0,
"R": 3.0,
"H": 10.0,
"BB": 6.0,
"SO": 35.0,
"HR": 2.0,
"BF": 116.0,
"Pitches": 487.0
},
"per_game": {
"IP": 1.1,
"ER": 0.12,
"R": 0.12,
"H": 0.4,
"BB": 0.24,
"SO": 1.4,
"HR": 0.08,
"BF": 4.64,
"Pitches": 19.48
},
"rates": {
"ERA": 0.81,
"WHIP": 0.48,
"ER_per_IP": 0.09,
"H_per_IP": 0.3,
"BB_per_IP": 0.18,
"SO_per_IP": 1.05,
"HR_per_IP": 0.06
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.319,
"predicted_H": 0.788,
"predicted_BB": 0.365,
"predicted_SO": 1.555,
"predicted_HR": 0.111,
"predicted_ERA": 2.1545,
"predicted_WHIP": 0.8651
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5318,
"form_weight": 0.4682,
"form_reliability": 0.5697,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.619,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5697,
"prior_weight": 0.4303
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.319,
"final": 0.6812,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.788,
"final": 1.4325,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.365,
"final": 0.1709,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.555,
"final": 0.728,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.111,
"final": 0.5838,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.1545,
"final": 2.1545,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.8651,
"final": 0.8651,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jakob Junis |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1268 |
| ESPN Rank | 94 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2025 |
| Avg Velo | 86.1137 |
| Avg Spin | 2057.1763 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 1.8409 |
| Season WHIP | 0.8182 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"opponent": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"edges": {
"quality_edge": 0.01,
"offense_edge": -0.1011,
"opponent_offense_edge": 0.0685,
"defense_strength": 0.1056,
"opponent_defense_weakness": 0.1054,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0008,
"run_prevention": 0.9999,
"strikeout": 0.9948
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "596001",
"profile": {
"available": true,
"pitcher_id": "596001",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 86.0,
"k_percent": 18.6,
"bb_percent": 4.4,
"woba": 0.213,
"xwoba": 0.289,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 3.6,
"hard_hit_percent": 31.0,
"avg_best_speed": 75.264,
"avg_hyper_speed": 92.6916,
"whiff_percent": 18.9,
"swing_percent": 47.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.052,
"command_and_miss": -0.3507,
"regression_edge": -2.0,
"xwoba_edge": 0.7429,
"barrel_edge": 0.8222,
"hard_hit_edge": 1.0429,
"whiff_edge": -0.9714,
"bb_edge": 1.2,
"pitch_design_score": -0.2025
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "596001",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 10,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 10,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 10,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.1137,
"release_spin_rate": 2057.1763,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2025,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4461,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.1268,
"sample_weight": 0.45,
"run_prevention_factor": 0.9892,
"strikeout_factor": 0.9725,
"walk_factor": 0.9568,
"homer_factor": 0.9416,
"woba_minus_xwoba": -0.076,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "596001",
"espn_id": 36056,
"player_name": "Jakob Junis",
"team": "TEX",
"role": "pitcher",
"espn_rank": 94,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 94,
"gp_value": 25.0,
"gp_rank": 125,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.8409,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 4.0,
"sv_rank": 30,
"hld_value": 7.0,
"hld_rank": 54,
"ip_value": 29.1,
"ip_rank": 266,
"h_value": 19.0,
"h_rank": 352,
"er_value": 6.0,
"er_rank": 464,
"hr_value": 0.0,
"hr_rank": 578,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 21.0,
"k_rank": 345,
"k_per_9_value": 6.443182,
"k_per_9_rank": 35,
"whip_value": 0.8181,
"whip_rank": null,
"war_value": 0.98,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9951,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9951,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9806,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9737,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9876,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 13.0,
"ER": 3,
"H": 11,
"BB": 0,
"SO": 14,
"HR": 0,
"ERA": 2.076923076923077,
"WHIP": 0.8461538461538463,
"K9": 9.692307692307693,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": true,
"pitcher_id": "596001",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 10,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 10,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 10,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.1137,
"release_spin_rate": 2057.1763,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2025,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4461,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.825,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5381,
"prior_weight": 0.4619
},
"role": "pitcher",
"player_id": "596001",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 0.0,
"SO": 8.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.4,
"BB": 0.0,
"SO": 1.6,
"HR": 0.0,
"BF": 4.6,
"Pitches": 16.0
},
"rates": {
"ERA": 3.375,
"WHIP": 1.3125,
"ER_per_IP": 0.375,
"H_per_IP": 1.3125,
"BB_per_IP": 0.0,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.0,
"ER": 3.0,
"R": 3.0,
"H": 11.0,
"BB": 0.0,
"SO": 14.0,
"HR": 0.0,
"BF": 50.0,
"Pitches": 177.0
},
"per_game": {
"IP": 1.1,
"ER": 0.3,
"R": 0.3,
"H": 1.1,
"BB": 0.0,
"SO": 1.4,
"HR": 0.0,
"BF": 5.0,
"Pitches": 17.7
},
"rates": {
"ERA": 2.0769,
"WHIP": 0.8462,
"ER_per_IP": 0.23077,
"H_per_IP": 0.84615,
"BB_per_IP": 0.0,
"SO_per_IP": 1.07692,
"HR_per_IP": 0.0
}
},
"season": {
"games": 25,
"totals": {
"IP": 29.1,
"ER": 6.0,
"R": 6.0,
"H": 19.0,
"BB": 5.0,
"SO": 21.0,
"HR": 0.0,
"BF": 113.0,
"Pitches": 397.0
},
"per_game": {
"IP": 1.1,
"ER": 0.24,
"R": 0.24,
"H": 0.76,
"BB": 0.2,
"SO": 0.84,
"HR": 0.0,
"BF": 4.52,
"Pitches": 15.88
},
"rates": {
"ERA": 1.8409,
"WHIP": 0.8182,
"ER_per_IP": 0.20455,
"H_per_IP": 0.64773,
"BB_per_IP": 0.17045,
"SO_per_IP": 0.71591,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.426,
"predicted_H": 1.095,
"predicted_BB": 0.204,
"predicted_SO": 1.182,
"predicted_HR": 0.074,
"predicted_ERA": 3.4889,
"predicted_WHIP": 1.1829
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5452,
"form_weight": 0.4548,
"form_reliability": 0.5381,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.825,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5381,
"prior_weight": 0.4619
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.426,
"final": 0.1938,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.095,
"final": 0.4981,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.204,
"final": 0.6379,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.182,
"final": 0.5376,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.074,
"final": 0.0337,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4889,
"final": 3.4889,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1829,
"final": 1.1829,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Cole Winn |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0802 |
| ESPN Rank | 626 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0324 |
| Avg Velo | 90.3070 |
| Avg Spin | 2376.0642 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 5.8154 |
| Season WHIP | 1.4769 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"opponent": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"edges": {
"quality_edge": 0.01,
"offense_edge": -0.1011,
"opponent_offense_edge": 0.0685,
"defense_strength": 0.1056,
"opponent_defense_weakness": 0.1054,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0008,
"run_prevention": 0.9999,
"strikeout": 0.9948
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668390",
"profile": {
"available": true,
"pitcher_id": "668390",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 88.0,
"k_percent": 25.5,
"bb_percent": 8.2,
"woba": 0.33,
"xwoba": 0.333,
"sweet_spot_percent": 39.1,
"barrel_batted_rate": 4.7,
"hard_hit_percent": 48.4,
"avg_best_speed": 78.6591,
"avg_hyper_speed": 95.0354,
"whiff_percent": 27.0,
"swing_percent": 52.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4504,
"command_and_miss": 0.3079,
"regression_edge": -0.0857,
"xwoba_edge": -0.5143,
"barrel_edge": 0.5778,
"hard_hit_edge": -1.4429,
"whiff_edge": 0.1857,
"bb_edge": 0.25,
"pitch_design_score": 0.0324
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "668390",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 90.30702898227581,
"release_spin_rate": 2376.0641829067786,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 90.30702898227581,
"release_spin_rate": 2376.0641829067786,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.307,
"release_spin_rate": 2376.0642,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0324,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2312,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0802,
"sample_weight": 0.45,
"run_prevention_factor": 1.0068,
"strikeout_factor": 1.0111,
"walk_factor": 0.991,
"homer_factor": 1.0121,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668390",
"espn_id": 41177,
"player_name": "Cole Winn",
"team": "TEX",
"role": "pitcher",
"espn_rank": 626,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 626,
"gp_value": 25.0,
"gp_rank": 125,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.8153,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 6.0,
"hld_rank": 68,
"ip_value": 21.2,
"ip_rank": 362,
"h_value": 24.0,
"h_rank": 276,
"er_value": 14.0,
"er_rank": 225,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 8.0,
"bb_rank": 360,
"k_value": 25.0,
"k_rank": 302,
"k_per_9_value": 10.384615,
"k_per_9_rank": 22,
"whip_value": 1.4769,
"whip_rank": null,
"war_value": -0.42,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0031,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0031,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0054,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.005,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.0,
"ER": 6,
"H": 12,
"BB": 2,
"SO": 9,
"HR": 0,
"ERA": 6.750000000000001,
"WHIP": 1.7500000000000002,
"K9": 10.125000000000002,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "668390",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 90.30702898227581,
"release_spin_rate": 2376.0641829067786,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 90.30702898227581,
"release_spin_rate": 2376.0641829067786,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.307,
"release_spin_rate": 2376.0642,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0324,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2312,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.303,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4625,
"prior_weight": 0.5375
},
"role": "pitcher",
"player_id": "668390",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.2,
"ER": 4.0,
"R": 4.0,
"H": 4.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 15.0,
"Pitches": 59.0
},
"per_game": {
"IP": 0.2,
"ER": 0.8,
"R": 0.8,
"H": 0.8,
"BB": 0.2,
"SO": 0.6,
"HR": 0.0,
"BF": 3.0,
"Pitches": 11.8
},
"rates": {
"ERA": 9.8182,
"WHIP": 1.3636,
"ER_per_IP": 1.09091,
"H_per_IP": 1.09091,
"BB_per_IP": 0.27273,
"SO_per_IP": 0.81818,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.0,
"ER": 6.0,
"R": 6.0,
"H": 12.0,
"BB": 2.0,
"SO": 9.0,
"HR": 0.0,
"BF": 38.0,
"Pitches": 127.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 1.2,
"BB": 0.2,
"SO": 0.9,
"HR": 0.0,
"BF": 3.8,
"Pitches": 12.7
},
"rates": {
"ERA": 6.75,
"WHIP": 1.75,
"ER_per_IP": 0.75,
"H_per_IP": 1.5,
"BB_per_IP": 0.25,
"SO_per_IP": 1.125,
"HR_per_IP": 0.0
}
},
"season": {
"games": 25,
"totals": {
"IP": 21.2,
"ER": 14.0,
"R": 14.0,
"H": 24.0,
"BB": 8.0,
"SO": 25.0,
"HR": 3.0,
"BF": 98.0,
"Pitches": 372.0
},
"per_game": {
"IP": 1.0,
"ER": 0.56,
"R": 0.56,
"H": 0.96,
"BB": 0.32,
"SO": 1.0,
"HR": 0.12,
"BF": 3.92,
"Pitches": 14.88
},
"rates": {
"ERA": 5.8154,
"WHIP": 1.4769,
"ER_per_IP": 0.64615,
"H_per_IP": 1.10769,
"BB_per_IP": 0.36923,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.13846
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.473,
"predicted_H": 0.764,
"predicted_BB": 0.228,
"predicted_SO": 0.672,
"predicted_HR": 0.064,
"predicted_ERA": 6.0972,
"predicted_WHIP": 1.4224
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5771,
"form_weight": 0.4229,
"form_reliability": 0.4625,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.303,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4625,
"prior_weight": 0.5375
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.473,
"final": 0.7771,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.764,
"final": 1.4773,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.228,
"final": 0.0964,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.672,
"final": 0.8613,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.064,
"final": 0.6042,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.0972,
"final": 6.0972,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4224,
"final": 1.4224,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Tyler Alexander |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1410 |
| ESPN Rank | 244 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 3 |
| Season WHIP | 1.4333 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 79,
"wins": 39,
"losses": 40,
"win_pct": 0.4937,
"runs_scored": 320.0,
"runs_allowed": 322.0,
"run_differential": -2.0,
"run_differential_per_game": -0.0253,
"avg_runs_scored": 4.0506,
"avg_runs_allowed": 4.0759,
"offense_index": 0.8989,
"defense_index": 1.1056,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 3.7,
"avg_runs_allowed": 5.3,
"run_differential": -16.0
},
"available": true,
"quality_score": -0.0434
},
"opponent": {
"team": "MIN",
"games": 81,
"wins": 38,
"losses": 43,
"win_pct": 0.4691,
"runs_scored": 390.0,
"runs_allowed": 408.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2222,
"avg_runs_scored": 4.8148,
"avg_runs_allowed": 5.037,
"offense_index": 1.0685,
"defense_index": 0.8946,
"current_streak": "W3",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 5.9,
"run_differential": -6.0
},
"available": true,
"quality_score": -0.0534
},
"edges": {
"quality_edge": 0.01,
"offense_edge": -0.1011,
"opponent_offense_edge": 0.0685,
"defense_strength": 0.1056,
"opponent_defense_weakness": 0.1054,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0008,
"run_prevention": 0.9999,
"strikeout": 0.9948
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "641302",
"profile": {
"available": true,
"pitcher_id": "641302",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 101.0,
"k_percent": 17.4,
"bb_percent": 7.6,
"woba": 0.334,
"xwoba": 0.287,
"sweet_spot_percent": 24.7,
"barrel_batted_rate": 3.1,
"hard_hit_percent": 32.0,
"avg_best_speed": 75.5754,
"avg_hyper_speed": 92.9811,
"whiff_percent": 17.1,
"swing_percent": 44.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6346,
"command_and_miss": -0.6779,
"regression_edge": 1.3429,
"xwoba_edge": 0.8,
"barrel_edge": 0.9333,
"hard_hit_edge": 0.9,
"whiff_edge": -1.2286,
"bb_edge": 0.4,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "641302",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.141,
"sample_weight": 0.45,
"run_prevention_factor": 0.988,
"strikeout_factor": 0.9648,
"walk_factor": 0.9856,
"homer_factor": 0.9394,
"woba_minus_xwoba": 0.047,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "641302",
"espn_id": 40360,
"player_name": "Tyler Alexander",
"team": "TEX",
"role": "pitcher",
"espn_rank": 244,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 244,
"gp_value": 30.0,
"gp_rank": 64,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.0,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 6.0,
"hld_rank": 68,
"ip_value": 30.0,
"ip_rank": 251,
"h_value": 34.0,
"h_rank": 182,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 9.0,
"bb_rank": 332,
"k_value": 23.0,
"k_rank": 321,
"k_per_9_value": 6.9,
"k_per_9_rank": 34,
"whip_value": 1.4333,
"whip_rank": null,
"war_value": 0.3,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9946,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9946,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9935,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9727,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9842,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 5,
"H": 11,
"BB": 3,
"SO": 7,
"HR": 1,
"ERA": 5.0,
"WHIP": 1.5555555555555556,
"K9": 7.0,
"HR9": 1.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "641302",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.958,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5437,
"prior_weight": 0.4563
},
"role": "pitcher",
"player_id": "641302",
"report_date": "20260618_M",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 1.0,
"SO": 4.0,
"HR": 0.0,
"BF": 25.0,
"Pitches": 77.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.8,
"BB": 0.2,
"SO": 0.8,
"HR": 0.0,
"BF": 5.0,
"Pitches": 15.4
},
"rates": {
"ERA": 6.75,
"WHIP": 1.875,
"ER_per_IP": 0.75,
"H_per_IP": 1.6875,
"BB_per_IP": 0.1875,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 5.0,
"R": 6.0,
"H": 11.0,
"BB": 3.0,
"SO": 7.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 146.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.6,
"H": 1.1,
"BB": 0.3,
"SO": 0.7,
"HR": 0.1,
"BF": 4.1,
"Pitches": 14.6
},
"rates": {
"ERA": 5.0,
"WHIP": 1.5556,
"ER_per_IP": 0.55556,
"H_per_IP": 1.22222,
"BB_per_IP": 0.33333,
"SO_per_IP": 0.77778,
"HR_per_IP": 0.11111
}
},
"season": {
"games": 30,
"totals": {
"IP": 30.0,
"ER": 10.0,
"R": 12.0,
"H": 34.0,
"BB": 9.0,
"SO": 23.0,
"HR": 2.0,
"BF": 131.0,
"Pitches": 483.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3333,
"R": 0.4,
"H": 1.1333,
"BB": 0.3,
"SO": 0.7667,
"HR": 0.0667,
"BF": 4.3667,
"Pitches": 16.1
},
"rates": {
"ERA": 3.0,
"WHIP": 1.4333,
"ER_per_IP": 0.33333,
"H_per_IP": 1.13333,
"BB_per_IP": 0.3,
"SO_per_IP": 0.76667,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.47,
"predicted_H": 1.029,
"predicted_BB": 0.261,
"predicted_SO": 0.715,
"predicted_HR": 0.081,
"predicted_ERA": 4.9863,
"predicted_WHIP": 1.5208
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5428,
"form_weight": 0.4572,
"form_reliability": 0.5437,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.958,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5437,
"prior_weight": 0.4563
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 1.0,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.47,
"final": 0.2149,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.029,
"final": 0.4705,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.261,
"final": 0.1193,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.715,
"final": 1.4125,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.081,
"final": 0.037,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.9863,
"final": 4.9863,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5208,
"final": 1.5208,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.104 | 0.000 | 0.000 | Hitting_2B | 0.121 | 0.000 | -0.121 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_AB | 2.731 | 5.000 | 3.000 | Hitting_AB | 2.977 | 4.000 | 2.023 | 1.000 |
| predicted_AVG | 0.251 | 0.000 | 0.333 | Hitting_AVG | 0.261 | 0.250 | -0.261 | -0.250 |
| predicted_BB | 0.403 | 0.000 | 0.000 | Hitting_BB | 0.477 | 0.000 | -0.477 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.310 | 0.000 | 1.000 | Hitting_H | 0.776 | 1.000 | -0.776 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.149 | 0.000 | -0.149 | 0.000 |
| predicted_OBP | 0.311 | 0.000 | 0.333 | Hitting_OBP | 0.363 | 0.250 | -0.363 | -0.250 |
| predicted_R | 0.403 | 0.000 | 0.000 | Hitting_R | 0.443 | 0.000 | -0.443 | 0.000 |
| predicted_RBI | 0.180 | 0.000 | 0.000 | Hitting_RBI | 0.402 | 0.000 | -0.402 | 0.000 |
| predicted_SLG | 0.431 | 0.000 | 0.333 | Hitting_SLG | 0.459 | 0.250 | -0.459 | -0.250 |
| predicted_SO | 0.642 | 2.000 | 1.000 | Hitting_SO | 0.759 | 0.000 | 1.241 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_AB: 2.7310 -> 5.0000 (boost 2.2690, better) |
| Biggest Deboost | predicted_BB: 0.4030 -> 0.0000 (deboost -0.4030, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 6 | 1 | 6 | 1 | predicted_H: 0.3100 -> 0.4956 (boost 0.1856, better) | predicted_BB: 0.4030 -> 0.3467 (deboost -0.0563, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4455 -> 0.3353 (deboost -0.1102, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_H: 0.4935 -> 1.0000 (boost 0.5065, better) | predicted_BB: 0.3454 -> 0.0000 (deboost -0.3454, worse) | AB rounded to 3 (raw=2.78), rates preserved: AVG=0.177 HR/AB=0.034 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3978 -> 0.0000 (deboost -0.3978, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 2 | 0 | 2 | 0 | predicted_AVG: 0.1773 -> 0.3330 (boost 0.1557, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.3330 -> 0.1773 (deboost -0.1557, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "592626",
"player_name": "Joc Pederson",
"position": "DH",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.104,
"predicted_3B": 0.03,
"predicted_AB": 2.731,
"predicted_AVG": 0.251,
"predicted_BB": 0.403,
"predicted_H": 0.31,
"predicted_HR": 0.06,
"predicted_OBP": 0.311,
"predicted_R": 0.403,
"predicted_RBI": 0.18,
"predicted_SLG": 0.431,
"predicted_SO": 0.642
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.092,
"predicted_3B": 0.0325,
"predicted_AB": 2.784,
"predicted_AVG": 0.2569,
"predicted_BB": 0.3467,
"predicted_H": 0.4956,
"predicted_HBP": 0.084,
"predicted_HR": 0.0944,
"predicted_OBP": 0.3243,
"predicted_R": 0.4009,
"predicted_RBI": 0.2566,
"predicted_SLG": 0.4455,
"predicted_SO": 0.6163
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.104,
"after": 0.092,
"delta": -0.012,
"percent_delta": -0.1154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0325,
"delta": 0.0025,
"percent_delta": 0.0833,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.731,
"after": 2.784,
"delta": 0.053,
"percent_delta": 0.0194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2569,
"delta": 0.0059,
"percent_delta": 0.0235,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.403,
"after": 0.3467,
"delta": -0.0563,
"percent_delta": -0.1397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.31,
"after": 0.4956,
"delta": 0.1856,
"percent_delta": 0.5987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0944,
"delta": 0.0344,
"percent_delta": 0.5733,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.3243,
"delta": 0.0133,
"percent_delta": 0.0428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.403,
"after": 0.4009,
"delta": -0.0021,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.2566,
"delta": 0.0766,
"percent_delta": 0.4256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.4455,
"delta": 0.0145,
"percent_delta": 0.0336,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.642,
"after": 0.6163,
"delta": -0.0257,
"percent_delta": -0.04,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.31,
"after": 0.4956,
"delta": 0.1856,
"percent_delta": 0.5987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.403,
"after": 0.3467,
"delta": -0.0563,
"percent_delta": -0.1397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.092,
"predicted_3B": 0.0325,
"predicted_AB": 2.784,
"predicted_AVG": 0.1773,
"predicted_BB": 0.3454,
"predicted_H": 0.4935,
"predicted_HBP": 0.084,
"predicted_HR": 0.0943,
"predicted_OBP": 0.2681,
"predicted_R": 0.3978,
"predicted_RBI": 0.2546,
"predicted_SLG": 0.3353,
"predicted_SO": 0.6186
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.092,
"after": 0.092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0325,
"after": 0.0325,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.784,
"after": 2.784,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2569,
"after": 0.1773,
"delta": -0.0796,
"percent_delta": -0.3098,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3467,
"after": 0.3454,
"delta": -0.0013,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4956,
"after": 0.4935,
"delta": -0.0021,
"percent_delta": -0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.084,
"after": 0.084,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0944,
"after": 0.0943,
"delta": -0.0001,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3243,
"after": 0.2681,
"delta": -0.0562,
"percent_delta": -0.1733,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4009,
"after": 0.3978,
"delta": -0.0031,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2566,
"after": 0.2546,
"delta": -0.002,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4455,
"after": 0.3353,
"delta": -0.1102,
"percent_delta": -0.2474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6163,
"after": 0.6186,
"delta": 0.0023,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4455,
"after": 0.3353,
"delta": -0.1102,
"percent_delta": -0.2474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.78), rates preserved: AVG=0.177 HR/AB=0.034",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.092,
"after": 0.0,
"delta": -0.092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0325,
"after": 0.0,
"delta": -0.0325,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.784,
"after": 3.0,
"delta": 0.216,
"percent_delta": 0.0776,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3454,
"after": 0.0,
"delta": -0.3454,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4935,
"after": 1.0,
"delta": 0.5065,
"percent_delta": 1.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.084,
"after": 0.0,
"delta": -0.084,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0943,
"after": 0.0,
"delta": -0.0943,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2546,
"after": 0.0,
"delta": -0.2546,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6186,
"after": 1.0,
"delta": 0.3814,
"percent_delta": 0.6166,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.4935,
"after": 1.0,
"delta": 0.5065,
"percent_delta": 1.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3454,
"after": 0.0,
"delta": -0.3454,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3978,
"after": 0.0,
"delta": -0.3978,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3978,
"after": 0.0,
"delta": -0.3978,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1773,
"after": 0.333,
"delta": 0.1557,
"percent_delta": 0.8782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2681,
"after": 0.333,
"delta": 0.0649,
"percent_delta": 0.2421,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3353,
"after": 0.333,
"delta": -0.0023,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1773,
"after": 0.333,
"delta": 0.1557,
"percent_delta": 0.8782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.1773,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2681,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3353,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1773,
"delta": -0.1557,
"percent_delta": -0.4677,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2681,
"delta": -0.0649,
"percent_delta": -0.195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3353,
"delta": 0.0023,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1773,
"delta": -0.1557,
"percent_delta": -0.4677,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.104,
"after": 0.0,
"delta": -0.104,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.731,
"after": 5.0,
"delta": 2.269,
"percent_delta": 0.8308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.1773,
"delta": -0.0737,
"percent_delta": -0.2936,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.403,
"after": 0.0,
"delta": -0.403,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.31,
"after": 0.0,
"delta": -0.31,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.2681,
"delta": -0.0429,
"percent_delta": -0.1379,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.403,
"after": 0.0,
"delta": -0.403,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.431,
"after": 0.3353,
"delta": -0.0957,
"percent_delta": -0.222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.642,
"after": 2.0,
"delta": 1.358,
"percent_delta": 2.1153,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.731,
"after": 5.0,
"delta": 2.269,
"percent_delta": 0.8308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.403,
"after": 0.0,
"delta": -0.403,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.104 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 2.731 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.403 | - |
| predicted_H | 0.310 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.311 | - |
| predicted_R | 0.403 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.431 | - |
| predicted_SO | 0.642 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.092 | -0.012 |
| predicted_3B | 0.033 | 0.003 |
| predicted_AB | 2.784 | 0.053 |
| predicted_AVG | 0.257 | 0.006 |
| predicted_BB | 0.347 | -0.056 |
| predicted_H | 0.496 | 0.186 |
| predicted_HBP | 0.084 | - |
| predicted_HR | 0.094 | 0.034 |
| predicted_OBP | 0.324 | 0.013 |
| predicted_R | 0.401 | -0.002 |
| predicted_RBI | 0.257 | 0.077 |
| predicted_SLG | 0.446 | 0.015 |
| predicted_SO | 0.616 | -0.026 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.092 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 2.784 | 0.000 |
| predicted_AVG | 0.177 | -0.080 |
| predicted_BB | 0.345 | -0.001 |
| predicted_H | 0.493 | -0.002 |
| predicted_HBP | 0.084 | 0.000 |
| predicted_HR | 0.094 | -0.000 |
| predicted_OBP | 0.268 | -0.056 |
| predicted_R | 0.398 | -0.003 |
| predicted_RBI | 0.255 | -0.002 |
| predicted_SLG | 0.335 | -0.110 |
| predicted_SO | 0.619 | 0.002 |
AB rounded to 3 (raw=2.78), rates preserved: AVG=0.177 HR/AB=0.034
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.092 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 3.000 | 0.216 |
| predicted_AVG | 0.333 | 0.156 |
| predicted_BB | 0.000 | -0.345 |
| predicted_H | 1.000 | 0.506 |
| predicted_HR | 0.000 | -0.094 |
| predicted_OBP | 0.333 | 0.065 |
| predicted_R | 0.000 | -0.398 |
| predicted_RBI | 0.000 | -0.255 |
| predicted_SLG | 0.333 | -0.002 |
| predicted_SO | 1.000 | 0.381 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 2.000 | 0.3846 | 0.4286 | 0.6154 | 0.3846 | 0.0769 | 0.1538 | 0.0000 | 0.1538 |
| last_10 | 0.20 | 10 | - | 28.000 | 6.000 | 0.000 | 1.000 | 1.000 | 2.000 | 3.000 | 1.000 | 4.000 | 0.2143 | 0.2667 | 0.3929 | 0.2143 | 0.0357 | 0.0714 | 0.0357 | 0.1429 |
| season | 0.60 | 67 | - | 183.000 | 45.000 | 7.000 | 2.000 | 9.000 | 25.000 | 27.000 | 27.000 | 43.000 | 0.2459 | 0.3472 | 0.4536 | 0.2459 | 0.0492 | 0.1366 | 0.1475 | 0.2350 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0750 |
| predicted_3B | 0.0360 |
| predicted_AB | 2.8590 |
| predicted_AVG | 0.2653 |
| predicted_BB | 0.2670 |
| predicted_H | 0.7580 |
| predicted_HBP | 0.0840 |
| predicted_HR | 0.1430 |
| predicted_OBP | 0.3432 |
| predicted_R | 0.3980 |
| predicted_RBI | 0.3650 |
| predicted_SLG | 0.4660 |
| predicted_SO | 0.5800 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1040 | 0.0750 | 0.0920 | model_form_blend |
| predicted_3B | 0.0300 | 0.0360 | 0.0325 | model_form_blend |
| predicted_AB | 2.7310 | 2.8590 | 2.7840 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2653 | 0.2569 | model_form_blend |
| predicted_BB | 0.4030 | 0.2670 | 0.3467 | model_form_blend |
| predicted_H | 0.3100 | 0.7580 | 0.4956 | model_form_blend |
| predicted_HBP | - | 0.0840 | 0.0840 | form_only |
| predicted_HR | 0.0600 | 0.1430 | 0.0944 | model_form_blend |
| predicted_OBP | 0.3110 | 0.3432 | 0.3243 | model_form_blend |
| predicted_R | 0.4030 | 0.3980 | 0.4009 | model_form_blend |
| predicted_RBI | 0.1800 | 0.3650 | 0.2566 | model_form_blend |
| predicted_SLG | 0.4310 | 0.4660 | 0.4455 | model_form_blend |
| predicted_SO | 0.6420 | 0.5800 | 0.6163 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 174 |
| Season rows before report date | 174 |
| Report year | 2026 |
| Profile rows used | 67 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.246 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 592626 |
| playerID | 592626 |
| playerName | Joc Pederson |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 19.7 |
| sl_bb_percent | 12.8 |
| sl_woba | 0.351 |
| sl_xwoba | 0.353 |
| sl_xba | 0.257 |
| sl_xslg | 0.428 |
| sl_sweet_spot_percent | 32.9 |
| sl_barrel_batted_rate | 9.8 |
| sl_hard_hit_percent | 47.6 |
| sl_exit_velocity_avg | 91.6 |
| sl_launch_angle_avg | 14.9 |
| sl_whiff_percent | 29.1 |
| sl_swing_percent | 44.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.235 | 0.000 | 0.000 | Hitting_2B | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.240 | 4.000 | 4.000 | Hitting_AB | 3.884 | 3.000 | 0.116 | 1.000 |
| predicted_AVG | 0.243 | 0.500 | 0.250 | Hitting_AVG | 0.302 | 0.000 | 0.198 | 0.500 |
| predicted_BB | 0.309 | 0.000 | 0.000 | Hitting_BB | 0.326 | 0.000 | -0.326 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 1.030 | 2.000 | 1.000 | Hitting_H | 1.174 | 0.000 | 0.826 | 2.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.125 | 0.000 | -0.125 | 0.000 |
| predicted_OBP | 0.327 | 0.500 | 0.250 | Hitting_OBP | 0.361 | 0.000 | 0.139 | 0.500 |
| predicted_R | 0.471 | 0.000 | 0.000 | Hitting_R | 0.482 | 0.000 | -0.482 | 0.000 |
| predicted_RBI | 0.390 | 0.000 | 0.000 | Hitting_RBI | 0.446 | 0.000 | -0.446 | 0.000 |
| predicted_SLG | 0.387 | 0.500 | 0.250 | Hitting_SLG | 0.472 | 0.000 | 0.028 | 0.500 |
| predicted_SO | 0.676 | 0.000 | 1.000 | Hitting_SO | 0.634 | 0.000 | -0.634 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_H: 1.0300 -> 2.0000 (boost 0.9700, better) |
| Biggest Deboost | predicted_SO: 0.6760 -> 0.0000 (deboost -0.6760, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2430 -> 0.2494 (boost 0.0064, better) | predicted_AB: 4.2400 -> 4.0579 (deboost -0.1821, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3297 -> 0.3031 (deboost -0.0266, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.6886 -> 1.0000 (boost 0.3114, worse) | predicted_RBI: 0.3576 -> 0.0000 (deboost -0.3576, worse) | AB rounded to 4 (raw=4.24), rates preserved: AVG=0.237 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4414 -> 0.0000 (deboost -0.4414, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3724 -> 0.2500 (deboost -0.1224, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3724 (boost 0.1224, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "673962",
"player_name": "Josh Jung",
"position": "3B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.235,
"predicted_3B": 0.0,
"predicted_AB": 4.24,
"predicted_AVG": 0.243,
"predicted_BB": 0.309,
"predicted_H": 1.03,
"predicted_HR": 0.11,
"predicted_OBP": 0.327,
"predicted_R": 0.471,
"predicted_RBI": 0.39,
"predicted_SLG": 0.387,
"predicted_SO": 0.676
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1966,
"predicted_3B": 0.0004,
"predicted_AB": 4.0579,
"predicted_AVG": 0.2494,
"predicted_BB": 0.3229,
"predicted_H": 1.0101,
"predicted_HBP": 0.091,
"predicted_HR": 0.1028,
"predicted_OBP": 0.3297,
"predicted_R": 0.4448,
"predicted_RBI": 0.3604,
"predicted_SLG": 0.3799,
"predicted_SO": 0.6861
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.235,
"after": 0.1966,
"delta": -0.0384,
"percent_delta": -0.1634,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.24,
"after": 4.0579,
"delta": -0.1821,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2494,
"delta": 0.0064,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.309,
"after": 0.3229,
"delta": 0.0139,
"percent_delta": 0.045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.0101,
"delta": -0.0199,
"percent_delta": -0.0193,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1028,
"delta": -0.0072,
"percent_delta": -0.0655,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3297,
"delta": 0.0027,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.471,
"after": 0.4448,
"delta": -0.0262,
"percent_delta": -0.0556,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.3604,
"delta": -0.0296,
"percent_delta": -0.0759,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.387,
"after": 0.3799,
"delta": -0.0071,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.676,
"after": 0.6861,
"delta": 0.0101,
"percent_delta": 0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2494,
"delta": 0.0064,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.24,
"after": 4.0579,
"delta": -0.1821,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1966,
"predicted_3B": 0.0004,
"predicted_AB": 4.0579,
"predicted_AVG": 0.2479,
"predicted_BB": 0.3217,
"predicted_H": 1.0058,
"predicted_HBP": 0.091,
"predicted_HR": 0.1027,
"predicted_OBP": 0.3031,
"predicted_R": 0.4414,
"predicted_RBI": 0.3576,
"predicted_SLG": 0.3724,
"predicted_SO": 0.6886
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1966,
"after": 0.1966,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0579,
"after": 4.0579,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2494,
"after": 0.2479,
"delta": -0.0015,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3229,
"after": 0.3217,
"delta": -0.0012,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0101,
"after": 1.0058,
"delta": -0.0043,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.091,
"after": 0.091,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1028,
"after": 0.1027,
"delta": -0.0001,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3297,
"after": 0.3031,
"delta": -0.0266,
"percent_delta": -0.0807,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4448,
"after": 0.4414,
"delta": -0.0034,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3604,
"after": 0.3576,
"delta": -0.0028,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3799,
"after": 0.3724,
"delta": -0.0075,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6861,
"after": 0.6886,
"delta": 0.0025,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3297,
"after": 0.3031,
"delta": -0.0266,
"percent_delta": -0.0807,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.24), rates preserved: AVG=0.237 HR/AB=0.024",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1966,
"after": 0.0,
"delta": -0.1966,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0579,
"after": 4.0,
"delta": -0.0579,
"percent_delta": -0.0143,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3217,
"after": 0.0,
"delta": -0.3217,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0058,
"after": 1.0,
"delta": -0.0058,
"percent_delta": -0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.091,
"after": 0.0,
"delta": -0.091,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1027,
"after": 0.0,
"delta": -0.1027,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3576,
"after": 0.0,
"delta": -0.3576,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6886,
"after": 1.0,
"delta": 0.3114,
"percent_delta": 0.4522,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6886,
"after": 1.0,
"delta": 0.3114,
"percent_delta": 0.4522,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3576,
"after": 0.0,
"delta": -0.3576,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4414,
"after": 0.0,
"delta": -0.4414,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4414,
"after": 0.0,
"delta": -0.4414,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2479,
"after": 0.25,
"delta": 0.0021,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3031,
"after": 0.25,
"delta": -0.0531,
"percent_delta": -0.1752,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3724,
"after": 0.25,
"delta": -0.1224,
"percent_delta": -0.3287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3724,
"after": 0.25,
"delta": -0.1224,
"percent_delta": -0.3287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2479,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3031,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3724,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2479,
"delta": -0.0021,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3031,
"delta": 0.0531,
"percent_delta": 0.2124,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3724,
"delta": 0.1224,
"percent_delta": 0.4897,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3724,
"delta": 0.1224,
"percent_delta": 0.4897,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.235,
"after": 0.0,
"delta": -0.235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.24,
"after": 4.0,
"delta": -0.24,
"percent_delta": -0.0566,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2479,
"delta": 0.0049,
"percent_delta": 0.0202,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.309,
"after": 0.0,
"delta": -0.309,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 2.0,
"delta": 0.97,
"percent_delta": 0.9417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3031,
"delta": -0.0239,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.471,
"after": 0.0,
"delta": -0.471,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.387,
"after": 0.3724,
"delta": -0.0146,
"percent_delta": -0.0377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.676,
"after": 0.0,
"delta": -0.676,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.03,
"after": 2.0,
"delta": 0.97,
"percent_delta": 0.9417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.676,
"after": 0.0,
"delta": -0.676,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.235 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.240 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.309 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.327 | - |
| predicted_R | 0.471 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.387 | - |
| predicted_SO | 0.676 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | -0.038 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.058 | -0.182 |
| predicted_AVG | 0.249 | 0.006 |
| predicted_BB | 0.323 | 0.014 |
| predicted_H | 1.010 | -0.020 |
| predicted_HBP | 0.091 | - |
| predicted_HR | 0.103 | -0.007 |
| predicted_OBP | 0.330 | 0.003 |
| predicted_R | 0.445 | -0.026 |
| predicted_RBI | 0.360 | -0.030 |
| predicted_SLG | 0.380 | -0.007 |
| predicted_SO | 0.686 | 0.010 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.058 | 0.000 |
| predicted_AVG | 0.248 | -0.002 |
| predicted_BB | 0.322 | -0.001 |
| predicted_H | 1.006 | -0.004 |
| predicted_HBP | 0.091 | 0.000 |
| predicted_HR | 0.103 | -0.000 |
| predicted_OBP | 0.303 | -0.027 |
| predicted_R | 0.441 | -0.003 |
| predicted_RBI | 0.358 | -0.003 |
| predicted_SLG | 0.372 | -0.008 |
| predicted_SO | 0.689 | 0.002 |
AB rounded to 4 (raw=4.24), rates preserved: AVG=0.237 HR/AB=0.024
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.197 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.058 |
| predicted_AVG | 0.250 | 0.002 |
| predicted_BB | 0.000 | -0.322 |
| predicted_H | 1.000 | -0.006 |
| predicted_HR | 0.000 | -0.103 |
| predicted_OBP | 0.250 | -0.053 |
| predicted_R | 0.000 | -0.441 |
| predicted_RBI | 0.000 | -0.358 |
| predicted_SLG | 0.250 | -0.122 |
| predicted_SO | 1.000 | 0.311 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 0.1667 | 0.2857 | 0.1667 | 0.1667 | 0.0000 | 0.0000 | 0.1111 | 0.1667 |
| last_10 | 0.20 | 10 | - | 39.000 | 9.000 | 0.000 | 0.000 | 1.000 | 2.000 | 4.000 | 4.000 | 8.000 | 0.2308 | 0.3182 | 0.3077 | 0.2308 | 0.0256 | 0.0513 | 0.1026 | 0.2051 |
| season | 0.60 | 68 | - | 261.000 | 78.000 | 16.000 | 0.000 | 8.000 | 30.000 | 32.000 | 21.000 | 46.000 | 0.2989 | 0.3576 | 0.4521 | 0.2989 | 0.0307 | 0.1149 | 0.0805 | 0.1762 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1440 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.8090 |
| predicted_AVG | 0.2581 |
| predicted_BB | 0.3420 |
| predicted_H | 0.9830 |
| predicted_HBP | 0.0910 |
| predicted_HR | 0.0930 |
| predicted_OBP | 0.3333 |
| predicted_R | 0.4090 |
| predicted_RBI | 0.3200 |
| predicted_SLG | 0.3703 |
| predicted_SO | 0.7000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2350 | 0.1440 | 0.1966 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2400 | 3.8090 | 4.0579 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2581 | 0.2494 | model_form_blend |
| predicted_BB | 0.3090 | 0.3420 | 0.3229 | model_form_blend |
| predicted_H | 1.0300 | 0.9830 | 1.0101 | model_form_blend |
| predicted_HBP | - | 0.0910 | 0.0910 | form_only |
| predicted_HR | 0.1100 | 0.0930 | 0.1028 | model_form_blend |
| predicted_OBP | 0.3270 | 0.3333 | 0.3297 | model_form_blend |
| predicted_R | 0.4710 | 0.4090 | 0.4448 | model_form_blend |
| predicted_RBI | 0.3900 | 0.3200 | 0.3604 | model_form_blend |
| predicted_SLG | 0.3870 | 0.3703 | 0.3799 | model_form_blend |
| predicted_SO | 0.6760 | 0.7000 | 0.6861 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 224 |
| Season rows before report date | 224 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.299 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 673962 |
| playerID | 673962 |
| playerName | Josh Jung |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 16.0 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.356 |
| sl_xwoba | 0.352 |
| sl_xba | 0.298 |
| sl_xslg | 0.445 |
| sl_sweet_spot_percent | 39.6 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 45.2 |
| sl_exit_velocity_avg | 89.7 |
| sl_launch_angle_avg | 11.7 |
| sl_whiff_percent | 18.4 |
| sl_swing_percent | 47.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.225 | 0.000 | 0.000 | Hitting_2B | 0.194 | 1.000 | -0.194 | -1.000 |
| predicted_3B | 0.028 | 0.000 | 0.000 | Hitting_3B | 0.036 | 0.000 | -0.036 | 0.000 |
| predicted_AB | 4.060 | 4.000 | 4.000 | Hitting_AB | 3.948 | 3.000 | 0.052 | 1.000 |
| predicted_AVG | 0.244 | 0.250 | 0.250 | Hitting_AVG | 0.262 | 0.667 | -0.012 | -0.417 |
| predicted_BB | 0.338 | 0.000 | 0.000 | Hitting_BB | 0.389 | 0.000 | -0.389 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_H | 0.990 | 1.000 | 1.000 | Hitting_H | 1.036 | 2.000 | -0.036 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.115 | 0.000 | -0.115 | 0.000 |
| predicted_OBP | 0.312 | 0.250 | 0.250 | Hitting_OBP | 0.343 | 0.667 | -0.093 | -0.417 |
| predicted_R | 0.394 | 0.000 | 0.000 | Hitting_R | 0.433 | 0.000 | -0.433 | 0.000 |
| predicted_RBI | 0.430 | 0.000 | 0.000 | Hitting_RBI | 0.381 | 0.000 | -0.381 | 0.000 |
| predicted_SLG | 0.425 | 0.250 | 0.250 | Hitting_SLG | 0.417 | 1.000 | -0.167 | -0.750 |
| predicted_SO | 0.887 | 0.000 | 1.000 | Hitting_SO | 0.913 | 0.000 | -0.913 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AVG: 0.2440 -> 0.2498 (boost 0.0058, better) |
| Biggest Deboost | predicted_SO: 0.8870 -> 0.0000 (deboost -0.8870, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_2B: 0.2250 -> 0.2856 (boost 0.0606, better) | predicted_AB: 4.0600 -> 3.9134 (deboost -0.1466, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4231 -> 0.4038 (deboost -0.0193, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.8766 -> 1.0000 (boost 0.1234, worse) | predicted_RBI: 0.3998 -> 0.0000 (deboost -0.3998, worse) | AB rounded to 4 (raw=4.06), rates preserved: AVG=0.241 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3472 -> 0.0000 (deboost -0.3472, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4038 -> 0.2500 (deboost -0.1538, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 0 | 1 | 1 | 0 | - | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4038 (boost 0.1538, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "607043",
"player_name": "Brandon Nimmo",
"position": "RF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.225,
"predicted_3B": 0.028,
"predicted_AB": 4.06,
"predicted_AVG": 0.244,
"predicted_BB": 0.338,
"predicted_H": 0.99,
"predicted_HR": 0.11,
"predicted_OBP": 0.312,
"predicted_R": 0.394,
"predicted_RBI": 0.43,
"predicted_SLG": 0.425,
"predicted_SO": 0.887
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2856,
"predicted_3B": 0.0229,
"predicted_AB": 3.9134,
"predicted_AVG": 0.2514,
"predicted_BB": 0.2973,
"predicted_H": 0.9819,
"predicted_HBP": 0.048,
"predicted_HR": 0.0905,
"predicted_OBP": 0.3124,
"predicted_R": 0.3499,
"predicted_RBI": 0.4029,
"predicted_SLG": 0.4231,
"predicted_SO": 0.8734
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.225,
"after": 0.2856,
"delta": 0.0606,
"percent_delta": 0.2693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0229,
"delta": -0.0051,
"percent_delta": -0.1821,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.06,
"after": 3.9134,
"delta": -0.1466,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2514,
"delta": 0.0074,
"percent_delta": 0.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.338,
"after": 0.2973,
"delta": -0.0407,
"percent_delta": -0.1204,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9819,
"delta": -0.0081,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0905,
"delta": -0.0195,
"percent_delta": -0.1773,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3124,
"delta": 0.0004,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.394,
"after": 0.3499,
"delta": -0.0441,
"percent_delta": -0.1119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4029,
"delta": -0.0271,
"percent_delta": -0.063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.425,
"after": 0.4231,
"delta": -0.0019,
"percent_delta": -0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.887,
"after": 0.8734,
"delta": -0.0136,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.225,
"after": 0.2856,
"delta": 0.0606,
"percent_delta": 0.2693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.06,
"after": 3.9134,
"delta": -0.1466,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2856,
"predicted_3B": 0.0229,
"predicted_AB": 3.9134,
"predicted_AVG": 0.2498,
"predicted_BB": 0.2962,
"predicted_H": 0.9777,
"predicted_HBP": 0.048,
"predicted_HR": 0.0904,
"predicted_OBP": 0.3026,
"predicted_R": 0.3472,
"predicted_RBI": 0.3998,
"predicted_SLG": 0.4038,
"predicted_SO": 0.8766
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2856,
"after": 0.2856,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0229,
"after": 0.0229,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9134,
"after": 3.9134,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2514,
"after": 0.2498,
"delta": -0.0016,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2973,
"after": 0.2962,
"delta": -0.0011,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9819,
"after": 0.9777,
"delta": -0.0042,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.048,
"after": 0.048,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0905,
"after": 0.0904,
"delta": -0.0001,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3124,
"after": 0.3026,
"delta": -0.0098,
"percent_delta": -0.0314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3499,
"after": 0.3472,
"delta": -0.0027,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4029,
"after": 0.3998,
"delta": -0.0031,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4231,
"after": 0.4038,
"delta": -0.0193,
"percent_delta": -0.0456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8734,
"after": 0.8766,
"delta": 0.0032,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4231,
"after": 0.4038,
"delta": -0.0193,
"percent_delta": -0.0456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.06), rates preserved: AVG=0.241 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2856,
"after": 0.0,
"delta": -0.2856,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0229,
"after": 0.0,
"delta": -0.0229,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9134,
"after": 4.0,
"delta": 0.0866,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2962,
"after": 0.0,
"delta": -0.2962,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9777,
"after": 1.0,
"delta": 0.0223,
"percent_delta": 0.0228,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.048,
"after": 0.0,
"delta": -0.048,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0904,
"after": 0.0,
"delta": -0.0904,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3998,
"after": 0.0,
"delta": -0.3998,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8766,
"after": 1.0,
"delta": 0.1234,
"percent_delta": 0.1408,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8766,
"after": 1.0,
"delta": 0.1234,
"percent_delta": 0.1408,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3998,
"after": 0.0,
"delta": -0.3998,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3472,
"after": 0.0,
"delta": -0.3472,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3472,
"after": 0.0,
"delta": -0.3472,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2498,
"after": 0.25,
"delta": 0.0002,
"percent_delta": 0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3026,
"after": 0.25,
"delta": -0.0526,
"percent_delta": -0.1738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4038,
"after": 0.25,
"delta": -0.1538,
"percent_delta": -0.3809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4038,
"after": 0.25,
"delta": -0.1538,
"percent_delta": -0.3809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2498,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3026,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4038,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2498,
"delta": -0.0002,
"percent_delta": -0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3026,
"delta": 0.0526,
"percent_delta": 0.2105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4038,
"delta": 0.1538,
"percent_delta": 0.6152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4038,
"delta": 0.1538,
"percent_delta": 0.6152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.225,
"after": 0.0,
"delta": -0.225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.06,
"after": 4.0,
"delta": -0.06,
"percent_delta": -0.0148,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2498,
"delta": 0.0058,
"percent_delta": 0.0238,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.338,
"after": 0.0,
"delta": -0.338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.0,
"delta": 0.01,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3026,
"delta": -0.0094,
"percent_delta": -0.0301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.394,
"after": 0.0,
"delta": -0.394,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.425,
"after": 0.4038,
"delta": -0.0212,
"percent_delta": -0.0499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.887,
"after": 0.0,
"delta": -0.887,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2498,
"delta": 0.0058,
"percent_delta": 0.0238,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.887,
"after": 0.0,
"delta": -0.887,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.225 | - |
| predicted_3B | 0.028 | - |
| predicted_AB | 4.060 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.338 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.394 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.425 | - |
| predicted_SO | 0.887 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.286 | 0.061 |
| predicted_3B | 0.023 | -0.005 |
| predicted_AB | 3.913 | -0.147 |
| predicted_AVG | 0.251 | 0.007 |
| predicted_BB | 0.297 | -0.041 |
| predicted_H | 0.982 | -0.008 |
| predicted_HBP | 0.048 | - |
| predicted_HR | 0.090 | -0.020 |
| predicted_OBP | 0.312 | 0.000 |
| predicted_R | 0.350 | -0.044 |
| predicted_RBI | 0.403 | -0.027 |
| predicted_SLG | 0.423 | -0.002 |
| predicted_SO | 0.873 | -0.014 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.286 | 0.000 |
| predicted_3B | 0.023 | 0.000 |
| predicted_AB | 3.913 | 0.000 |
| predicted_AVG | 0.250 | -0.002 |
| predicted_BB | 0.296 | -0.001 |
| predicted_H | 0.978 | -0.004 |
| predicted_HBP | 0.048 | 0.000 |
| predicted_HR | 0.090 | -0.000 |
| predicted_OBP | 0.303 | -0.010 |
| predicted_R | 0.347 | -0.003 |
| predicted_RBI | 0.400 | -0.003 |
| predicted_SLG | 0.404 | -0.019 |
| predicted_SO | 0.877 | 0.003 |
AB rounded to 4 (raw=4.06), rates preserved: AVG=0.241 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.286 |
| predicted_3B | 0.000 | -0.023 |
| predicted_AB | 4.000 | 0.087 |
| predicted_AVG | 0.250 | 0.000 |
| predicted_BB | 0.000 | -0.296 |
| predicted_H | 1.000 | 0.022 |
| predicted_HR | 0.000 | -0.090 |
| predicted_OBP | 0.250 | -0.053 |
| predicted_R | 0.000 | -0.347 |
| predicted_RBI | 0.000 | -0.400 |
| predicted_SLG | 0.250 | -0.154 |
| predicted_SO | 1.000 | 0.123 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 3.000 | 0.000 | 0.000 | 2.000 | 0.000 | 0.000 | 5.000 | 0.2353 | 0.2353 | 0.4118 | 0.2353 | 0.0000 | 0.1177 | 0.0000 | 0.2941 |
| last_10 | 0.20 | 10 | - | 36.000 | 11.000 | 6.000 | 0.000 | 0.000 | 3.000 | 2.000 | 2.000 | 6.000 | 0.3056 | 0.3421 | 0.4722 | 0.3056 | 0.0000 | 0.0833 | 0.0556 | 0.1667 |
| season | 0.60 | 71 | - | 272.000 | 70.000 | 16.000 | 2.000 | 7.000 | 25.000 | 28.000 | 24.000 | 63.000 | 0.2574 | 0.3289 | 0.4081 | 0.2574 | 0.0257 | 0.0919 | 0.0882 | 0.2316 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3680 |
| predicted_3B | 0.0160 |
| predicted_AB | 3.7140 |
| predicted_AVG | 0.2615 |
| predicted_BB | 0.2420 |
| predicted_H | 0.9710 |
| predicted_HBP | 0.0480 |
| predicted_HR | 0.0640 |
| predicted_OBP | 0.3129 |
| predicted_R | 0.2900 |
| predicted_RBI | 0.3660 |
| predicted_SLG | 0.4206 |
| predicted_SO | 0.8550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2250 | 0.3680 | 0.2856 | model_form_blend |
| predicted_3B | 0.0280 | 0.0160 | 0.0229 | model_form_blend |
| predicted_AB | 4.0600 | 3.7140 | 3.9134 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2615 | 0.2514 | model_form_blend |
| predicted_BB | 0.3380 | 0.2420 | 0.2973 | model_form_blend |
| predicted_H | 0.9900 | 0.9710 | 0.9819 | model_form_blend |
| predicted_HBP | - | 0.0480 | 0.0480 | form_only |
| predicted_HR | 0.1100 | 0.0640 | 0.0905 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3129 | 0.3124 | model_form_blend |
| predicted_R | 0.3940 | 0.2900 | 0.3499 | model_form_blend |
| predicted_RBI | 0.4300 | 0.3660 | 0.4029 | model_form_blend |
| predicted_SLG | 0.4250 | 0.4206 | 0.4231 | model_form_blend |
| predicted_SO | 0.8870 | 0.8550 | 0.8734 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 252 |
| Season rows before report date | 252 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.257 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 2 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 607043 |
| playerID | 607043 |
| playerName | Brandon Nimmo |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 20.7 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.325 |
| sl_xwoba | 0.372 |
| sl_xba | 0.285 |
| sl_xslg | 0.503 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 10.9 |
| sl_hard_hit_percent | 52.6 |
| sl_exit_velocity_avg | 92.2 |
| sl_launch_angle_avg | 11.2 |
| sl_whiff_percent | 22.8 |
| sl_swing_percent | 49.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.161 | 0.000 | 0.000 | Hitting_2B | 0.158 | 0.000 | -0.158 | 0.000 |
| predicted_3B | 0.065 | 0.000 | 0.000 | Hitting_3B | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_AB | 4.320 | 3.000 | 4.000 | Hitting_AB | 4.158 | 3.000 | -1.158 | 0.000 |
| predicted_AVG | 0.236 | 0.000 | 0.250 | Hitting_AVG | 0.243 | 0.333 | -0.243 | -0.333 |
| predicted_BB | 0.226 | 1.000 | 0.000 | Hitting_BB | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 0.000 | 1.000 | Hitting_H | 1.011 | 1.000 | -1.011 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_OBP | 0.305 | 0.250 | 0.250 | Hitting_OBP | 0.278 | 0.333 | -0.028 | -0.083 |
| predicted_R | 0.516 | 0.000 | 1.000 | Hitting_R | 0.505 | 1.000 | -0.505 | -1.000 |
| predicted_RBI | 0.430 | 0.000 | 0.000 | Hitting_RBI | 0.221 | 0.000 | -0.221 | 0.000 |
| predicted_SLG | 0.408 | 0.000 | 0.250 | Hitting_SLG | 0.365 | 0.333 | -0.365 | -0.333 |
| predicted_SO | 0.935 | 2.000 | 1.000 | Hitting_SO | 0.968 | 1.000 | 1.032 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.9350 -> 2.0000 (boost 1.0650, worse) |
| Biggest Deboost | predicted_AB: 4.3200 -> 3.0000 (deboost -1.3200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2360 -> 0.2440 (boost 0.0080, better) | predicted_AB: 4.3200 -> 4.1710 (deboost -0.1490, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3039 -> 0.2827 (deboost -0.0212, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.9087 -> 1.0000 (boost 0.0913, worse) | predicted_RBI: 0.4086 -> 0.0000 (deboost -0.4086, worse) | AB rounded to 4 (raw=4.32), rates preserved: AVG=0.234 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5215 -> 1.0000 (boost 0.4785, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2425 -> 0.2500 (boost 0.0075, better) | predicted_SLG: 0.4064 -> 0.2500 (deboost -0.1564, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 1 | 4 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4064 (boost 0.1564, better) | predicted_AVG: 0.2500 -> 0.2425 (deboost -0.0075, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694671",
"player_name": "Wyatt Langford",
"position": "LF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.161,
"predicted_3B": 0.065,
"predicted_AB": 4.32,
"predicted_AVG": 0.236,
"predicted_BB": 0.226,
"predicted_H": 1.02,
"predicted_HR": 0.14,
"predicted_OBP": 0.305,
"predicted_R": 0.516,
"predicted_RBI": 0.43,
"predicted_SLG": 0.408,
"predicted_SO": 0.935
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1618,
"predicted_3B": 0.0528,
"predicted_AB": 4.171,
"predicted_AVG": 0.244,
"predicted_BB": 0.2343,
"predicted_H": 1.016,
"predicted_HBP": 0.007,
"predicted_HR": 0.1388,
"predicted_OBP": 0.3039,
"predicted_R": 0.5255,
"predicted_RBI": 0.4118,
"predicted_SLG": 0.4124,
"predicted_SO": 0.9054
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.161,
"after": 0.1618,
"delta": 0.0008,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.065,
"after": 0.0528,
"delta": -0.0122,
"percent_delta": -0.1877,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.32,
"after": 4.171,
"delta": -0.149,
"percent_delta": -0.0345,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.244,
"delta": 0.008,
"percent_delta": 0.0339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.226,
"after": 0.2343,
"delta": 0.0083,
"percent_delta": 0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.016,
"delta": -0.004,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1388,
"delta": -0.0012,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.3039,
"delta": -0.0011,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.516,
"after": 0.5255,
"delta": 0.0095,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4118,
"delta": -0.0182,
"percent_delta": -0.0423,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4124,
"delta": 0.0044,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.935,
"after": 0.9054,
"delta": -0.0296,
"percent_delta": -0.0317,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.244,
"delta": 0.008,
"percent_delta": 0.0339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.32,
"after": 4.171,
"delta": -0.149,
"percent_delta": -0.0345,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 31
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1618,
"predicted_3B": 0.0528,
"predicted_AB": 4.171,
"predicted_AVG": 0.2425,
"predicted_BB": 0.2334,
"predicted_H": 1.0116,
"predicted_HBP": 0.007,
"predicted_HR": 0.1386,
"predicted_OBP": 0.2827,
"predicted_R": 0.5215,
"predicted_RBI": 0.4086,
"predicted_SLG": 0.4064,
"predicted_SO": 0.9087
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1618,
"after": 0.1618,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0528,
"after": 0.0528,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.171,
"after": 4.171,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2425,
"delta": -0.0015,
"percent_delta": -0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2343,
"after": 0.2334,
"delta": -0.0009,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.016,
"after": 1.0116,
"delta": -0.0044,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.007,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1388,
"after": 0.1386,
"delta": -0.0002,
"percent_delta": -0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3039,
"after": 0.2827,
"delta": -0.0212,
"percent_delta": -0.0698,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5255,
"after": 0.5215,
"delta": -0.004,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4118,
"after": 0.4086,
"delta": -0.0032,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4124,
"after": 0.4064,
"delta": -0.006,
"percent_delta": -0.0145,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9054,
"after": 0.9087,
"delta": 0.0033,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3039,
"after": 0.2827,
"delta": -0.0212,
"percent_delta": -0.0698,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.32), rates preserved: AVG=0.234 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1618,
"after": 0.0,
"delta": -0.1618,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0528,
"after": 0.0,
"delta": -0.0528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.171,
"after": 4.0,
"delta": -0.171,
"percent_delta": -0.041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2334,
"after": 0.0,
"delta": -0.2334,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0116,
"after": 1.0,
"delta": -0.0116,
"percent_delta": -0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.007,
"after": 0.0,
"delta": -0.007,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1386,
"after": 0.0,
"delta": -0.1386,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4086,
"after": 0.0,
"delta": -0.4086,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9087,
"after": 1.0,
"delta": 0.0913,
"percent_delta": 0.1005,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.9087,
"after": 1.0,
"delta": 0.0913,
"percent_delta": 0.1005,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4086,
"after": 0.0,
"delta": -0.4086,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5215,
"after": 1.0,
"delta": 0.4785,
"percent_delta": 0.9175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5215,
"after": 1.0,
"delta": 0.4785,
"percent_delta": 0.9175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2425,
"after": 0.25,
"delta": 0.0075,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2827,
"after": 0.25,
"delta": -0.0327,
"percent_delta": -0.1157,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4064,
"after": 0.25,
"delta": -0.1564,
"percent_delta": -0.3848,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2425,
"after": 0.25,
"delta": 0.0075,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4064,
"after": 0.25,
"delta": -0.1564,
"percent_delta": -0.3848,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2425,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.2827,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4064,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2425,
"delta": -0.0075,
"percent_delta": -0.0298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2827,
"delta": 0.0327,
"percent_delta": 0.1307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4064,
"delta": 0.1564,
"percent_delta": 0.6255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4064,
"delta": 0.1564,
"percent_delta": 0.6255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2425,
"delta": -0.0075,
"percent_delta": -0.0298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.161,
"after": 0.0,
"delta": -0.161,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.065,
"after": 0.0,
"delta": -0.065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.32,
"after": 3.0,
"delta": -1.32,
"percent_delta": -0.3056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2425,
"delta": 0.0065,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.226,
"after": 1.0,
"delta": 0.774,
"percent_delta": 3.4248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 0.0,
"delta": -1.02,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.2827,
"delta": -0.0223,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.516,
"after": 0.0,
"delta": -0.516,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4064,
"delta": -0.0016,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.935,
"after": 2.0,
"delta": 1.065,
"percent_delta": 1.139,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.935,
"after": 2.0,
"delta": 1.065,
"percent_delta": 1.139,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.32,
"after": 3.0,
"delta": -1.32,
"percent_delta": -0.3056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.161 | - |
| predicted_3B | 0.065 | - |
| predicted_AB | 4.320 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.226 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.305 | - |
| predicted_R | 0.516 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.408 | - |
| predicted_SO | 0.935 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.001 |
| predicted_3B | 0.053 | -0.012 |
| predicted_AB | 4.171 | -0.149 |
| predicted_AVG | 0.244 | 0.008 |
| predicted_BB | 0.234 | 0.008 |
| predicted_H | 1.016 | -0.004 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.139 | -0.001 |
| predicted_OBP | 0.304 | -0.001 |
| predicted_R | 0.525 | 0.009 |
| predicted_RBI | 0.412 | -0.018 |
| predicted_SLG | 0.412 | 0.004 |
| predicted_SO | 0.905 | -0.030 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.000 |
| predicted_3B | 0.053 | 0.000 |
| predicted_AB | 4.171 | 0.000 |
| predicted_AVG | 0.242 | -0.002 |
| predicted_BB | 0.233 | -0.001 |
| predicted_H | 1.012 | -0.004 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.139 | -0.000 |
| predicted_OBP | 0.283 | -0.021 |
| predicted_R | 0.521 | -0.004 |
| predicted_RBI | 0.409 | -0.003 |
| predicted_SLG | 0.406 | -0.006 |
| predicted_SO | 0.909 | 0.003 |
AB rounded to 4 (raw=4.32), rates preserved: AVG=0.234 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.162 |
| predicted_3B | 0.000 | -0.053 |
| predicted_AB | 4.000 | -0.171 |
| predicted_AVG | 0.250 | 0.008 |
| predicted_BB | 0.000 | -0.233 |
| predicted_H | 1.000 | -0.012 |
| predicted_HR | 0.000 | -0.139 |
| predicted_OBP | 0.250 | -0.033 |
| predicted_R | 1.000 | 0.479 |
| predicted_RBI | 0.000 | -0.409 |
| predicted_SLG | 0.250 | -0.156 |
| predicted_SO | 1.000 | 0.091 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 7.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 3.000 | 0.3500 | 0.3810 | 0.5500 | 0.3500 | 0.0500 | 0.1500 | 0.0500 | 0.1500 |
| last_10 | 0.20 | 10 | - | 39.000 | 9.000 | 1.000 | 0.000 | 2.000 | 4.000 | 6.000 | 3.000 | 9.000 | 0.2308 | 0.2857 | 0.4103 | 0.2308 | 0.0513 | 0.1026 | 0.0769 | 0.2308 |
| season | 0.60 | 31 | - | 123.000 | 29.000 | 5.000 | 2.000 | 3.000 | 8.000 | 16.000 | 7.000 | 29.000 | 0.2358 | 0.2769 | 0.3821 | 0.2358 | 0.0244 | 0.0650 | 0.0569 | 0.2358 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1630 |
| predicted_3B | 0.0340 |
| predicted_AB | 3.9430 |
| predicted_AVG | 0.2563 |
| predicted_BB | 0.2470 |
| predicted_H | 1.0100 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.1370 |
| predicted_OBP | 0.3021 |
| predicted_R | 0.5400 |
| predicted_RBI | 0.3840 |
| predicted_SLG | 0.4192 |
| predicted_SO | 0.8600 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1610 | 0.1630 | 0.1618 | model_form_blend |
| predicted_3B | 0.0650 | 0.0340 | 0.0528 | model_form_blend |
| predicted_AB | 4.3200 | 3.9430 | 4.1710 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2563 | 0.2440 | model_form_blend |
| predicted_BB | 0.2260 | 0.2470 | 0.2343 | model_form_blend |
| predicted_H | 1.0200 | 1.0100 | 1.0160 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1400 | 0.1370 | 0.1388 | model_form_blend |
| predicted_OBP | 0.3050 | 0.3021 | 0.3039 | model_form_blend |
| predicted_R | 0.5160 | 0.5400 | 0.5255 | model_form_blend |
| predicted_RBI | 0.4300 | 0.3840 | 0.4118 | model_form_blend |
| predicted_SLG | 0.4080 | 0.4192 | 0.4124 | model_form_blend |
| predicted_SO | 0.9350 | 0.8600 | 0.9054 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 95 |
| Season rows before report date | 95 |
| Report year | 2026 |
| Profile rows used | 31 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.236 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 694671 |
| playerID | 694671 |
| playerName | Wyatt Langford |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 22.3 |
| sl_bb_percent | 5.4 |
| sl_woba | 0.289 |
| sl_xwoba | 0.282 |
| sl_xba | 0.236 |
| sl_xslg | 0.367 |
| sl_sweet_spot_percent | 27.7 |
| sl_barrel_batted_rate | 6.4 |
| sl_hard_hit_percent | 35.1 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 14.4 |
| sl_whiff_percent | 23.3 |
| sl_swing_percent | 47.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.062 | 0.000 | 0.000 | Hitting_2B | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.031 | 3.000 | 3.000 | Hitting_AB | 3.232 | 4.000 | -0.232 | -1.000 |
| predicted_AVG | 0.256 | 0.333 | 0.333 | Hitting_AVG | 0.232 | 0.250 | 0.101 | 0.083 |
| predicted_BB | 0.437 | 1.000 | 0.000 | Hitting_BB | 0.509 | 0.000 | 0.491 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.770 | 1.000 | 1.000 | Hitting_H | 0.750 | 1.000 | 0.250 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.333 | 0.500 | 0.333 | Hitting_OBP | 0.341 | 0.250 | 0.159 | 0.250 |
| predicted_R | 0.188 | 0.000 | 0.000 | Hitting_R | 0.196 | 0.000 | -0.196 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.241 | 0.000 | -0.241 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_SLG | 0.329 | 0.333 | 0.333 | Hitting_SLG | 0.257 | 0.250 | 0.076 | 0.083 |
| predicted_SO | 0.625 | 1.000 | 1.000 | Hitting_SO | 0.723 | 0.000 | 0.277 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 5 |
| Better Metrics | 3 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.4370 -> 1.0000 (boost 0.5630, better) |
| Biggest Deboost | predicted_RBI: 0.2700 -> 0.0000 (deboost -0.2700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3290 -> 0.3177 (deboost -0.0113, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_OBP: 0.3366 -> 0.3432 (boost 0.0066, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.6215 -> 1.0000 (boost 0.3785, worse) | predicted_BB: 0.4168 -> 0.0000 (deboost -0.4168, worse) | AB rounded to 3 (raw=3.07), rates preserved: AVG=0.254 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.1892 -> 0.0000 (deboost -0.1892, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2541 -> 0.3330 (boost 0.0789, better) | predicted_OBP: 0.3432 -> 0.3330 (deboost -0.0102, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3330 -> 0.3432 (boost 0.0102, better) | predicted_AVG: 0.3330 -> 0.2541 (deboost -0.0789, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669701",
"player_name": "Josh Smith",
"position": "2B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.062,
"predicted_3B": 0.0,
"predicted_AB": 3.031,
"predicted_AVG": 0.256,
"predicted_BB": 0.437,
"predicted_H": 0.77,
"predicted_HR": 0.06,
"predicted_OBP": 0.333,
"predicted_R": 0.188,
"predicted_RBI": 0.27,
"predicted_SLG": 0.329,
"predicted_SO": 0.625
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0624,
"predicted_3B": 0.0012,
"predicted_AB": 3.0706,
"predicted_AVG": 0.2563,
"predicted_BB": 0.4183,
"predicted_H": 0.7836,
"predicted_HBP": 0.021,
"predicted_HR": 0.0452,
"predicted_OBP": 0.3366,
"predicted_R": 0.1907,
"predicted_RBI": 0.2342,
"predicted_SLG": 0.3177,
"predicted_SO": 0.6192
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.062,
"after": 0.0624,
"delta": 0.0004,
"percent_delta": 0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0012,
"delta": 0.0012,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.031,
"after": 3.0706,
"delta": 0.0396,
"percent_delta": 0.0131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2563,
"delta": 0.0003,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.437,
"after": 0.4183,
"delta": -0.0187,
"percent_delta": -0.0428,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.7836,
"delta": 0.0136,
"percent_delta": 0.0177,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0452,
"delta": -0.0148,
"percent_delta": -0.2467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3366,
"delta": 0.0036,
"percent_delta": 0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.188,
"after": 0.1907,
"delta": 0.0027,
"percent_delta": 0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2342,
"delta": -0.0358,
"percent_delta": -0.1326,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.3177,
"delta": -0.0113,
"percent_delta": -0.0343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.625,
"after": 0.6192,
"delta": -0.0058,
"percent_delta": -0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.3177,
"delta": -0.0113,
"percent_delta": -0.0343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 32
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0624,
"predicted_3B": 0.0012,
"predicted_AB": 3.0706,
"predicted_AVG": 0.2541,
"predicted_BB": 0.4168,
"predicted_H": 0.7802,
"predicted_HBP": 0.021,
"predicted_HR": 0.0452,
"predicted_OBP": 0.3432,
"predicted_R": 0.1892,
"predicted_RBI": 0.2324,
"predicted_SLG": 0.3193,
"predicted_SO": 0.6215
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0624,
"after": 0.0624,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0706,
"after": 3.0706,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2563,
"after": 0.2541,
"delta": -0.0022,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4183,
"after": 0.4168,
"delta": -0.0015,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7836,
"after": 0.7802,
"delta": -0.0034,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.021,
"after": 0.021,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0452,
"after": 0.0452,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3366,
"after": 0.3432,
"delta": 0.0066,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.1907,
"after": 0.1892,
"delta": -0.0015,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2342,
"after": 0.2324,
"delta": -0.0018,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3177,
"after": 0.3193,
"delta": 0.0016,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6192,
"after": 0.6215,
"delta": 0.0023,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3366,
"after": 0.3432,
"delta": 0.0066,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.07), rates preserved: AVG=0.254 HR/AB=0.015",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0624,
"after": 0.0,
"delta": -0.0624,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0012,
"after": 0.0,
"delta": -0.0012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0706,
"after": 3.0,
"delta": -0.0706,
"percent_delta": -0.023,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4168,
"after": 0.0,
"delta": -0.4168,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7802,
"after": 1.0,
"delta": 0.2198,
"percent_delta": 0.2817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.021,
"after": 0.0,
"delta": -0.021,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0452,
"after": 0.0,
"delta": -0.0452,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2324,
"after": 0.0,
"delta": -0.2324,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6215,
"after": 1.0,
"delta": 0.3785,
"percent_delta": 0.609,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6215,
"after": 1.0,
"delta": 0.3785,
"percent_delta": 0.609,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4168,
"after": 0.0,
"delta": -0.4168,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.1892,
"after": 0.0,
"delta": -0.1892,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.1892,
"after": 0.0,
"delta": -0.1892,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2541,
"after": 0.333,
"delta": 0.0789,
"percent_delta": 0.3105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3432,
"after": 0.333,
"delta": -0.0102,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3193,
"after": 0.333,
"delta": 0.0137,
"percent_delta": 0.0429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2541,
"after": 0.333,
"delta": 0.0789,
"percent_delta": 0.3105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3432,
"after": 0.333,
"delta": -0.0102,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2541,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3432,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3193,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2541,
"delta": -0.0789,
"percent_delta": -0.2369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3432,
"delta": 0.0102,
"percent_delta": 0.0307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3193,
"delta": -0.0137,
"percent_delta": -0.0411,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3432,
"delta": 0.0102,
"percent_delta": 0.0307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2541,
"delta": -0.0789,
"percent_delta": -0.2369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.062,
"after": 0.0,
"delta": -0.062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.031,
"after": 3.0,
"delta": -0.031,
"percent_delta": -0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2541,
"delta": -0.0019,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.437,
"after": 1.0,
"delta": 0.563,
"percent_delta": 1.2883,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.0,
"delta": 0.23,
"percent_delta": 0.2987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3432,
"delta": 0.0102,
"percent_delta": 0.0306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.3193,
"delta": -0.0097,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.625,
"after": 1.0,
"delta": 0.375,
"percent_delta": 0.6,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 4,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.437,
"after": 1.0,
"delta": 0.563,
"percent_delta": 1.2883,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.062 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.031 | - |
| predicted_AVG | 0.256 | - |
| predicted_BB | 0.437 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.333 | - |
| predicted_R | 0.188 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.329 | - |
| predicted_SO | 0.625 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.062 | 0.000 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.071 | 0.040 |
| predicted_AVG | 0.256 | 0.000 |
| predicted_BB | 0.418 | -0.019 |
| predicted_H | 0.784 | 0.014 |
| predicted_HBP | 0.021 | - |
| predicted_HR | 0.045 | -0.015 |
| predicted_OBP | 0.337 | 0.004 |
| predicted_R | 0.191 | 0.003 |
| predicted_RBI | 0.234 | -0.036 |
| predicted_SLG | 0.318 | -0.011 |
| predicted_SO | 0.619 | -0.006 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.062 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.071 | 0.000 |
| predicted_AVG | 0.254 | -0.002 |
| predicted_BB | 0.417 | -0.002 |
| predicted_H | 0.780 | -0.003 |
| predicted_HBP | 0.021 | 0.000 |
| predicted_HR | 0.045 | 0.000 |
| predicted_OBP | 0.343 | 0.007 |
| predicted_R | 0.189 | -0.002 |
| predicted_RBI | 0.232 | -0.002 |
| predicted_SLG | 0.319 | 0.002 |
| predicted_SO | 0.622 | 0.002 |
AB rounded to 3 (raw=3.07), rates preserved: AVG=0.254 HR/AB=0.015
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.062 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.071 |
| predicted_AVG | 0.333 | 0.079 |
| predicted_BB | 0.000 | -0.417 |
| predicted_H | 1.000 | 0.220 |
| predicted_HR | 0.000 | -0.045 |
| predicted_OBP | 0.333 | -0.010 |
| predicted_R | 0.000 | -0.189 |
| predicted_RBI | 0.000 | -0.232 |
| predicted_SLG | 0.333 | 0.014 |
| predicted_SO | 1.000 | 0.378 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 5.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.3571 | 0.4000 | 0.3571 | 0.3571 | 0.0000 | 0.0000 | 0.0714 | 0.1429 |
| last_10 | 0.20 | 10 | - | 28.000 | 8.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 5.000 | 5.000 | 0.2857 | 0.3939 | 0.2857 | 0.2857 | 0.0000 | 0.0000 | 0.1786 | 0.1786 |
| season | 0.60 | 32 | - | 97.000 | 21.000 | 2.000 | 0.000 | 0.000 | 6.000 | 6.000 | 14.000 | 20.000 | 0.2165 | 0.3186 | 0.2371 | 0.2165 | 0.0000 | 0.0619 | 0.1443 | 0.2062 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0630 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.1330 |
| predicted_AVG | 0.2568 |
| predicted_BB | 0.3890 |
| predicted_H | 0.8050 |
| predicted_HBP | 0.0210 |
| predicted_HR | 0.0220 |
| predicted_OBP | 0.3423 |
| predicted_R | 0.1950 |
| predicted_RBI | 0.1780 |
| predicted_SLG | 0.3000 |
| predicted_SO | 0.6100 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0620 | 0.0630 | 0.0624 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.0310 | 3.1330 | 3.0706 | model_form_blend |
| predicted_AVG | 0.2560 | 0.2568 | 0.2563 | model_form_blend |
| predicted_BB | 0.4370 | 0.3890 | 0.4183 | model_form_blend |
| predicted_H | 0.7700 | 0.8050 | 0.7836 | model_form_blend |
| predicted_HBP | - | 0.0210 | 0.0210 | form_only |
| predicted_HR | 0.0600 | 0.0220 | 0.0452 | model_form_blend |
| predicted_OBP | 0.3330 | 0.3423 | 0.3366 | model_form_blend |
| predicted_R | 0.1880 | 0.1950 | 0.1907 | model_form_blend |
| predicted_RBI | 0.2700 | 0.1780 | 0.2342 | model_form_blend |
| predicted_SLG | 0.3290 | 0.3000 | 0.3177 | model_form_blend |
| predicted_SO | 0.6250 | 0.6100 | 0.6192 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 112 |
| Season rows before report date | 112 |
| Report year | 2026 |
| Profile rows used | 32 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.216 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B-3B |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 669701 |
| playerID | 669701 |
| playerName | Josh Smith |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 17.7 |
| sl_bb_percent | 12.4 |
| sl_woba | 0.262 |
| sl_xwoba | 0.294 |
| sl_xba | 0.221 |
| sl_xslg | 0.323 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 18.4 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 47.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.242 | 0.000 | 0.000 | Hitting_2B | 0.291 | 0.000 | -0.291 | 0.000 |
| predicted_3B | 0.032 | 0.000 | 0.000 | Hitting_3B | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_AB | 3.435 | 3.000 | 4.000 | Hitting_AB | 3.484 | 3.000 | -0.484 | 0.000 |
| predicted_AVG | 0.233 | 0.333 | 0.250 | Hitting_AVG | 0.298 | 0.000 | 0.035 | 0.333 |
| predicted_BB | 0.274 | 1.000 | 0.000 | Hitting_BB | 0.319 | 1.000 | 0.681 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_H | 0.330 | 1.000 | 1.000 | Hitting_H | 1.038 | 0.000 | -0.038 | 1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.077 | 0.000 | -0.077 | 0.000 |
| predicted_OBP | 0.276 | 0.500 | 0.250 | Hitting_OBP | 0.353 | 0.250 | 0.147 | 0.250 |
| predicted_R | 0.468 | 1.000 | 0.000 | Hitting_R | 0.505 | 0.000 | 0.495 | 1.000 |
| predicted_RBI | 0.200 | 1.000 | 0.000 | Hitting_RBI | 0.626 | 1.000 | 0.374 | 0.000 |
| predicted_SLG | 0.354 | 0.333 | 0.250 | Hitting_SLG | 0.467 | 0.000 | -0.134 | 0.333 |
| predicted_SO | 0.968 | 1.000 | 1.000 | Hitting_SO | 0.885 | 1.000 | 0.115 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_RBI: 0.2000 -> 1.0000 (boost 0.8000, better) |
| Biggest Deboost | predicted_AB: 3.4350 -> 3.0000 (deboost -0.4350, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 4 | 1 | predicted_H: 0.3300 -> 0.5658 (boost 0.2358, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3509 -> 0.2693 (deboost -0.0816, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 3 | 3 | predicted_AB: 3.5462 -> 4.0000 (boost 0.4538, better) | predicted_RBI: 0.3171 -> 0.0000 (deboost -0.3171, worse) | AB rounded to 4 (raw=3.55), rates preserved: AVG=0.159 HR/AB=0.011 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4577 -> 0.0000 (deboost -0.4577, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1589 -> 0.2500 (boost 0.0911, better) | predicted_SLG: 0.2693 -> 0.2500 (deboost -0.0193, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 3 | 1 | 3 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.2693 (boost 0.0193, better) | predicted_AVG: 0.2500 -> 0.1589 (deboost -0.0911, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677649",
"player_name": "Ezequiel Duran",
"position": "SS",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.242,
"predicted_3B": 0.032,
"predicted_AB": 3.435,
"predicted_AVG": 0.233,
"predicted_BB": 0.274,
"predicted_H": 0.33,
"predicted_HR": 0.03,
"predicted_OBP": 0.276,
"predicted_R": 0.468,
"predicted_RBI": 0.2,
"predicted_SLG": 0.354,
"predicted_SO": 0.968
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2216,
"predicted_3B": 0.027,
"predicted_AB": 3.5462,
"predicted_AVG": 0.2367,
"predicted_BB": 0.2657,
"predicted_H": 0.5658,
"predicted_HBP": 0.03,
"predicted_HR": 0.0387,
"predicted_OBP": 0.2836,
"predicted_R": 0.4613,
"predicted_RBI": 0.3196,
"predicted_SLG": 0.3509,
"predicted_SO": 1.0497
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.242,
"after": 0.2216,
"delta": -0.0204,
"percent_delta": -0.0843,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.027,
"delta": -0.005,
"percent_delta": -0.1563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.435,
"after": 3.5462,
"delta": 0.1112,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2367,
"delta": 0.0037,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.274,
"after": 0.2657,
"delta": -0.0083,
"percent_delta": -0.0303,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.33,
"after": 0.5658,
"delta": 0.2358,
"percent_delta": 0.7145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0387,
"delta": 0.0087,
"percent_delta": 0.29,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.2836,
"delta": 0.0076,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.468,
"after": 0.4613,
"delta": -0.0067,
"percent_delta": -0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 0.3196,
"delta": 0.1196,
"percent_delta": 0.598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.3509,
"delta": -0.0031,
"percent_delta": -0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.968,
"after": 1.0497,
"delta": 0.0817,
"percent_delta": 0.0844,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.33,
"after": 0.5658,
"delta": 0.2358,
"percent_delta": 0.7145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 62
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2216,
"predicted_3B": 0.027,
"predicted_AB": 3.5462,
"predicted_AVG": 0.1589,
"predicted_BB": 0.2647,
"predicted_H": 0.5634,
"predicted_HBP": 0.03,
"predicted_HR": 0.0387,
"predicted_OBP": 0.2173,
"predicted_R": 0.4577,
"predicted_RBI": 0.3171,
"predicted_SLG": 0.2693,
"predicted_SO": 1.0536
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2216,
"after": 0.2216,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.027,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5462,
"after": 3.5462,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2367,
"after": 0.1589,
"delta": -0.0778,
"percent_delta": -0.3287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2657,
"after": 0.2647,
"delta": -0.001,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5658,
"after": 0.5634,
"delta": -0.0024,
"percent_delta": -0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.03,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0387,
"after": 0.0387,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2836,
"after": 0.2173,
"delta": -0.0663,
"percent_delta": -0.2338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4613,
"after": 0.4577,
"delta": -0.0036,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3196,
"after": 0.3171,
"delta": -0.0025,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3509,
"after": 0.2693,
"delta": -0.0816,
"percent_delta": -0.2325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0497,
"after": 1.0536,
"delta": 0.0039,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3509,
"after": 0.2693,
"delta": -0.0816,
"percent_delta": -0.2325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.55), rates preserved: AVG=0.159 HR/AB=0.011",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2216,
"after": 0.0,
"delta": -0.2216,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5462,
"after": 4.0,
"delta": 0.4538,
"percent_delta": 0.128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2647,
"after": 0.0,
"delta": -0.2647,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5634,
"after": 1.0,
"delta": 0.4366,
"percent_delta": 0.7749,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0387,
"after": 0.0,
"delta": -0.0387,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3171,
"after": 0.0,
"delta": -0.3171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0536,
"after": 1.0,
"delta": -0.0536,
"percent_delta": -0.0509,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5462,
"after": 4.0,
"delta": 0.4538,
"percent_delta": 0.128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3171,
"after": 0.0,
"delta": -0.3171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4577,
"after": 0.0,
"delta": -0.4577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4577,
"after": 0.0,
"delta": -0.4577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1589,
"after": 0.25,
"delta": 0.0911,
"percent_delta": 0.5733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2173,
"after": 0.25,
"delta": 0.0327,
"percent_delta": 0.1505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2693,
"after": 0.25,
"delta": -0.0193,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1589,
"after": 0.25,
"delta": 0.0911,
"percent_delta": 0.5733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2693,
"after": 0.25,
"delta": -0.0193,
"percent_delta": -0.0717,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1589,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2173,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2693,
"predicted_SO": 1.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1589,
"delta": -0.0911,
"percent_delta": -0.3645,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2173,
"delta": -0.0327,
"percent_delta": -0.1308,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.2693,
"delta": 0.0193,
"percent_delta": 0.0771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.2693,
"delta": 0.0193,
"percent_delta": 0.0771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1589,
"delta": -0.0911,
"percent_delta": -0.3645,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.242,
"after": 0.0,
"delta": -0.242,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.435,
"after": 3.0,
"delta": -0.435,
"percent_delta": -0.1266,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.1589,
"delta": -0.0741,
"percent_delta": -0.318,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.274,
"after": 1.0,
"delta": 0.726,
"percent_delta": 2.6496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.33,
"after": 1.0,
"delta": 0.67,
"percent_delta": 2.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.2173,
"delta": -0.0587,
"percent_delta": -0.2127,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.468,
"after": 1.0,
"delta": 0.532,
"percent_delta": 1.1368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.2693,
"delta": -0.0847,
"percent_delta": -0.2393,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.968,
"after": 1.0,
"delta": 0.032,
"percent_delta": 0.0331,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 4,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.2,
"after": 1.0,
"delta": 0.8,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.435,
"after": 3.0,
"delta": -0.435,
"percent_delta": -0.1266,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.242 | - |
| predicted_3B | 0.032 | - |
| predicted_AB | 3.435 | - |
| predicted_AVG | 0.233 | - |
| predicted_BB | 0.274 | - |
| predicted_H | 0.330 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.276 | - |
| predicted_R | 0.468 | - |
| predicted_RBI | 0.200 | - |
| predicted_SLG | 0.354 | - |
| predicted_SO | 0.968 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.222 | -0.020 |
| predicted_3B | 0.027 | -0.005 |
| predicted_AB | 3.546 | 0.111 |
| predicted_AVG | 0.237 | 0.004 |
| predicted_BB | 0.266 | -0.008 |
| predicted_H | 0.566 | 0.236 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.039 | 0.009 |
| predicted_OBP | 0.284 | 0.008 |
| predicted_R | 0.461 | -0.007 |
| predicted_RBI | 0.320 | 0.120 |
| predicted_SLG | 0.351 | -0.003 |
| predicted_SO | 1.050 | 0.082 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.222 | 0.000 |
| predicted_3B | 0.027 | 0.000 |
| predicted_AB | 3.546 | 0.000 |
| predicted_AVG | 0.159 | -0.078 |
| predicted_BB | 0.265 | -0.001 |
| predicted_H | 0.563 | -0.002 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.039 | 0.000 |
| predicted_OBP | 0.217 | -0.066 |
| predicted_R | 0.458 | -0.004 |
| predicted_RBI | 0.317 | -0.003 |
| predicted_SLG | 0.269 | -0.082 |
| predicted_SO | 1.054 | 0.004 |
AB rounded to 4 (raw=3.55), rates preserved: AVG=0.159 HR/AB=0.011
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.200)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.222 |
| predicted_3B | 0.000 | -0.027 |
| predicted_AB | 4.000 | 0.454 |
| predicted_AVG | 0.250 | 0.091 |
| predicted_BB | 0.000 | -0.265 |
| predicted_H | 1.000 | 0.437 |
| predicted_HR | 0.000 | -0.039 |
| predicted_OBP | 0.250 | 0.033 |
| predicted_R | 0.000 | -0.458 |
| predicted_RBI | 0.000 | -0.317 |
| predicted_SLG | 0.250 | -0.019 |
| predicted_SO | 1.000 | -0.054 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 9.000 | 0.1429 | 0.1818 | 0.1429 | 0.1429 | 0.0000 | 0.0476 | 0.0476 | 0.4286 |
| last_10 | 0.20 | 10 | - | 39.000 | 9.000 | 2.000 | 0.000 | 0.000 | 4.000 | 4.000 | 2.000 | 14.000 | 0.2308 | 0.2857 | 0.2821 | 0.2308 | 0.0000 | 0.1026 | 0.0513 | 0.3590 |
| season | 0.60 | 62 | - | 213.000 | 59.000 | 15.000 | 2.000 | 4.000 | 36.000 | 29.000 | 17.000 | 60.000 | 0.2770 | 0.3305 | 0.4225 | 0.2770 | 0.0188 | 0.1690 | 0.0798 | 0.2817 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1930 |
| predicted_3B | 0.0200 |
| predicted_AB | 3.7020 |
| predicted_AVG | 0.2420 |
| predicted_BB | 0.2540 |
| predicted_H | 0.8960 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.0510 |
| predicted_OBP | 0.2943 |
| predicted_R | 0.4520 |
| predicted_RBI | 0.4870 |
| predicted_SLG | 0.3466 |
| predicted_SO | 1.1640 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2420 | 0.1930 | 0.2216 | model_form_blend |
| predicted_3B | 0.0320 | 0.0200 | 0.0270 | model_form_blend |
| predicted_AB | 3.4350 | 3.7020 | 3.5462 | model_form_blend |
| predicted_AVG | 0.2330 | 0.2420 | 0.2367 | model_form_blend |
| predicted_BB | 0.2740 | 0.2540 | 0.2657 | model_form_blend |
| predicted_H | 0.3300 | 0.8960 | 0.5658 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.0300 | 0.0510 | 0.0387 | model_form_blend |
| predicted_OBP | 0.2760 | 0.2943 | 0.2836 | model_form_blend |
| predicted_R | 0.4680 | 0.4520 | 0.4613 | model_form_blend |
| predicted_RBI | 0.2000 | 0.4870 | 0.3196 | model_form_blend |
| predicted_SLG | 0.3540 | 0.3466 | 0.3509 | model_form_blend |
| predicted_SO | 0.9680 | 1.1640 | 1.0497 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 182 |
| Season rows before report date | 182 |
| Report year | 2026 |
| Profile rows used | 62 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.277 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS-CF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 677649 |
| playerID | 677649 |
| playerName | Ezequiel Duran |
| pos | 2B |
| started | True |
| startingPosition | SS |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 25.6 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.33 |
| sl_xwoba | 0.304 |
| sl_xba | 0.257 |
| sl_xslg | 0.365 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 5.8 |
| sl_hard_hit_percent | 37.2 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 10.6 |
| sl_whiff_percent | 29.5 |
| sl_swing_percent | 49.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.183 | 0.000 | 0.000 | Hitting_2B | 0.168 | 0.000 | -0.168 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.704 | 4.000 | 4.000 | Hitting_AB | 3.836 | 4.000 | 0.164 | 0.000 |
| predicted_AVG | 0.244 | 0.000 | 0.250 | Hitting_AVG | 0.239 | 0.250 | -0.239 | -0.250 |
| predicted_BB | 0.296 | 0.000 | 0.000 | Hitting_BB | 0.276 | 0.000 | -0.276 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.890 | 0.000 | 1.000 | Hitting_H | 0.918 | 1.000 | -0.918 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.172 | 0.000 | -0.172 | 0.000 |
| predicted_OBP | 0.313 | 0.000 | 0.250 | Hitting_OBP | 0.292 | 0.250 | -0.292 | -0.250 |
| predicted_R | 0.451 | 0.000 | 0.000 | Hitting_R | 0.474 | 0.000 | -0.474 | 0.000 |
| predicted_RBI | 0.480 | 0.000 | 1.000 | Hitting_RBI | 0.659 | 0.000 | -0.659 | 0.000 |
| predicted_SLG | 0.429 | 0.000 | 0.250 | Hitting_SLG | 0.418 | 0.250 | -0.418 | -0.250 |
| predicted_SO | 1.070 | 0.000 | 1.000 | Hitting_SO | 1.155 | 1.000 | -1.155 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.7040 -> 4.0000 (boost 0.2960, better) |
| Biggest Deboost | predicted_SO: 1.0700 -> 0.0000 (deboost -1.0700, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.4290 -> 0.4408 (boost 0.0118, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4408 -> 0.4289 (deboost -0.0119, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_RBI: 0.4838 -> 1.0000 (boost 0.5162, better) | predicted_BB: 0.2966 -> 0.0000 (deboost -0.2966, worse) | AB rounded to 4 (raw=3.70), rates preserved: AVG=0.247 HR/AB=0.044 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4106 -> 0.0000 (deboost -0.4106, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4289 -> 0.2500 (deboost -0.1789, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 0 | 3 | 1 | 2 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4289 (boost 0.1789, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669394",
"player_name": "Jake Burger",
"position": "1B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.183,
"predicted_3B": 0.0,
"predicted_AB": 3.704,
"predicted_AVG": 0.244,
"predicted_BB": 0.296,
"predicted_H": 0.89,
"predicted_HR": 0.15,
"predicted_OBP": 0.313,
"predicted_R": 0.451,
"predicted_RBI": 0.48,
"predicted_SLG": 0.429,
"predicted_SO": 1.07
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.186,
"predicted_3B": 0.0004,
"predicted_AB": 3.6947,
"predicted_AVG": 0.2508,
"predicted_BB": 0.2977,
"predicted_H": 0.9183,
"predicted_HBP": 0.011,
"predicted_HR": 0.1614,
"predicted_OBP": 0.3134,
"predicted_R": 0.4138,
"predicted_RBI": 0.4876,
"predicted_SLG": 0.4408,
"predicted_SO": 1.0877
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.186,
"delta": 0.003,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.704,
"after": 3.6947,
"delta": -0.0093,
"percent_delta": -0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2508,
"delta": 0.0068,
"percent_delta": 0.0279,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.296,
"after": 0.2977,
"delta": 0.0017,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 0.9183,
"delta": 0.0283,
"percent_delta": 0.0318,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1614,
"delta": 0.0114,
"percent_delta": 0.076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3134,
"delta": 0.0004,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.451,
"after": 0.4138,
"delta": -0.0372,
"percent_delta": -0.0825,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.4876,
"delta": 0.0076,
"percent_delta": 0.0158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.429,
"after": 0.4408,
"delta": 0.0118,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.07,
"after": 1.0877,
"delta": 0.0177,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.429,
"after": 0.4408,
"delta": 0.0118,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.186,
"predicted_3B": 0.0004,
"predicted_AB": 3.6947,
"predicted_AVG": 0.2475,
"predicted_BB": 0.2966,
"predicted_H": 0.9144,
"predicted_HBP": 0.011,
"predicted_HR": 0.1612,
"predicted_OBP": 0.3034,
"predicted_R": 0.4106,
"predicted_RBI": 0.4838,
"predicted_SLG": 0.4289,
"predicted_SO": 1.0917
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.186,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6947,
"after": 3.6947,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2508,
"after": 0.2475,
"delta": -0.0033,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2977,
"after": 0.2966,
"delta": -0.0011,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9183,
"after": 0.9144,
"delta": -0.0039,
"percent_delta": -0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1614,
"after": 0.1612,
"delta": -0.0002,
"percent_delta": -0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3134,
"after": 0.3034,
"delta": -0.01,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4138,
"after": 0.4106,
"delta": -0.0032,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4876,
"after": 0.4838,
"delta": -0.0038,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4408,
"after": 0.4289,
"delta": -0.0119,
"percent_delta": -0.027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0877,
"after": 1.0917,
"delta": 0.004,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4408,
"after": 0.4289,
"delta": -0.0119,
"percent_delta": -0.027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.70), rates preserved: AVG=0.247 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.0,
"delta": -0.186,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6947,
"after": 4.0,
"delta": 0.3053,
"percent_delta": 0.0826,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2966,
"after": 0.0,
"delta": -0.2966,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9144,
"after": 1.0,
"delta": 0.0856,
"percent_delta": 0.0936,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1612,
"after": 0.0,
"delta": -0.1612,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4838,
"after": 1.0,
"delta": 0.5162,
"percent_delta": 1.067,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0917,
"after": 1.0,
"delta": -0.0917,
"percent_delta": -0.084,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4838,
"after": 1.0,
"delta": 0.5162,
"percent_delta": 1.067,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2966,
"after": 0.0,
"delta": -0.2966,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4106,
"after": 0.0,
"delta": -0.4106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4106,
"after": 0.0,
"delta": -0.4106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2475,
"after": 0.25,
"delta": 0.0025,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3034,
"after": 0.25,
"delta": -0.0534,
"percent_delta": -0.176,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4289,
"after": 0.25,
"delta": -0.1789,
"percent_delta": -0.4171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4289,
"after": 0.25,
"delta": -0.1789,
"percent_delta": -0.4171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2475,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3034,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4289,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2475,
"delta": -0.0025,
"percent_delta": -0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3034,
"delta": 0.0534,
"percent_delta": 0.2136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4289,
"delta": 0.1789,
"percent_delta": 0.7158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4289,
"delta": 0.1789,
"percent_delta": 0.7158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.0,
"delta": -0.183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.704,
"after": 4.0,
"delta": 0.296,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2475,
"delta": 0.0035,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.296,
"after": 0.0,
"delta": -0.296,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 0.0,
"delta": -0.89,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3034,
"delta": -0.0096,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.451,
"after": 0.0,
"delta": -0.451,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.429,
"after": 0.4289,
"delta": -0.0001,
"percent_delta": -0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.07,
"after": 0.0,
"delta": -1.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.704,
"after": 4.0,
"delta": 0.296,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.07,
"after": 0.0,
"delta": -1.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.704 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.296 | - |
| predicted_H | 0.890 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 0.451 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.429 | - |
| predicted_SO | 1.070 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.186 | 0.003 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.695 | -0.009 |
| predicted_AVG | 0.251 | 0.007 |
| predicted_BB | 0.298 | 0.002 |
| predicted_H | 0.918 | 0.028 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.161 | 0.011 |
| predicted_OBP | 0.313 | 0.000 |
| predicted_R | 0.414 | -0.037 |
| predicted_RBI | 0.488 | 0.008 |
| predicted_SLG | 0.441 | 0.012 |
| predicted_SO | 1.088 | 0.018 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.186 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.695 | 0.000 |
| predicted_AVG | 0.247 | -0.003 |
| predicted_BB | 0.297 | -0.001 |
| predicted_H | 0.914 | -0.004 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.161 | -0.000 |
| predicted_OBP | 0.303 | -0.010 |
| predicted_R | 0.411 | -0.003 |
| predicted_RBI | 0.484 | -0.004 |
| predicted_SLG | 0.429 | -0.012 |
| predicted_SO | 1.092 | 0.004 |
AB rounded to 4 (raw=3.70), rates preserved: AVG=0.247 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.186 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.305 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 0.000 | -0.297 |
| predicted_H | 1.000 | 0.086 |
| predicted_HR | 0.000 | -0.161 |
| predicted_OBP | 0.250 | -0.053 |
| predicted_R | 0.000 | -0.411 |
| predicted_RBI | 1.000 | 0.516 |
| predicted_SLG | 0.250 | -0.179 |
| predicted_SO | 1.000 | -0.092 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 4.000 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 | 1.000 | 8.000 | 0.2105 | 0.2500 | 0.4211 | 0.2105 | 0.0526 | 0.0526 | 0.0526 | 0.4210 |
| last_10 | 0.20 | 10 | - | 34.000 | 12.000 | 2.000 | 0.000 | 2.000 | 5.000 | 2.000 | 4.000 | 9.000 | 0.3529 | 0.4103 | 0.5882 | 0.3529 | 0.0588 | 0.1471 | 0.1177 | 0.2647 |
| season | 0.60 | 71 | - | 263.000 | 65.000 | 13.000 | 0.000 | 12.000 | 42.000 | 32.000 | 21.000 | 76.000 | 0.2471 | 0.3031 | 0.4335 | 0.2472 | 0.0456 | 0.1597 | 0.0799 | 0.2890 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1900 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6820 |
| predicted_AVG | 0.2600 |
| predicted_BB | 0.3000 |
| predicted_H | 0.9570 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.1770 |
| predicted_OBP | 0.3139 |
| predicted_R | 0.3630 |
| predicted_RBI | 0.4980 |
| predicted_SLG | 0.4570 |
| predicted_SO | 1.1120 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1830 | 0.1900 | 0.1860 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7040 | 3.6820 | 3.6947 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2600 | 0.2508 | model_form_blend |
| predicted_BB | 0.2960 | 0.3000 | 0.2977 | model_form_blend |
| predicted_H | 0.8900 | 0.9570 | 0.9183 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1500 | 0.1770 | 0.1614 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3139 | 0.3134 | model_form_blend |
| predicted_R | 0.4510 | 0.3630 | 0.4138 | model_form_blend |
| predicted_RBI | 0.4800 | 0.4980 | 0.4876 | model_form_blend |
| predicted_SLG | 0.4290 | 0.4570 | 0.4408 | model_form_blend |
| predicted_SO | 1.0700 | 1.1120 | 1.0877 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 232 |
| Season rows before report date | 232 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.247 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 669394 |
| playerID | 669394 |
| playerName | Jake Burger |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 26.5 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.322 |
| sl_xwoba | 0.305 |
| sl_xba | 0.24 |
| sl_xslg | 0.402 |
| sl_sweet_spot_percent | 32.3 |
| sl_barrel_batted_rate | 9.6 |
| sl_hard_hit_percent | 46.6 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 11.4 |
| sl_whiff_percent | 35.2 |
| sl_swing_percent | 49.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.051 | 0.000 | 0.000 | Hitting_2B | 0.082 | 0.000 | -0.082 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.615 | 3.000 | 3.000 | Hitting_AB | 2.806 | 4.000 | 0.194 | -1.000 |
| predicted_AVG | 0.258 | 0.333 | 0.333 | Hitting_AVG | 0.236 | 0.250 | 0.097 | 0.083 |
| predicted_BB | 0.282 | 1.000 | 0.000 | Hitting_BB | 0.398 | 0.000 | 0.602 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_H | 0.620 | 1.000 | 1.000 | Hitting_H | 0.663 | 1.000 | 0.337 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.309 | 0.500 | 0.333 | Hitting_OBP | 0.371 | 0.250 | 0.129 | 0.250 |
| predicted_R | 0.282 | 0.000 | 0.000 | Hitting_R | 0.347 | 1.000 | -0.347 | -1.000 |
| predicted_RBI | 0.290 | 0.000 | 0.000 | Hitting_RBI | 0.245 | 0.000 | -0.245 | 0.000 |
| predicted_SLG | 0.307 | 0.333 | 0.333 | Hitting_SLG | 0.265 | 0.250 | 0.068 | 0.083 |
| predicted_SO | 0.436 | 0.000 | 1.000 | Hitting_SO | 0.510 | 1.000 | -0.510 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.2820 -> 1.0000 (boost 0.7180, better) |
| Biggest Deboost | predicted_SO: 0.4360 -> 0.0000 (deboost -0.4360, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AB: 2.6150 -> 2.7804 (boost 0.1654, better) | predicted_SLG: 0.3070 -> 0.2926 (deboost -0.0144, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2465 -> 0.2325 (deboost -0.0140, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.4750 -> 1.0000 (boost 0.5250, worse) | predicted_RBI: 0.2800 -> 0.0000 (deboost -0.2800, worse) | AB rounded to 3 (raw=2.78), rates preserved: AVG=0.233 HR/AB=0.014 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3038 -> 0.0000 (deboost -0.3038, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2325 -> 0.3330 (boost 0.1005, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2325 (deboost -0.1005, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "696030",
"player_name": "Alejandro Osuna",
"position": "CF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.051,
"predicted_3B": 0.0,
"predicted_AB": 2.615,
"predicted_AVG": 0.258,
"predicted_BB": 0.282,
"predicted_H": 0.62,
"predicted_HR": 0.05,
"predicted_OBP": 0.309,
"predicted_R": 0.282,
"predicted_RBI": 0.29,
"predicted_SLG": 0.307,
"predicted_SO": 0.436
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0537,
"predicted_3B": 0.0008,
"predicted_AB": 2.7804,
"predicted_AVG": 0.2465,
"predicted_BB": 0.2695,
"predicted_H": 0.6493,
"predicted_HBP": 0.107,
"predicted_HR": 0.0387,
"predicted_OBP": 0.3088,
"predicted_R": 0.3062,
"predicted_RBI": 0.2822,
"predicted_SLG": 0.2926,
"predicted_SO": 0.4732
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.051,
"after": 0.0537,
"delta": 0.0027,
"percent_delta": 0.0529,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.615,
"after": 2.7804,
"delta": 0.1654,
"percent_delta": 0.0633,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2465,
"delta": -0.0115,
"percent_delta": -0.0446,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.282,
"after": 0.2695,
"delta": -0.0125,
"percent_delta": -0.0443,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.6493,
"delta": 0.0293,
"percent_delta": 0.0473,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0387,
"delta": -0.0113,
"percent_delta": -0.226,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3088,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.282,
"after": 0.3062,
"delta": 0.0242,
"percent_delta": 0.0858,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.2822,
"delta": -0.0078,
"percent_delta": -0.0269,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.307,
"after": 0.2926,
"delta": -0.0144,
"percent_delta": -0.0469,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.436,
"after": 0.4732,
"delta": 0.0372,
"percent_delta": 0.0853,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.615,
"after": 2.7804,
"delta": 0.1654,
"percent_delta": 0.0633,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.307,
"after": 0.2926,
"delta": -0.0144,
"percent_delta": -0.0469,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 39
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0537,
"predicted_3B": 0.0008,
"predicted_AB": 2.7804,
"predicted_AVG": 0.2325,
"predicted_BB": 0.2685,
"predicted_H": 0.6465,
"predicted_HBP": 0.107,
"predicted_HR": 0.0387,
"predicted_OBP": 0.3001,
"predicted_R": 0.3038,
"predicted_RBI": 0.28,
"predicted_SLG": 0.2941,
"predicted_SO": 0.475
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0537,
"after": 0.0537,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7804,
"after": 2.7804,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2465,
"after": 0.2325,
"delta": -0.014,
"percent_delta": -0.0568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2695,
"after": 0.2685,
"delta": -0.001,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6493,
"after": 0.6465,
"delta": -0.0028,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.107,
"after": 0.107,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0387,
"after": 0.0387,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3088,
"after": 0.3001,
"delta": -0.0087,
"percent_delta": -0.0282,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3062,
"after": 0.3038,
"delta": -0.0024,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2822,
"after": 0.28,
"delta": -0.0022,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2926,
"after": 0.2941,
"delta": 0.0015,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.4732,
"after": 0.475,
"delta": 0.0018,
"percent_delta": 0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2465,
"after": 0.2325,
"delta": -0.014,
"percent_delta": -0.0568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.78), rates preserved: AVG=0.233 HR/AB=0.014",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0537,
"after": 0.0,
"delta": -0.0537,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7804,
"after": 3.0,
"delta": 0.2196,
"percent_delta": 0.079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2685,
"after": 0.0,
"delta": -0.2685,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6465,
"after": 1.0,
"delta": 0.3535,
"percent_delta": 0.5468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.107,
"after": 0.0,
"delta": -0.107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0387,
"after": 0.0,
"delta": -0.0387,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.0,
"delta": -0.28,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.475,
"after": 1.0,
"delta": 0.525,
"percent_delta": 1.1053,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.475,
"after": 1.0,
"delta": 0.525,
"percent_delta": 1.1053,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.0,
"delta": -0.28,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3038,
"after": 0.0,
"delta": -0.3038,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3038,
"after": 0.0,
"delta": -0.3038,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2325,
"after": 0.333,
"delta": 0.1005,
"percent_delta": 0.4323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3001,
"after": 0.333,
"delta": 0.0329,
"percent_delta": 0.1096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2941,
"after": 0.333,
"delta": 0.0389,
"percent_delta": 0.1323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2325,
"after": 0.333,
"delta": 0.1005,
"percent_delta": 0.4323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2325,
"predicted_BB": 1.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3001,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2941,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2325,
"delta": -0.1005,
"percent_delta": -0.3017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3001,
"delta": -0.0329,
"percent_delta": -0.0988,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2941,
"delta": -0.0389,
"percent_delta": -0.1167,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2325,
"delta": -0.1005,
"percent_delta": -0.3017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.615,
"after": 3.0,
"delta": 0.385,
"percent_delta": 0.1472,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2325,
"delta": -0.0255,
"percent_delta": -0.0988,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.282,
"after": 1.0,
"delta": 0.718,
"percent_delta": 2.5461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 1.0,
"delta": 0.38,
"percent_delta": 0.6129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3001,
"delta": -0.0089,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.282,
"after": 0.0,
"delta": -0.282,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.307,
"after": 0.2941,
"delta": -0.0129,
"percent_delta": -0.042,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.436,
"after": 0.0,
"delta": -0.436,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.282,
"after": 1.0,
"delta": 0.718,
"percent_delta": 2.5461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.436,
"after": 0.0,
"delta": -0.436,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.051 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.615 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.282 | - |
| predicted_H | 0.620 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.282 | - |
| predicted_RBI | 0.290 | - |
| predicted_SLG | 0.307 | - |
| predicted_SO | 0.436 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.054 | 0.003 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.780 | 0.165 |
| predicted_AVG | 0.246 | -0.012 |
| predicted_BB | 0.270 | -0.012 |
| predicted_H | 0.649 | 0.029 |
| predicted_HBP | 0.107 | - |
| predicted_HR | 0.039 | -0.011 |
| predicted_OBP | 0.309 | -0.000 |
| predicted_R | 0.306 | 0.024 |
| predicted_RBI | 0.282 | -0.008 |
| predicted_SLG | 0.293 | -0.014 |
| predicted_SO | 0.473 | 0.037 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.054 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.780 | 0.000 |
| predicted_AVG | 0.233 | -0.014 |
| predicted_BB | 0.269 | -0.001 |
| predicted_H | 0.646 | -0.003 |
| predicted_HBP | 0.107 | 0.000 |
| predicted_HR | 0.039 | 0.000 |
| predicted_OBP | 0.300 | -0.009 |
| predicted_R | 0.304 | -0.002 |
| predicted_RBI | 0.280 | -0.002 |
| predicted_SLG | 0.294 | 0.001 |
| predicted_SO | 0.475 | 0.002 |
AB rounded to 3 (raw=2.78), rates preserved: AVG=0.233 HR/AB=0.014
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.054 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.220 |
| predicted_AVG | 0.333 | 0.101 |
| predicted_BB | 0.000 | -0.269 |
| predicted_H | 1.000 | 0.354 |
| predicted_HR | 0.000 | -0.039 |
| predicted_OBP | 0.333 | 0.033 |
| predicted_R | 0.000 | -0.304 |
| predicted_RBI | 0.000 | -0.280 |
| predicted_SLG | 0.333 | 0.039 |
| predicted_SO | 1.000 | 0.525 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 3.000 | 0.1875 | 0.2353 | 0.1875 | 0.1875 | 0.0000 | 0.0625 | 0.0625 | 0.1875 |
| last_10 | 0.20 | 10 | - | 31.000 | 6.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 1.000 | 4.000 | 0.1935 | 0.2424 | 0.1935 | 0.1935 | 0.0000 | 0.0645 | 0.0323 | 0.1290 |
| season | 0.60 | 39 | - | 102.000 | 25.000 | 2.000 | 0.000 | 0.000 | 9.000 | 11.000 | 11.000 | 17.000 | 0.2451 | 0.3529 | 0.2647 | 0.2451 | 0.0000 | 0.0882 | 0.1078 | 0.1667 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0580 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.0380 |
| predicted_AVG | 0.2287 |
| predicted_BB | 0.2500 |
| predicted_H | 0.6950 |
| predicted_HBP | 0.1070 |
| predicted_HR | 0.0210 |
| predicted_OBP | 0.3085 |
| predicted_R | 0.3440 |
| predicted_RBI | 0.2700 |
| predicted_SLG | 0.2702 |
| predicted_SO | 0.5310 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0510 | 0.0580 | 0.0537 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.6150 | 3.0380 | 2.7804 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2287 | 0.2465 | model_form_blend |
| predicted_BB | 0.2820 | 0.2500 | 0.2695 | model_form_blend |
| predicted_H | 0.6200 | 0.6950 | 0.6493 | model_form_blend |
| predicted_HBP | - | 0.1070 | 0.1070 | form_only |
| predicted_HR | 0.0500 | 0.0210 | 0.0387 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3085 | 0.3088 | model_form_blend |
| predicted_R | 0.2820 | 0.3440 | 0.3062 | model_form_blend |
| predicted_RBI | 0.2900 | 0.2700 | 0.2822 | model_form_blend |
| predicted_SLG | 0.3070 | 0.2702 | 0.2926 | model_form_blend |
| predicted_SO | 0.4360 | 0.5310 | 0.4732 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 98 |
| Season rows before report date | 98 |
| Report year | 2026 |
| Profile rows used | 39 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.245 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF-RF |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 696030 |
| playerID | 696030 |
| playerName | Alejandro Osuna |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 14.0 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.299 |
| sl_xwoba | 0.317 |
| sl_xba | 0.259 |
| sl_xslg | 0.31 |
| sl_sweet_spot_percent | 29.1 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 32.6 |
| sl_exit_velocity_avg | 88.0 |
| sl_launch_angle_avg | 3.2 |
| sl_whiff_percent | 16.3 |
| sl_swing_percent | 48.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.083 | 0.000 | 0.000 | Hitting_2B | 0.057 | 0.000 | -0.057 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.194 | 4.000 | 3.000 | Hitting_AB | 3.257 | 0.000 | 0.743 | 4.000 |
| predicted_AVG | 0.239 | 0.000 | 0.333 | Hitting_AVG | 0.199 | - | -0.199 | - |
| predicted_BB | 0.333 | 0.000 | 0.000 | Hitting_BB | 0.371 | 0.000 | -0.371 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.250 | 0.000 | 1.000 | Hitting_H | 0.648 | 0.000 | -0.648 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.124 | 0.000 | -0.124 | 0.000 |
| predicted_OBP | 0.296 | 0.000 | 0.333 | Hitting_OBP | 0.286 | - | -0.286 | - |
| predicted_R | 0.417 | 0.000 | 0.000 | Hitting_R | 0.371 | 0.000 | -0.371 | 0.000 |
| predicted_RBI | 0.170 | 0.000 | 0.000 | Hitting_RBI | 0.362 | 0.000 | -0.362 | 0.000 |
| predicted_SLG | 0.397 | 0.000 | 0.333 | Hitting_SLG | 0.330 | - | -0.330 | - |
| predicted_SO | 0.917 | 1.000 | 1.000 | Hitting_SO | 1.067 | 0.000 | -0.067 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_AB: 3.1940 -> 4.0000 (boost 0.8060, better) |
| Biggest Deboost | predicted_R: 0.4170 -> 0.0000 (deboost -0.4170, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.2500 -> 0.4697 (boost 0.2197, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4060 -> 0.2590 (deboost -0.1470, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.8824 -> 1.0000 (boost 0.1176, worse) | predicted_H: 0.4677 -> 0.0000 (deboost -0.4677, worse) | AB rounded to 3 (raw=3.25), rates preserved: AVG=0.144 HR/AB=0.029 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.4177 -> 0.0000 (deboost -0.4177, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1441 -> 0.3330 (boost 0.1889, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1441 (deboost -0.1889, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "543309",
"player_name": "Kyle Higashioka",
"position": "C",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.083,
"predicted_3B": 0.0,
"predicted_AB": 3.194,
"predicted_AVG": 0.239,
"predicted_BB": 0.333,
"predicted_H": 0.25,
"predicted_HR": 0.05,
"predicted_OBP": 0.296,
"predicted_R": 0.417,
"predicted_RBI": 0.17,
"predicted_SLG": 0.397,
"predicted_SO": 0.917
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0925,
"predicted_3B": 0.0008,
"predicted_AB": 3.2453,
"predicted_AVG": 0.2405,
"predicted_BB": 0.3468,
"predicted_H": 0.4697,
"predicted_HBP": 0.02,
"predicted_HR": 0.093,
"predicted_OBP": 0.3063,
"predicted_R": 0.4209,
"predicted_RBI": 0.2864,
"predicted_SLG": 0.406,
"predicted_SO": 0.8791
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.083,
"after": 0.0925,
"delta": 0.0095,
"percent_delta": 0.1145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.194,
"after": 3.2453,
"delta": 0.0513,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2405,
"delta": 0.0015,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.3468,
"delta": 0.0138,
"percent_delta": 0.0414,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.25,
"after": 0.4697,
"delta": 0.2197,
"percent_delta": 0.8788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.093,
"delta": 0.043,
"percent_delta": 0.86,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.296,
"after": 0.3063,
"delta": 0.0103,
"percent_delta": 0.0348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.417,
"after": 0.4209,
"delta": 0.0039,
"percent_delta": 0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.2864,
"delta": 0.1164,
"percent_delta": 0.6847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.406,
"delta": 0.009,
"percent_delta": 0.0227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.917,
"after": 0.8791,
"delta": -0.0379,
"percent_delta": -0.0413,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.25,
"after": 0.4697,
"delta": 0.2197,
"percent_delta": 0.8788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 36
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0925,
"predicted_3B": 0.0008,
"predicted_AB": 3.2453,
"predicted_AVG": 0.1441,
"predicted_BB": 0.3455,
"predicted_H": 0.4677,
"predicted_HBP": 0.02,
"predicted_HR": 0.0929,
"predicted_OBP": 0.2265,
"predicted_R": 0.4177,
"predicted_RBI": 0.2842,
"predicted_SLG": 0.259,
"predicted_SO": 0.8824
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0925,
"after": 0.0925,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2453,
"after": 3.2453,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2405,
"after": 0.1441,
"delta": -0.0964,
"percent_delta": -0.4008,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3468,
"after": 0.3455,
"delta": -0.0013,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4697,
"after": 0.4677,
"delta": -0.002,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.093,
"after": 0.0929,
"delta": -0.0001,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3063,
"after": 0.2265,
"delta": -0.0798,
"percent_delta": -0.2605,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4209,
"after": 0.4177,
"delta": -0.0032,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2864,
"after": 0.2842,
"delta": -0.0022,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.259,
"delta": -0.147,
"percent_delta": -0.3621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8791,
"after": 0.8824,
"delta": 0.0033,
"percent_delta": 0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.259,
"delta": -0.147,
"percent_delta": -0.3621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.25), rates preserved: AVG=0.144 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0925,
"after": 0.0,
"delta": -0.0925,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2453,
"after": 3.0,
"delta": -0.2453,
"percent_delta": -0.0756,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3455,
"after": 0.0,
"delta": -0.3455,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4677,
"after": 0.0,
"delta": -0.4677,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0929,
"after": 0.0,
"delta": -0.0929,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2842,
"after": 0.0,
"delta": -0.2842,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8824,
"after": 1.0,
"delta": 0.1176,
"percent_delta": 0.1333,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8824,
"after": 1.0,
"delta": 0.1176,
"percent_delta": 0.1333,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4677,
"after": 0.0,
"delta": -0.4677,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4177,
"after": 0.0,
"delta": -0.4177,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4177,
"after": 0.0,
"delta": -0.4177,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1441,
"after": 0.333,
"delta": 0.1889,
"percent_delta": 1.3109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2265,
"after": 0.333,
"delta": 0.1065,
"percent_delta": 0.4702,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.259,
"after": 0.333,
"delta": 0.074,
"percent_delta": 0.2857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1441,
"after": 0.333,
"delta": 0.1889,
"percent_delta": 1.3109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1441,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2265,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.259,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1441,
"delta": -0.1889,
"percent_delta": -0.5672,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2265,
"delta": -0.1065,
"percent_delta": -0.3199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.259,
"delta": -0.074,
"percent_delta": -0.2223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1441,
"delta": -0.1889,
"percent_delta": -0.5672,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.083,
"after": 0.0,
"delta": -0.083,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.194,
"after": 4.0,
"delta": 0.806,
"percent_delta": 0.2523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.1441,
"delta": -0.0949,
"percent_delta": -0.3971,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.296,
"after": 0.2265,
"delta": -0.0695,
"percent_delta": -0.2348,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.417,
"after": 0.0,
"delta": -0.417,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.259,
"delta": -0.138,
"percent_delta": -0.3476,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.917,
"after": 1.0,
"delta": 0.083,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.194,
"after": 4.0,
"delta": 0.806,
"percent_delta": 0.2523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.417,
"after": 0.0,
"delta": -0.417,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.083 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.194 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.333 | - |
| predicted_H | 0.250 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.296 | - |
| predicted_R | 0.417 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.397 | - |
| predicted_SO | 0.917 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.092 | 0.009 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.245 | 0.051 |
| predicted_AVG | 0.240 | 0.002 |
| predicted_BB | 0.347 | 0.014 |
| predicted_H | 0.470 | 0.220 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.093 | 0.043 |
| predicted_OBP | 0.306 | 0.010 |
| predicted_R | 0.421 | 0.004 |
| predicted_RBI | 0.286 | 0.116 |
| predicted_SLG | 0.406 | 0.009 |
| predicted_SO | 0.879 | -0.038 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.092 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.245 | 0.000 |
| predicted_AVG | 0.144 | -0.096 |
| predicted_BB | 0.345 | -0.001 |
| predicted_H | 0.468 | -0.002 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.093 | -0.000 |
| predicted_OBP | 0.227 | -0.080 |
| predicted_R | 0.418 | -0.003 |
| predicted_RBI | 0.284 | -0.002 |
| predicted_SLG | 0.259 | -0.147 |
| predicted_SO | 0.882 | 0.003 |
AB rounded to 3 (raw=3.25), rates preserved: AVG=0.144 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.092 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.245 |
| predicted_AVG | 0.333 | 0.189 |
| predicted_BB | 0.000 | -0.345 |
| predicted_H | 1.000 | 0.532 |
| predicted_HR | 0.000 | -0.093 |
| predicted_OBP | 0.333 | 0.107 |
| predicted_R | 0.000 | -0.418 |
| predicted_RBI | 0.000 | -0.284 |
| predicted_SLG | 0.333 | 0.074 |
| predicted_SO | 1.000 | 0.118 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 2.000 | 3.000 | 0.1875 | 0.2778 | 0.3750 | 0.1875 | 0.0625 | 0.1875 | 0.1250 | 0.1875 |
| last_10 | 0.20 | 10 | - | 32.000 | 10.000 | 2.000 | 0.000 | 2.000 | 5.000 | 6.000 | 5.000 | 7.000 | 0.3125 | 0.4054 | 0.5625 | 0.3125 | 0.0625 | 0.1562 | 0.1562 | 0.2188 |
| season | 0.60 | 36 | - | 115.000 | 27.000 | 3.000 | 0.000 | 5.000 | 14.000 | 15.000 | 12.000 | 33.000 | 0.2348 | 0.3125 | 0.3913 | 0.2348 | 0.0435 | 0.1217 | 0.1043 | 0.2870 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1070 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.3240 |
| predicted_AVG | 0.2427 |
| predicted_BB | 0.3680 |
| predicted_H | 0.8070 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.1590 |
| predicted_OBP | 0.3221 |
| predicted_R | 0.4270 |
| predicted_RBI | 0.4650 |
| predicted_SLG | 0.4199 |
| predicted_SO | 0.8210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0830 | 0.1070 | 0.0925 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.1940 | 3.3240 | 3.2453 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2427 | 0.2405 | model_form_blend |
| predicted_BB | 0.3330 | 0.3680 | 0.3468 | model_form_blend |
| predicted_H | 0.2500 | 0.8070 | 0.4697 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.0500 | 0.1590 | 0.0930 | model_form_blend |
| predicted_OBP | 0.2960 | 0.3221 | 0.3063 | model_form_blend |
| predicted_R | 0.4170 | 0.4270 | 0.4209 | model_form_blend |
| predicted_RBI | 0.1700 | 0.4650 | 0.2864 | model_form_blend |
| predicted_SLG | 0.3970 | 0.4199 | 0.4060 | model_form_blend |
| predicted_SO | 0.9170 | 0.8210 | 0.8791 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 105 |
| Season rows before report date | 105 |
| Report year | 2026 |
| Profile rows used | 36 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 2 |
| Pitching_ERA | 18.00 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 543309 |
| playerID | 543309 |
| playerName | Kyle Higashioka |
| pos | C |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.314 |
| sl_xwoba | 0.309 |
| sl_xba | 0.237 |
| sl_xslg | 0.382 |
| sl_sweet_spot_percent | 36.6 |
| sl_barrel_batted_rate | 11.0 |
| sl_hard_hit_percent | 37.8 |
| sl_exit_velocity_avg | 88.0 |
| sl_launch_angle_avg | 15.5 |
| sl_whiff_percent | 29.2 |
| sl_swing_percent | 42.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 2.357 | 2.000 | -1.357 | -1.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 3.000 | 5.000 | -1.000 | -3.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 5.286 | 8.000 | -0.286 | -3.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 5.229 | 5.000 | -0.129 | 0.100 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 5.643 | 3.000 | -1.643 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "683004",
"player_name": "Jack Leiter",
"position": "Starter",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 5.3333,
"predicted_SO": 4.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 5.1,
"predicted_R": 2.0,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.333 | - |
| predicted_SO | 4.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 26.100 | 18.000 | 28.000 | 12.000 | 24.000 | 4.000 | 6.1519 | 1.5190 | 0.6835 | 1.0633 | 0.4557 | 0.9114 | 0.1519 |
| last_10 | 0.35 | 10 | 55.200 | 31.000 | 53.000 | 24.000 | 55.000 | 9.000 | 5.0120 | 1.3832 | 0.5569 | 0.9521 | 0.4311 | 0.9880 | 0.1617 |
| season | 0.20 | 14 | 76.000 | 42.000 | 74.000 | 33.000 | 79.000 | 12.000 | 4.9737 | 1.4079 | 0.5526 | 0.9737 | 0.4342 | 1.0395 | 0.1579 |
| Metric | Value |
|---|---|
| predicted_BB | 2.2860 |
| predicted_ER | 3.1620 |
| predicted_ERA | 5.2517 |
| predicted_H | 5.4080 |
| predicted_HR | 0.8330 |
| predicted_IP | 5.1000 |
| predicted_SO | 5.1860 |
| predicted_WHIP | 1.4198 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.2860 | 1.6929 | model_form_blend |
| predicted_ER | 2.0000 | 3.1620 | 2.6261 | model_form_blend |
| predicted_ERA | - | 5.2517 | 5.2517 | form_only |
| predicted_H | 5.0000 | 5.4080 | 5.2198 | model_form_blend |
| predicted_HR | 1.0000 | 0.8330 | 0.9100 | model_form_blend |
| predicted_IP | 5.1000 | 5.1000 | 5.1000 | model_form_blend |
| predicted_SO | 4.0000 | 5.1860 | 4.6390 | model_form_blend |
| predicted_WHIP | - | 1.4198 | 1.4198 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.1 |
| H | 5 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 4 |
| HR | 1 |
| BF | 22 |
| Pitches | 95 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 25 |
| Pitching_ER | 5 |
| Pitching_ERA | 4.97 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 3 |
| Pitching_H | 8 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 103 |
| Pitching_R | 6 |
| Pitching_SO | 3 |
| Pitching_Strikes | 63 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_TEX@BOS |
| game_type | full |
| mlbID | 683004 |
| playerID | 683004 |
| playerName | Jack Leiter |
| pos | P |
| started | True |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-12 |
| sl_k_percent | 23.6 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.332 |
| sl_xwoba | 0.333 |
| sl_sweet_spot_percent | 37.0 |
| sl_barrel_batted_rate | 10.0 |
| sl_hard_hit_percent | 40.2 |
| sl_whiff_percent | 25.5 |
| sl_swing_percent | 47.5 |
| sl_avg_best_speed | 76.377876881 |
| sl_avg_hyper_speed | 94.079739358 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.269 | 0.000 | -0.269 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.231 | 0.000 | 0.769 | 1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.500 | 0.000 | 1.500 | 2.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 1.219 | 1.100 | -0.119 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.346 | 2.000 | -1.346 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656641",
"player_name": "Jacob Latz",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.3333,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.1,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 7.100 | 0.000 | 2.000 | 2.000 | 11.000 | 0.000 | 0.0000 | 0.5455 | 0.0000 | 0.2727 | 0.2727 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 14.200 | 1.000 | 5.000 | 2.000 | 19.000 | 1.000 | 0.6136 | 0.4773 | 0.0682 | 0.3409 | 0.1364 | 1.2954 | 0.0682 |
| season | 0.20 | 25 | 33.100 | 3.000 | 10.000 | 6.000 | 35.000 | 2.000 | 0.8100 | 0.4800 | 0.0900 | 0.3000 | 0.1800 | 1.0500 | 0.0600 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3650 |
| predicted_ER | 0.3190 |
| predicted_ERA | 2.1545 |
| predicted_H | 0.7880 |
| predicted_HR | 0.1110 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.5550 |
| predicted_WHIP | 0.8651 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3650 | 0.1709 | model_form_blend |
| predicted_ER | 1.0000 | 0.3190 | 0.6812 | model_form_blend |
| predicted_ERA | - | 2.1545 | 2.1545 | form_only |
| predicted_H | 2.0000 | 0.7880 | 1.4325 | model_form_blend |
| predicted_HR | 1.0000 | 0.1110 | 0.5838 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 0.0000 | 1.5550 | 0.7280 | model_form_blend |
| predicted_WHIP | - | 0.8651 | 0.8651 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 26 |
| Season rows before report date | 26 |
| Report year | 2026 |
| Profile rows used | 25 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 0 |
| HR | 1 |
| BF | 6 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.62 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 24 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260614_TEX@BOS |
| game_type | full |
| mlbID | 656641 |
| playerID | 656641 |
| playerName | Jacob Latz |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-14 |
| sl_k_percent | 29.2 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.173 |
| sl_xwoba | 0.236 |
| sl_sweet_spot_percent | 20.5 |
| sl_barrel_batted_rate | 6.4 |
| sl_hard_hit_percent | 42.3 |
| sl_whiff_percent | 29.3 |
| sl_swing_percent | 48.9 |
| sl_avg_best_speed | 79.139527949 |
| sl_avg_hyper_speed | 94.041902564 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.240 | 1.000 | -0.240 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.760 | 3.000 | -0.760 | -3.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.108 | 0.200 | -0.108 | 0.800 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.840 | 1.000 | -0.840 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "596001",
"player_name": "Jakob Junis",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 2.000 | 7.000 | 0.000 | 8.000 | 0.000 | 3.3750 | 1.3125 | 0.3750 | 1.3125 | 0.0000 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 13.000 | 3.000 | 11.000 | 0.000 | 14.000 | 0.000 | 2.0769 | 0.8462 | 0.2308 | 0.8461 | 0.0000 | 1.0769 | 0.0000 |
| season | 0.20 | 25 | 29.100 | 6.000 | 19.000 | 5.000 | 21.000 | 0.000 | 1.8409 | 0.8182 | 0.2046 | 0.6477 | 0.1704 | 0.7159 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2040 |
| predicted_ER | 0.4260 |
| predicted_ERA | 3.4889 |
| predicted_H | 1.0950 |
| predicted_HR | 0.0740 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1820 |
| predicted_WHIP | 1.1829 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2040 | 0.6379 | model_form_blend |
| predicted_ER | 0.0000 | 0.4260 | 0.1938 | model_form_blend |
| predicted_ERA | - | 3.4889 | 3.4889 | form_only |
| predicted_H | 0.0000 | 1.0950 | 0.4981 | model_form_blend |
| predicted_HR | 0.0000 | 0.0740 | 0.0337 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1820 | 0.5376 | model_form_blend |
| predicted_WHIP | - | 1.1829 | 1.1829 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 25 |
| Season rows before report date | 25 |
| Report year | 2026 |
| Profile rows used | 25 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 1.84 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 16 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260614_TEX@BOS |
| game_type | full |
| mlbID | 596001 |
| playerID | 596001 |
| playerName | Jakob Junis |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-14 |
| sl_k_percent | 18.6 |
| sl_bb_percent | 4.4 |
| sl_woba | 0.213 |
| sl_xwoba | 0.289 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 3.6 |
| sl_hard_hit_percent | 31.0 |
| sl_whiff_percent | 18.9 |
| sl_swing_percent | 47.9 |
| sl_avg_best_speed | 75.26397119 |
| sl_avg_hyper_speed | 92.691576429 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.320 | 0.000 | -0.320 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.560 | 2.000 | 0.440 | -1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.960 | 2.000 | 1.040 | 0.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.736 | 0.200 | -0.536 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.000 | 2.000 | 0.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "668390",
"player_name": "Cole Winn",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 0.6667,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 0.2,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.200 | 4.000 | 4.000 | 1.000 | 3.000 | 0.000 | 9.8182 | 1.3636 | 1.0909 | 1.0909 | 0.2727 | 0.8182 | 0.0000 |
| last_10 | 0.35 | 10 | 8.000 | 6.000 | 12.000 | 2.000 | 9.000 | 0.000 | 6.7500 | 1.7500 | 0.7500 | 1.5000 | 0.2500 | 1.1250 | 0.0000 |
| season | 0.20 | 25 | 21.200 | 14.000 | 24.000 | 8.000 | 25.000 | 3.000 | 5.8154 | 1.4769 | 0.6462 | 1.1077 | 0.3692 | 1.1539 | 0.1385 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2280 |
| predicted_ER | 0.4730 |
| predicted_ERA | 6.0972 |
| predicted_H | 0.7640 |
| predicted_HR | 0.0640 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6720 |
| predicted_WHIP | 1.4224 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2280 | 0.0964 | model_form_blend |
| predicted_ER | 1.0000 | 0.4730 | 0.7771 | model_form_blend |
| predicted_ERA | - | 6.0972 | 6.0972 | form_only |
| predicted_H | 2.0000 | 0.7640 | 1.4773 | model_form_blend |
| predicted_HR | 1.0000 | 0.0640 | 0.6042 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6720 | 0.8613 | model_form_blend |
| predicted_WHIP | - | 1.4224 | 1.4224 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 25 |
| Season rows before report date | 25 |
| Report year | 2026 |
| Profile rows used | 25 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| HR | 1 |
| BF | 4 |
| Pitches | 14 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 2 |
| Pitching_ERA | 5.82 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 18 |
| Pitching_R | 2 |
| Pitching_SO | 2 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260613_TEX@BOS |
| game_type | full |
| mlbID | 668390 |
| playerID | 668390 |
| playerName | Cole Winn |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-13 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.33 |
| sl_xwoba | 0.333 |
| sl_sweet_spot_percent | 39.1 |
| sl_barrel_batted_rate | 4.7 |
| sl_hard_hit_percent | 48.4 |
| sl_whiff_percent | 27.0 |
| sl_swing_percent | 52.7 |
| sl_avg_best_speed | 78.659129375 |
| sl_avg_hyper_speed | 95.035447344 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.300 | 1.000 | -0.300 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.133 | 3.000 | -1.133 | -3.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.860 | 2.000 | -0.660 | -1.800 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.767 | 1.000 | 1.233 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "641302",
"player_name": "Tyler Alexander",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 4.000 | 9.000 | 1.000 | 4.000 | 0.000 | 6.7500 | 1.8750 | 0.7500 | 1.6875 | 0.1875 | 0.7500 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 5.000 | 11.000 | 3.000 | 7.000 | 1.000 | 5.0000 | 1.5556 | 0.5556 | 1.2222 | 0.3333 | 0.7778 | 0.1111 |
| season | 0.20 | 30 | 30.000 | 10.000 | 34.000 | 9.000 | 23.000 | 2.000 | 3.0000 | 1.4333 | 0.3333 | 1.1333 | 0.3000 | 0.7667 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2610 |
| predicted_ER | 0.4700 |
| predicted_ERA | 4.9863 |
| predicted_H | 1.0290 |
| predicted_HR | 0.0810 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7150 |
| predicted_WHIP | 1.5208 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2610 | 0.1193 | model_form_blend |
| predicted_ER | 0.0000 | 0.4700 | 0.2149 | model_form_blend |
| predicted_ERA | - | 4.9863 | 4.9863 | form_only |
| predicted_H | 0.0000 | 1.0290 | 0.4705 | model_form_blend |
| predicted_HR | 0.0000 | 0.0810 | 0.0370 | model_form_blend |
| predicted_IP | 0.2000 | 1.0000 | 0.2000 | model_form_blend |
| predicted_SO | 2.0000 | 0.7150 | 1.4125 | model_form_blend |
| predicted_WHIP | - | 1.5208 | 1.5208 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 30 |
| Season rows before report date | 30 |
| Report year | 2026 |
| Profile rows used | 30 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 2 |
| Pitches | 15 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 9 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.00 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 3 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.0 |
| Pitching_Pitches | 29 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_MIN@TEX |
| game_type | full |
| mlbID | 641302 |
| playerID | 641302 |
| playerName | Tyler Alexander |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-16 |
| sl_k_percent | 17.4 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.334 |
| sl_xwoba | 0.287 |
| sl_sweet_spot_percent | 24.7 |
| sl_barrel_batted_rate | 3.1 |
| sl_hard_hit_percent | 32.0 |
| sl_whiff_percent | 17.1 |
| sl_swing_percent | 44.9 |
| sl_avg_best_speed | 75.575367083 |
| sl_avg_hyper_speed | 92.981063158 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | NYM 4 - 3 PHI | NYM | 0.588 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | NYM 4 - 2 PHI | NYM | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.8000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5875 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 7.354 | 4.686 | - | Base ML historical model prediction |
| 2 | variance_applied | 7 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 4 | 3 | 0.5875 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 4 | 3 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 4 | 3 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4238741721854305,
"base_low_score_probability": 0.4155629139072848,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.008311258278145717,
"confidence": 0.61,
"factors": {
"environmental": 1.02,
"pitcher_form": 1.0,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.02
},
"prediction": "normal_scoring",
"expected_total_runs": 7,
"pre_simulation_expected_total_runs": 9.8,
"low_score_model_expected_total_runs": 9.8,
"final_simulation_total_runs": 6,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 41,
"near_bucket_sample_size": 41,
"medium_bucket_sample_size": 153,
"wide_bucket_sample_size": 242,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.6098,
"bayesian_hit_rate": 0.5763,
"sample_weight": 0.5907,
"prior_strength": 18.0,
"reliability": 0.6949,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6275,
"calibrated_pick_probability": 0.5875,
"predicted_side": "away"
}{
"applied": false,
"home": {
"team": "PHI",
"games": 74,
"wins": 40,
"losses": 34,
"win_pct": 0.5405405405405406,
"runs_scored": 304,
"runs_allowed": 322,
"run_differential": -18,
"run_differential_per_game": -0.24324324324324326,
"available": true
},
"away": {
"team": "NYM",
"games": 74,
"wins": 33,
"losses": 41,
"win_pct": 0.44594594594594594,
"runs_scored": 300,
"runs_allowed": 317,
"run_differential": -17,
"run_differential_per_game": -0.22972972972972974,
"available": true
},
"run_differential_edge_per_game": -0.0135,
"win_pct_edge": 0.0946,
"quality_edge": 0.1284,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "NYM",
"guardrail_predicted_team": "NYM",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "NYM",
"output_opponent_team": "PHI",
"final_score_winner": "NYM",
"pre_simulation_winner": "NYM",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "NYM 4 - 3 PHI",
"winner": "NYM"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "NYM 4 - 2 PHI",
"winner": "NYM"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": -1,
"total_run_delta": -1,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "PHI",
"games": 74,
"wins": 40,
"losses": 34,
"win_pct": 0.5405405405405406,
"runs_scored": 304,
"runs_allowed": 322,
"run_differential": -18,
"run_differential_per_game": -0.24324324324324326,
"available": true
},
"away": {
"team": "NYM",
"games": 74,
"wins": 33,
"losses": 41,
"win_pct": 0.44594594594594594,
"runs_scored": 300,
"runs_allowed": 317,
"run_differential": -17,
"run_differential_per_game": -0.22972972972972974,
"available": true
}
}
}{
"applied": true,
"raw_margin": -2.8697,
"final_margin": -1.5,
"margin_cap": 1.5,
"season_quality_edge": 0.1284,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 4.279,
"home_runs": 2.779
}
}{
"applied": false,
"raw_confidence": 0.587516,
"final_confidence": 0.587516,
"confidence_cap": 0.63,
"score_gap": 1.5,
"calibration_sample_size": 41,
"calibration_empirical_hit_rate": 0.6098,
"calibration_bayesian_hit_rate": 0.5763,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.1284,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"local calibration sample has at least 30 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "NYM 4 - 3 PHI",
"winner": "NYM"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "NYM 4 - 2 PHI",
"winner": "NYM"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": -1,
"total_run_delta": -1,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 4,
"home_runs": 3,
"confidence": 0.5875159999999999,
"home_win_probability": 0.4124840000000001,
"away_win_probability": 0.5875159999999999,
"predicted_score_text": "NYM 4 - 3 PHI",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "NYM",
"original_runs": 4,
"run_delta": 0.3946,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 32.0,
"quality": 0.3032506444672032,
"contact": 0.43045717309120396,
"power": 0.5225215092209028,
"discipline": 0.0005393137585181437,
"xwoba": 0.33781249999999996,
"recent_xwoba": 0.33781249999999996,
"barrel": 10.115625000000001,
"ab_hard_contact": 0.09810280346567121,
"ab_bat_speed": 70.1740461010982,
"ab_strikeout_rate": 0.23908124010327053,
"available_players": 9,
"top_players": [
{
"player_id": "665742",
"player_name": "Juan Soto",
"position": "LF",
"weight": 4.0,
"quality": 1.1457149751960496,
"contact": 1.7298817468675898,
"power": 1.833503049835101,
"discipline": 1.0601667451423549,
"xwoba": 0.421,
"recent_xwoba": 0.421,
"barrel": 15.4,
"ab_hard_contact": 0.9272038538448771,
"ab_bat_speed": 70.41891355641356,
"ab_strikeout_rate": 0.148005148005148,
"available": 1.0
},
{
"player_id": "682626",
"player_name": "Francisco Alvarez",
"position": "C",
"weight": 3.0,
"quality": 0.40086161104904194,
"contact": 0.528842520704691,
"power": 1.1872047896236282,
"discipline": -0.239232868757259,
"xwoba": 0.3499999999999999,
"recent_xwoba": 0.35,
"barrel": 16.5,
"ab_hard_contact": 0.24314341152019897,
"ab_bat_speed": 72.7064484126984,
"ab_strikeout_rate": 0.2276190476190476,
"available": 1.0
},
{
"player_id": "701807",
"player_name": "Carson Benge",
"position": "RF",
"weight": 4.0,
"quality": 0.4941989456528895,
"contact": 0.7083415302965284,
"power": 0.5509017001418364,
"discipline": -0.15244715447154467,
"xwoba": 0.347,
"recent_xwoba": 0.347,
"barrel": 9.1,
"ab_hard_contact": 0.06946257426529759,
"ab_bat_speed": 69.1056576984127,
"ab_strikeout_rate": 0.22833333333333333,
"available": 1.0
},
{
"player_id": "666182",
"player_name": "Bo Bichette",
"position": "SS",
"weight": 4.0,
"quality": 0.5356428870535186,
"contact": 0.7874114962904825,
"power": 0.38194904730045987,
"discipline": 0.0921189830945929,
"xwoba": 0.334,
"recent_xwoba": 0.334,
"barrel": 7.3,
"ab_hard_contact": -0.04216191113366639,
"ab_bat_speed": 69.04705887579499,
"ab_strikeout_rate": 0.16898148148148148,
"available": 1.0
},
{
"player_id": "676724",
"player_name": "Jared Young",
"position": "1B",
"weight": 3.0,
"quality": 0.049099243556003355,
"contact": 0.41226379145299175,
"power": 0.7461739746259634,
"discipline": -0.15597096399535415,
"xwoba": 0.34,
"recent_xwoba": 0.34,
"barrel": 12.5,
"ab_hard_contact": -0.863568126528353,
"ab_bat_speed": 72.63215277777778,
"ab_strikeout_rate": 0.2,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "605400",
"player_name": "Aaron Nola",
"quality": -0.2438168006086457,
"contact": -0.5723637963574604,
"command": 0.09414285714285708,
"movement": -0.6056536574253711,
"xwoba": 0.327,
"whiff": 25.0,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "PHI",
"original_runs": 3,
"run_delta": 0.3392,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": 0.25049940886654565,
"contact": 0.24570909611423486,
"power": 0.34440503710959625,
"discipline": -0.17424920334874164,
"xwoba": 0.32678787878787885,
"recent_xwoba": 0.32678787878787885,
"barrel": 8.9,
"ab_hard_contact": 0.309006947098125,
"ab_bat_speed": 70.9409869305061,
"ab_strikeout_rate": 0.21778473285988098,
"available_players": 9,
"top_players": [
{
"player_id": "547180",
"player_name": "Bryce Harper",
"position": "1B",
"weight": 4.0,
"quality": 1.2261101872199816,
"contact": 1.2368317759808327,
"power": 1.3550739665979603,
"discipline": 0.7381410455883535,
"xwoba": 0.405,
"recent_xwoba": 0.405,
"barrel": 12.9,
"ab_hard_contact": 1.5330983795782456,
"ab_bat_speed": 72.87975995807128,
"ab_strikeout_rate": 0.18731656184486373,
"available": 1.0
},
{
"player_id": "656941",
"player_name": "Kyle Schwarber",
"position": "DH",
"weight": 4.0,
"quality": 0.9841564787726111,
"contact": 0.6955229747557998,
"power": 1.858740013455598,
"discipline": -0.07183176985615997,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 20.9,
"ab_hard_contact": 0.7159431262548124,
"ab_bat_speed": 74.57395451770452,
"ab_strikeout_rate": 0.33621794871794874,
"available": 1.0
},
{
"player_id": "607208",
"player_name": "Trea Turner",
"position": "SS",
"weight": 5.0,
"quality": -0.40113779891184087,
"contact": -0.46429652524419984,
"power": -0.4421844611570038,
"discipline": -0.43517548169987186,
"xwoba": 0.28,
"recent_xwoba": 0.28,
"barrel": 4.9,
"ab_hard_contact": 0.04202506257421076,
"ab_bat_speed": 70.81053472222222,
"ab_strikeout_rate": 0.21591880341880343,
"available": 1.0
},
{
"player_id": "669016",
"player_name": "Brandon Marsh",
"position": "RF",
"weight": 4.0,
"quality": 0.30510232662064235,
"contact": 0.6796037550098428,
"power": 0.4839075641273435,
"discipline": -0.5747600796416126,
"xwoba": 0.333,
"recent_xwoba": 0.333,
"barrel": 7.6,
"ab_hard_contact": 0.318151282546871,
"ab_bat_speed": 70.35567857142857,
"ab_strikeout_rate": 0.2370748299319728,
"available": 1.0
},
{
"player_id": "656537",
"player_name": "Derek Hill",
"position": "CF",
"weight": 3.0,
"quality": -0.1420542152063107,
"contact": -0.7565400904210483,
"power": -0.15573233313949875,
"discipline": -1.0080615937956616,
"xwoba": 0.282,
"recent_xwoba": 0.282,
"barrel": 8.9,
"ab_hard_contact": -0.06283713898046073,
"ab_bat_speed": 65.49069444444444,
"ab_strikeout_rate": 0.2553763440860215,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "640455",
"player_name": "Sean Manaea",
"quality": -0.1474280615633922,
"contact": -0.3242380664078574,
"command": 0.037285714285714276,
"movement": -1.1009352118088143,
"xwoba": 0.318,
"whiff": 22.8,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 4,
"home_runs": 3,
"predicted_score_text": "NYM 4 - 3 PHI",
"confidence": 0.5875159999999999,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "NYM 4 - 3 PHI",
"winner": "NYM"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "NYM 4 - 2 PHI",
"winner": "NYM"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": -1,
"total_run_delta": -1,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away NYM | True | 1.0370 | 1.0370 | 1 | 9 | 0 |
| Home PHI | True | 1.0332 | 1.0332 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Jared Young | 188 | 1.0250 | 0.3331 | neutral | 0.3400 | 0.2460 | 0.4470 | 12.50 | 46.90 | 90.30 | 9.30 | 26.60 | 20.90 | 7.70 | 0.4000 |
| SS | Bo Bichette | 280 | 1.0598 | 0.7972 | positive_batter_regression | 0.3340 | 0.2870 | 0.4360 | 7.30 | 45.30 | 90.70 | 7.90 | 17.50 | 17.30 | 6.20 | 1 |
| RF | Carson Benge | 159 | 1.0681 | 0.9081 | positive_batter_regression | 0.3470 | 0.2840 | 0.4540 | 9.10 | 43.20 | 90.10 | 11.40 | 21.50 | 21.60 | 6.70 | 1.1143 |
| LF | Juan Soto | 46 | 1.0977 | 1.3028 | neutral | 0.4210 | 0.3030 | 0.6120 | 15.40 | 49.70 | 93.10 | 15.70 | 20.80 | 13.50 | 13.90 | 0.5429 |
| CF | A.J. Ewing | 141 | 1.0133 | 0.1779 | neutral | 0.3290 | 0.2650 | 0.3890 | 5.10 | 39.20 | 88.60 | 12.60 | 23.80 | 29.90 | 11.20 | 0.4571 |
| 3B | Brett Baty | 250 | 0.9968 | -0.0432 | neutral | 0.2960 | 0.2280 | 0.3600 | 7.30 | 38.70 | 89.20 | 9.40 | 28.20 | 28.20 | 9 | 0.3714 |
| 2B | Marcus Semien | 472 | 1.0381 | 0.5083 | positive_batter_regression | 0.3250 | 0.2600 | 0.4280 | 8.70 | 34.90 | 86.20 | 18.50 | 23 | 21.10 | 7.50 | 1.2571 |
| DH | MJ Melendez | 367 | 0.9874 | -0.1674 | negative_batter_regression | 0.2760 | 0.1640 | 0.3100 | 10.80 | 55.40 | 93.90 | 23.90 | 34.40 | 33.90 | 11 | -1.0571 |
| C | Francisco Alvarez | 388 | 1.0471 | 0.6282 | neutral | 0.3500 | 0.2600 | 0.4760 | 16.50 | 43.70 | 90.60 | 9.40 | 29.50 | 22.60 | 8.40 | 0.7429 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3B | Alec Bohm | 515 | 1.0033 | 0.0442 | neutral | 0.2980 | 0.2480 | 0.3670 | 4.60 | 40.60 | 89.70 | 10.30 | 16.90 | 14.30 | 6.50 | 0.3429 |
| 1B | Bryce Harper | 93 | 1.1277 | 1.7031 | positive_batter_regression | 0.4050 | 0.2840 | 0.5440 | 12.90 | 44.60 | 90 | 12.10 | 30.10 | 18.90 | 15.30 | 1.1429 |
| DH | Kyle Schwarber | 55 | 1.1061 | 1.4150 | neutral | 0.3770 | 0.2400 | 0.5220 | 20.90 | 50.90 | 93 | 21.90 | 34.40 | 34.50 | 14.40 | -0.5429 |
| SS | Trea Turner | 446 | 0.9772 | -0.3042 | neutral | 0.2800 | 0.2330 | 0.3470 | 4.90 | 38.20 | 88.60 | 9.90 | 27.90 | 22.60 | 6.30 | 0.2571 |
| RF | Brandon Marsh | 48 | 1.0384 | 0.5117 | negative_batter_regression | 0.3330 | 0.2890 | 0.4480 | 7.60 | 46.80 | 90.10 | 13 | 24.90 | 24.40 | 4.90 | -1.0571 |
| LF | Edmundo Sosa | 306 | 1.0204 | 0.2718 | positive_batter_regression | 0.3290 | 0.2820 | 0.4460 | 6.90 | 39.10 | 86.70 | 9.60 | 25.40 | 21.70 | 2.50 | 1.3143 |
| C | J.T. Realmuto | 211 | 1.0181 | 0.2413 | positive_batter_regression | 0.3210 | 0.2510 | 0.3950 | 5.40 | 39.50 | 89.10 | 10.20 | 24.30 | 20 | 7.60 | 1.2857 |
| 2B | Bryson Stott | 330 | 1.0183 | 0.2442 | neutral | 0.3120 | 0.2540 | 0.4020 | 7.20 | 40.70 | 89.60 | 15.70 | 17.20 | 16.80 | 7 | 0.3143 |
| CF | Derek Hill | 391 | 0.9896 | -0.1385 | neutral | 0.2820 | 0.2190 | 0.3500 | 8.90 | 33.30 | 89.90 | 15.30 | 37.60 | 34.30 | 7.10 | -0.0857 |
{
"home": {
"applied": true,
"offense_factor": 1.0332,
"raw_average_factor": 1.0332,
"team_espn_average_rank": 266.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "3B",
"player_id": "664761",
"player_name": "Alec Bohm",
"offense_factor": 1.0033,
"quality_score": 0.0442,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664761",
"espn_id": 41169,
"player_name": "Alec Bohm",
"team": "PHI",
"role": "batter",
"espn_rank": 515,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 515,
"gp_value": 70.0,
"gp_rank": 72,
"ab_value": 255.0,
"ab_rank": 78,
"r_value": 22.0,
"r_rank": 191,
"h_value": 58.0,
"h_rank": 107,
"avg_value": 0.2274509,
"avg_rank": 132.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 39.0,
"rbi_rank": 46,
"tb_value": 94.0,
"tb_rank": 901,
"bb_value": 18.0,
"bb_rank": 174,
"so_value": 40.0,
"so_rank": 193,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2795698,
"obp_rank": "149",
"slg_value": 0.3686274,
"slg_rank": "124",
"ops_value": 0.6481972,
"ops_rank": 273.0,
"war_value": -0.45,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 204.0,
"k_percent": 14.3,
"bb_percent": 6.5,
"woba": 0.286,
"xwoba": 0.298,
"xba": 0.248,
"xslg": 0.367,
"sweet_spot_percent": 35.6,
"barrel_batted_rate": 4.6,
"hard_hit_percent": 40.6,
"exit_velocity_avg": 89.7,
"launch_angle_avg": 10.3,
"whiff_percent": 16.9,
"swing_percent": 44.1
},
"components": {
"expected_quality": -0.0004,
"regression_edge": 0.3429,
"xwoba_edge": -0.1714,
"xba_edge": 0.2714,
"xslg_edge": -0.0714,
"barrel_edge": -0.4889,
"hard_hit_edge": 0.3,
"exit_velocity_edge": 0.36,
"sweet_spot_edge": 0.3833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "547180",
"player_name": "Bryce Harper",
"offense_factor": 1.1277,
"quality_score": 1.7031,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "547180",
"espn_id": 30951,
"player_name": "Bryce Harper",
"team": "PHI",
"role": "batter",
"espn_rank": 93,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 93,
"gp_value": 74.0,
"gp_rank": 13,
"ab_value": 255.0,
"ab_rank": 78,
"r_value": 48.0,
"r_rank": 13,
"h_value": 64.0,
"h_rank": 79,
"avg_value": 0.2509803,
"avg_rank": 85.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 15.0,
"hr_rank": 23,
"rbi_value": 40.0,
"rbi_rank": 41,
"tb_value": 123.0,
"tb_rank": 372,
"bb_value": 47.0,
"bb_rank": 9,
"so_value": 58.0,
"so_rank": 91,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3615635,
"obp_rank": "39",
"slg_value": 0.4823529,
"slg_rank": "37",
"ops_value": 0.8439164,
"ops_rank": 76.0,
"war_value": 1.31,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 227.0,
"k_percent": 18.9,
"bb_percent": 15.3,
"woba": 0.365,
"xwoba": 0.405,
"xba": 0.284,
"xslg": 0.544,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 12.9,
"hard_hit_percent": 44.6,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 12.1,
"whiff_percent": 30.1,
"swing_percent": 50.3
},
"components": {
"expected_quality": 1.7943,
"regression_edge": 1.1429,
"xwoba_edge": 2.5,
"xba_edge": 1.3,
"xslg_edge": 2.4571,
"barrel_edge": 1.3556,
"hard_hit_edge": 0.8714,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "656941",
"player_name": "Kyle Schwarber",
"offense_factor": 1.1061,
"quality_score": 1.415,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656941",
"espn_id": 33712,
"player_name": "Kyle Schwarber",
"team": "PHI",
"role": "batter",
"espn_rank": 55,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 55,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 269.0,
"ab_rank": 39,
"r_value": 44.0,
"r_rank": 33,
"h_value": 66.0,
"h_rank": 67,
"avg_value": 0.2453531,
"avg_rank": 100.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 25.0,
"hr_rank": 1,
"rbi_value": 43.0,
"rbi_rank": 27,
"tb_value": 152.0,
"tb_rank": 362,
"bb_value": 46.0,
"bb_rank": 10,
"so_value": 110.0,
"so_rank": 1,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3636363,
"obp_rank": "36",
"slg_value": 0.5650557,
"slg_rank": "4",
"ops_value": 0.928692,
"ops_rank": 32.0,
"war_value": 1.95,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 238.0,
"k_percent": 34.5,
"bb_percent": 14.4,
"woba": 0.396,
"xwoba": 0.377,
"xba": 0.24,
"xslg": 0.522,
"sweet_spot_percent": 39.6,
"barrel_batted_rate": 20.9,
"hard_hit_percent": 50.9,
"exit_velocity_avg": 93.0,
"launch_angle_avg": 21.9,
"whiff_percent": 34.4,
"swing_percent": 43.9
},
"components": {
"expected_quality": 1.7337,
"regression_edge": -0.5429,
"xwoba_edge": 2.0857,
"xba_edge": 0.0429,
"xslg_edge": 2.1429,
"barrel_edge": 2.5,
"hard_hit_edge": 1.7714,
"exit_velocity_edge": 1.68,
"sweet_spot_edge": 1.05,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "SS",
"player_id": "607208",
"player_name": "Trea Turner",
"offense_factor": 0.9772,
"quality_score": -0.3042,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "607208",
"espn_id": 33710,
"player_name": "Trea Turner",
"team": "PHI",
"role": "batter",
"espn_rank": 446,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 446,
"gp_value": 72.0,
"gp_rank": 37,
"ab_value": 296.0,
"ab_rank": 5,
"r_value": 42.0,
"r_rank": 41,
"h_value": 66.0,
"h_rank": 67,
"avg_value": 0.2229729,
"avg_rank": 141.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 21.0,
"rbi_rank": 194,
"tb_value": 99.0,
"tb_rank": 892,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 72.0,
"so_rank": 42,
"sb_value": 15.0,
"sb_rank": 10,
"obp_value": 0.2735849,
"obp_rank": "156",
"slg_value": 0.3344594,
"slg_rank": "142",
"ops_value": 0.6080443,
"ops_rank": 14.0,
"war_value": -0.19,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 239.0,
"k_percent": 22.6,
"bb_percent": 6.3,
"woba": 0.271,
"xwoba": 0.28,
"xba": 0.233,
"xslg": 0.347,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 4.9,
"hard_hit_percent": 38.2,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 9.9,
"whiff_percent": 27.9,
"swing_percent": 51.7
},
"components": {
"expected_quality": -0.3955,
"regression_edge": 0.2571,
"xwoba_edge": -0.6857,
"xba_edge": -0.1571,
"xslg_edge": -0.3571,
"barrel_edge": -0.4222,
"hard_hit_edge": -0.0429,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": -0.0667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "669016",
"player_name": "Brandon Marsh",
"offense_factor": 1.0384,
"quality_score": 0.5117,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669016",
"espn_id": 40803,
"player_name": "Brandon Marsh",
"team": "PHI",
"role": "batter",
"espn_rank": 48,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 48,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 248.0,
"ab_rank": 94,
"r_value": 39.0,
"r_rank": 57,
"h_value": 80.0,
"h_rank": 9,
"avg_value": 0.3225806,
"avg_rank": 5.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 35.0,
"rbi_rank": 73,
"tb_value": 124.0,
"tb_rank": 356,
"bb_value": 13.0,
"bb_rank": 237,
"so_value": 65.0,
"so_rank": 61,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.3571428,
"obp_rank": "44",
"slg_value": 0.5,
"slg_rank": "29",
"ops_value": 0.8571428,
"ops_rank": 15.0,
"war_value": 2.03,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 188.0,
"k_percent": 24.4,
"bb_percent": 4.9,
"woba": 0.37,
"xwoba": 0.333,
"xba": 0.289,
"xslg": 0.448,
"sweet_spot_percent": 46.2,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 46.8,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 13.0,
"whiff_percent": 24.9,
"swing_percent": 53.3
},
"components": {
"expected_quality": 0.8684,
"regression_edge": -1.0571,
"xwoba_edge": 0.8286,
"xba_edge": 1.4429,
"xslg_edge": 1.0857,
"barrel_edge": 0.1778,
"hard_hit_edge": 1.1857,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": 2.15,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "624641",
"player_name": "Edmundo Sosa",
"offense_factor": 1.0204,
"quality_score": 0.2718,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "624641",
"espn_id": 33809,
"player_name": "Edmundo Sosa",
"team": "PHI",
"role": "batter",
"espn_rank": 306,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 306,
"gp_value": 41.0,
"gp_rank": 296,
"ab_value": 111.0,
"ab_rank": 299,
"r_value": 15.0,
"r_rank": 272,
"h_value": 26.0,
"h_rank": 288,
"avg_value": 0.2342342,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 42.0,
"tb_rank": 1592,
"bb_value": 3.0,
"bb_rank": 423,
"so_value": 26.0,
"so_rank": 301,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.2689075,
"obp_rank": "-",
"slg_value": 0.3783783,
"slg_rank": "-",
"ops_value": 0.6472858,
"ops_rank": null,
"war_value": 0.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 89.0,
"k_percent": 21.7,
"bb_percent": 2.5,
"woba": 0.283,
"xwoba": 0.329,
"xba": 0.282,
"xslg": 0.446,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 39.1,
"exit_velocity_avg": 86.7,
"launch_angle_avg": 9.6,
"whiff_percent": 25.4,
"swing_percent": 60.6
},
"components": {
"expected_quality": 0.4883,
"regression_edge": 1.3143,
"xwoba_edge": 0.7143,
"xba_edge": 1.2429,
"xslg_edge": 1.0571,
"barrel_edge": 0.0222,
"hard_hit_edge": 0.0857,
"exit_velocity_edge": -0.84,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "592663",
"player_name": "J.T. Realmuto",
"offense_factor": 1.0181,
"quality_score": 0.2413,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "592663",
"espn_id": 32177,
"player_name": "J.T. Realmuto",
"team": "PHI",
"role": "batter",
"espn_rank": 211,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 211,
"gp_value": 50.0,
"gp_rank": 239,
"ab_value": 165.0,
"ab_rank": 213,
"r_value": 16.0,
"r_rank": 254,
"h_value": 34.0,
"h_rank": 240,
"avg_value": 0.2060606,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 17.0,
"rbi_rank": 244,
"tb_value": 53.0,
"tb_rank": 1487,
"bb_value": 14.0,
"bb_rank": 215,
"so_value": 37.0,
"so_rank": 218,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.2864864,
"obp_rank": "-",
"slg_value": 0.3212121,
"slg_rank": "-",
"ops_value": 0.6076985,
"ops_rank": null,
"war_value": 0.47,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 130.0,
"k_percent": 20.0,
"bb_percent": 7.6,
"woba": 0.276,
"xwoba": 0.321,
"xba": 0.251,
"xslg": 0.395,
"sweet_spot_percent": 34.1,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 39.5,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 10.2,
"whiff_percent": 24.3,
"swing_percent": 47.8
},
"components": {
"expected_quality": 0.2655,
"regression_edge": 1.2857,
"xwoba_edge": 0.4857,
"xba_edge": 0.3571,
"xslg_edge": 0.3286,
"barrel_edge": -0.3111,
"hard_hit_edge": 0.1429,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": 0.1333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "681082",
"player_name": "Bryson Stott",
"offense_factor": 1.0183,
"quality_score": 0.2442,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681082",
"espn_id": 42417,
"player_name": "Bryson Stott",
"team": "PHI",
"role": "batter",
"espn_rank": 330,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 330,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 234.0,
"ab_rank": 111,
"r_value": 22.0,
"r_rank": 191,
"h_value": 55.0,
"h_rank": 121,
"avg_value": 0.2350427,
"avg_rank": 116.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 3.0,
"3b_rank": 7,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 35.0,
"rbi_rank": 73,
"tb_value": 92.0,
"tb_rank": 664,
"bb_value": 18.0,
"bb_rank": 174,
"so_value": 43.0,
"so_rank": 171,
"sb_value": 13.0,
"sb_rank": 16,
"obp_value": 0.2913385,
"obp_rank": "145",
"slg_value": 0.3931623,
"slg_rank": "111",
"ops_value": 0.6845008,
"ops_rank": 34.0,
"war_value": 0.03,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 182.0,
"k_percent": 16.8,
"bb_percent": 7.0,
"woba": 0.301,
"xwoba": 0.312,
"xba": 0.254,
"xslg": 0.402,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 7.2,
"hard_hit_percent": 40.7,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 15.7,
"whiff_percent": 17.2,
"swing_percent": 43.4
},
"components": {
"expected_quality": 0.292,
"regression_edge": 0.3143,
"xwoba_edge": 0.2286,
"xba_edge": 0.4429,
"xslg_edge": 0.4286,
"barrel_edge": 0.0889,
"hard_hit_edge": 0.3143,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.0333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "656537",
"player_name": "Derek Hill",
"offense_factor": 0.9896,
"quality_score": -0.1385,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656537",
"espn_id": 33721,
"player_name": "Derek Hill",
"team": "PHI",
"role": "batter",
"espn_rank": 391,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 391,
"gp_value": 55.0,
"gp_rank": 204,
"ab_value": 89.0,
"ab_rank": 344,
"r_value": 12.0,
"r_rank": 310,
"h_value": 19.0,
"h_rank": 345,
"avg_value": 0.2134831,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 8.0,
"rbi_rank": 346,
"tb_value": 32.0,
"tb_rank": 1772,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 34.0,
"so_rank": 240,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.2783505,
"obp_rank": "-",
"slg_value": 0.3595505,
"slg_rank": "-",
"ops_value": 0.637901,
"ops_rank": null,
"war_value": -0.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 62.0,
"k_percent": 34.3,
"bb_percent": 7.1,
"woba": 0.285,
"xwoba": 0.282,
"xba": 0.219,
"xslg": 0.35,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 15.3,
"whiff_percent": 37.6,
"swing_percent": 51.8
},
"components": {
"expected_quality": -0.344,
"regression_edge": -0.0857,
"xwoba_edge": -0.6286,
"xba_edge": -0.5571,
"xslg_edge": -0.3143,
"barrel_edge": 0.4667,
"hard_hit_edge": -0.7429,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.2
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.037,
"raw_average_factor": 1.037,
"team_espn_average_rank": 254.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "1B",
"player_id": "676724",
"player_name": "Jared Young",
"offense_factor": 1.025,
"quality_score": 0.3331,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676724",
"espn_id": 41575,
"player_name": "Jared Young",
"team": "NYM",
"role": "batter",
"espn_rank": 188,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 188,
"gp_value": 30.0,
"gp_rank": 359,
"ab_value": 82.0,
"ab_rank": 358,
"r_value": 10.0,
"r_rank": 341,
"h_value": 20.0,
"h_rank": 336,
"avg_value": 0.2439024,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 10.0,
"rbi_rank": 319,
"tb_value": 36.0,
"tb_rank": 1640,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 19.0,
"so_rank": 360,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3076923,
"obp_rank": "-",
"slg_value": 0.4390243,
"slg_rank": "-",
"ops_value": 0.7467166,
"ops_rank": null,
"war_value": 0.57,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 25.0,
"k_percent": 20.9,
"bb_percent": 7.7,
"woba": 0.326,
"xwoba": 0.34,
"xba": 0.246,
"xslg": 0.447,
"sweet_spot_percent": 26.6,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 46.9,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 9.3,
"whiff_percent": 26.6,
"swing_percent": 47.7
},
"components": {
"expected_quality": 0.7955,
"regression_edge": 0.4,
"xwoba_edge": 1.0286,
"xba_edge": 0.2143,
"xslg_edge": 1.0714,
"barrel_edge": 1.2667,
"hard_hit_edge": 1.2,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": -1.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "666182",
"player_name": "Bo Bichette",
"offense_factor": 1.0598,
"quality_score": 0.7972,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "666182",
"espn_id": 38904,
"player_name": "Bo Bichette",
"team": "NYM",
"role": "batter",
"espn_rank": 280,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 280,
"gp_value": 74.0,
"gp_rank": 13,
"ab_value": 299.0,
"ab_rank": 3,
"r_value": 39.0,
"r_rank": 57,
"h_value": 76.0,
"h_rank": 24,
"avg_value": 0.2541806,
"avg_rank": 78.0,
"2b_value": 11.0,
"2b_rank": 110,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 42.0,
"rbi_rank": 31,
"tb_value": 113.0,
"tb_rank": 572,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 56.0,
"so_rank": 99,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2993827,
"obp_rank": "135",
"slg_value": 0.3779264,
"slg_rank": "119",
"ops_value": 0.6773091,
"ops_rank": 16.0,
"war_value": 0.17,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 241.0,
"k_percent": 17.3,
"bb_percent": 6.2,
"woba": 0.299,
"xwoba": 0.334,
"xba": 0.287,
"xslg": 0.436,
"sweet_spot_percent": 35.2,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 45.3,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 7.9,
"whiff_percent": 17.5,
"swing_percent": 53.4
},
"components": {
"expected_quality": 0.7642,
"regression_edge": 1.0,
"xwoba_edge": 0.8571,
"xba_edge": 1.3857,
"xslg_edge": 0.9143,
"barrel_edge": 0.1111,
"hard_hit_edge": 0.9714,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": 0.3167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "701807",
"player_name": "Carson Benge",
"offense_factor": 1.0681,
"quality_score": 0.9081,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "701807",
"espn_id": 4925604,
"player_name": "Carson Benge",
"team": "NYM",
"role": "batter",
"espn_rank": 159,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 159,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 260.0,
"ab_rank": 70,
"r_value": 38.0,
"r_rank": 64,
"h_value": 65.0,
"h_rank": 75,
"avg_value": 0.25,
"avg_rank": 90.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 26.0,
"rbi_rank": 146,
"tb_value": 99.0,
"tb_rank": 620,
"bb_value": 19.0,
"bb_rank": 161,
"so_value": 61.0,
"so_rank": 78,
"sb_value": 10.0,
"sb_rank": 37,
"obp_value": 0.310954,
"obp_rank": "117",
"slg_value": 0.3807692,
"slg_rank": "118",
"ops_value": 0.6917232,
"ops_rank": 1.0,
"war_value": 0.8,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 199.0,
"k_percent": 21.6,
"bb_percent": 6.7,
"woba": 0.308,
"xwoba": 0.347,
"xba": 0.284,
"xslg": 0.454,
"sweet_spot_percent": 40.7,
"barrel_batted_rate": 9.1,
"hard_hit_percent": 43.2,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 11.4,
"whiff_percent": 21.5,
"swing_percent": 45.0
},
"components": {
"expected_quality": 0.9859,
"regression_edge": 1.1143,
"xwoba_edge": 1.2286,
"xba_edge": 1.3,
"xslg_edge": 1.1714,
"barrel_edge": 0.5111,
"hard_hit_edge": 0.6714,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": 1.2333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "665742",
"player_name": "Juan Soto",
"offense_factor": 1.0977,
"quality_score": 1.3028,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665742",
"espn_id": 36969,
"player_name": "Juan Soto",
"team": "NYM",
"role": "batter",
"espn_rank": 46,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 46,
"gp_value": 57.0,
"gp_rank": 195,
"ab_value": 209.0,
"ab_rank": 145,
"r_value": 34.0,
"r_rank": 83,
"h_value": 62.0,
"h_rank": 89,
"avg_value": 0.2966507,
"avg_rank": 11.0,
"2b_value": 7.0,
"2b_rank": 206,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 15.0,
"hr_rank": 23,
"rbi_value": 36.0,
"rbi_rank": 63,
"tb_value": 116.0,
"tb_rank": 508,
"bb_value": 34.0,
"bb_rank": 40,
"so_value": 33.0,
"so_rank": 250,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.3934426,
"obp_rank": "10",
"slg_value": 0.5550239,
"slg_rank": "6",
"ops_value": 0.9484665,
"ops_rank": 16.0,
"war_value": 2.07,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 13.5,
"bb_percent": 13.9,
"woba": 0.402,
"xwoba": 0.421,
"xba": 0.303,
"xslg": 0.612,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 15.4,
"hard_hit_percent": 49.7,
"exit_velocity_avg": 93.1,
"launch_angle_avg": 15.7,
"whiff_percent": 20.8,
"swing_percent": 40.1
},
"components": {
"expected_quality": 2.0344,
"regression_edge": 0.5429,
"xwoba_edge": 2.5,
"xba_edge": 1.8429,
"xslg_edge": 2.5,
"barrel_edge": 1.9111,
"hard_hit_edge": 1.6,
"exit_velocity_edge": 1.72,
"sweet_spot_edge": -0.2833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "805999",
"player_name": "A.J. Ewing",
"offense_factor": 1.0133,
"quality_score": 0.1779,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805999",
"espn_id": 5208019,
"player_name": "A.J. Ewing",
"team": "NYM",
"role": "batter",
"espn_rank": 141,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 141,
"gp_value": 34.0,
"gp_rank": 333,
"ab_value": 116.0,
"ab_rank": 287,
"r_value": 14.0,
"r_rank": 287,
"h_value": 29.0,
"h_rank": 269,
"avg_value": 0.25,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 11.0,
"rbi_rank": 306,
"tb_value": 42.0,
"tb_rank": 1575,
"bb_value": 15.0,
"bb_rank": 204,
"so_value": 40.0,
"so_rank": 193,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.3333333,
"obp_rank": "-",
"slg_value": 0.3620689,
"slg_rank": "-",
"ops_value": 0.6954022,
"ops_rank": null,
"war_value": 0.91,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 57.0,
"k_percent": 29.9,
"bb_percent": 11.2,
"woba": 0.313,
"xwoba": 0.329,
"xba": 0.265,
"xslg": 0.389,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 39.2,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 12.6,
"whiff_percent": 23.8,
"swing_percent": 43.4
},
"components": {
"expected_quality": 0.3853,
"regression_edge": 0.4571,
"xwoba_edge": 0.7143,
"xba_edge": 0.7571,
"xslg_edge": 0.2429,
"barrel_edge": -0.3778,
"hard_hit_edge": 0.1,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": 1.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "683146",
"player_name": "Brett Baty",
"offense_factor": 0.9968,
"quality_score": -0.0432,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683146",
"espn_id": 42414,
"player_name": "Brett Baty",
"team": "NYM",
"role": "batter",
"espn_rank": 250,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 250,
"gp_value": 70.0,
"gp_rank": 72,
"ab_value": 217.0,
"ab_rank": 131,
"r_value": 24.0,
"r_rank": 172,
"h_value": 49.0,
"h_rank": 154,
"avg_value": 0.2258064,
"avg_rank": 133.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 26.0,
"rbi_rank": 146,
"tb_value": 69.0,
"tb_rank": 1181,
"bb_value": 22.0,
"bb_rank": 123,
"so_value": 69.0,
"so_rank": 48,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.3032786,
"obp_rank": "129",
"slg_value": 0.3179723,
"slg_rank": "152",
"ops_value": 0.6212509,
"ops_rank": 281.0,
"war_value": 0.29,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 180.0,
"k_percent": 28.2,
"bb_percent": 9.0,
"woba": 0.283,
"xwoba": 0.296,
"xba": 0.228,
"xslg": 0.36,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.7,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 9.4,
"whiff_percent": 28.2,
"swing_percent": 45.8
},
"components": {
"expected_quality": -0.1218,
"regression_edge": 0.3714,
"xwoba_edge": -0.2286,
"xba_edge": -0.3,
"xslg_edge": -0.1714,
"barrel_edge": 0.1111,
"hard_hit_edge": 0.0286,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 0.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "543760",
"player_name": "Marcus Semien",
"offense_factor": 1.0381,
"quality_score": 0.5083,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "543760",
"espn_id": 32146,
"player_name": "Marcus Semien",
"team": "NYM",
"role": "batter",
"espn_rank": 472,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 472,
"gp_value": 74.0,
"gp_rank": 13,
"ab_value": 267.0,
"ab_rank": 48,
"r_value": 29.0,
"r_rank": 128,
"h_value": 59.0,
"h_rank": 103,
"avg_value": 0.2209737,
"avg_rank": 144.0,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 27.0,
"rbi_rank": 139,
"tb_value": 94.0,
"tb_rank": 931,
"bb_value": 22.0,
"bb_rank": 123,
"so_value": 62.0,
"so_rank": 74,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.2798634,
"obp_rank": "149",
"slg_value": 0.3520599,
"slg_rank": "138",
"ops_value": 0.6319233,
"ops_rank": 287.0,
"war_value": -0.26,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 214.0,
"k_percent": 21.1,
"bb_percent": 7.5,
"woba": 0.281,
"xwoba": 0.325,
"xba": 0.26,
"xslg": 0.428,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 34.9,
"exit_velocity_avg": 86.2,
"launch_angle_avg": 18.5,
"whiff_percent": 23.0,
"swing_percent": 50.4
},
"components": {
"expected_quality": 0.4029,
"regression_edge": 1.2571,
"xwoba_edge": 0.6,
"xba_edge": 0.6143,
"xslg_edge": 0.8,
"barrel_edge": 0.4222,
"hard_hit_edge": -0.5143,
"exit_velocity_edge": -1.04,
"sweet_spot_edge": 0.8333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "669004",
"player_name": "MJ Melendez",
"offense_factor": 0.9874,
"quality_score": -0.1674,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669004",
"espn_id": 40948,
"player_name": "MJ Melendez",
"team": "NYM",
"role": "batter",
"espn_rank": 367,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 367,
"gp_value": 49.0,
"gp_rank": 242,
"ab_value": 106.0,
"ab_rank": 310,
"r_value": 14.0,
"r_rank": 287,
"h_value": 21.0,
"h_rank": 328,
"avg_value": 0.1981132,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 11.0,
"rbi_rank": 306,
"tb_value": 40.0,
"tb_rank": 1340,
"bb_value": 14.0,
"bb_rank": 215,
"so_value": 43.0,
"so_rank": 171,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3174603,
"obp_rank": "-",
"slg_value": 0.3773584,
"slg_rank": "-",
"ops_value": 0.6948187,
"ops_rank": null,
"war_value": -0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 83.0,
"k_percent": 33.9,
"bb_percent": 11.0,
"woba": 0.313,
"xwoba": 0.276,
"xba": 0.164,
"xslg": 0.31,
"sweet_spot_percent": 27.7,
"barrel_batted_rate": 10.8,
"hard_hit_percent": 55.4,
"exit_velocity_avg": 93.9,
"launch_angle_avg": 23.9,
"whiff_percent": 34.4,
"swing_percent": 46.5
},
"components": {
"expected_quality": -0.2606,
"regression_edge": -1.0571,
"xwoba_edge": -0.8,
"xba_edge": -2.1286,
"xslg_edge": -0.8857,
"barrel_edge": 0.8889,
"hard_hit_edge": 2.4143,
"exit_velocity_edge": 2.04,
"sweet_spot_edge": -0.9333,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "C",
"player_id": "682626",
"player_name": "Francisco Alvarez",
"offense_factor": 1.0471,
"quality_score": 0.6282,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682626",
"espn_id": 41253,
"player_name": "Francisco Alvarez",
"team": "NYM",
"role": "batter",
"espn_rank": 388,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 388,
"gp_value": 44.0,
"gp_rank": 272,
"ab_value": 137.0,
"ab_rank": 258,
"r_value": 14.0,
"r_rank": 287,
"h_value": 35.0,
"h_rank": 232,
"avg_value": 0.2554744,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 13.0,
"rbi_rank": 285,
"tb_value": 55.0,
"tb_rank": 1431,
"bb_value": 13.0,
"bb_rank": 237,
"so_value": 35.0,
"so_rank": 235,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3267973,
"obp_rank": "-",
"slg_value": 0.4014598,
"slg_rank": "-",
"ops_value": 0.7282571,
"ops_rank": null,
"war_value": -0.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 128.0,
"k_percent": 22.6,
"bb_percent": 8.4,
"woba": 0.324,
"xwoba": 0.35,
"xba": 0.26,
"xslg": 0.476,
"sweet_spot_percent": 32.0,
"barrel_batted_rate": 16.5,
"hard_hit_percent": 43.7,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 9.4,
"whiff_percent": 29.5,
"swing_percent": 46.9
},
"components": {
"expected_quality": 1.1345,
"regression_edge": 0.7429,
"xwoba_edge": 1.3143,
"xba_edge": 0.6143,
"xslg_edge": 1.4857,
"barrel_edge": 2.1556,
"hard_hit_edge": 0.7429,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.2167,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away NYM | True | 485 | -0.0495 | 0.6320 | 1.0042 | 0.9942 | 0.9836 | 1.0219 | neutral | 0.3180 | 0.3340 | 23.80 | 7.90 | 22.80 | 9.20 | 38 | |
| Home PHI | True | 267 | -0.1294 | 0.8840 | 1.0110 | 0.9990 | 0.9752 | 1.0430 | positive_pitcher_regression | 0.3270 | 0.3600 | 23 | 7.80 | 25 | 9.30 | 38.80 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away NYM | True | None | 63 | 84.27 | 2094 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2800 | |
| Home PHI | True | None | 80 | 86.02 | 2299 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2074 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0097 |
| home_runs_vs_away_pitcher | 1.0027 |
| home_pitcher_quality_edge | -0.0799 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "605400",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 221.0,
"k_percent": 23.0,
"bb_percent": 7.8,
"woba": 0.36,
"xwoba": 0.327,
"sweet_spot_percent": 36.0,
"barrel_batted_rate": 9.3,
"hard_hit_percent": 38.8,
"avg_best_speed": 76.3074,
"avg_hyper_speed": 94.1882,
"whiff_percent": 25.0,
"swing_percent": 45.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4314,
"command_and_miss": 0.0671,
"regression_edge": 0.9429,
"xwoba_edge": -0.3429,
"barrel_edge": -0.4444,
"hard_hit_edge": -0.0714,
"whiff_edge": -0.1,
"bb_edge": 0.35,
"pitch_design_score": -0.2074
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "605400",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 80,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 80,
"pitch_usage": 0.0,
"release_speed": 86.0245751140897,
"release_spin_rate": 2299.076010454948,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 80,
"pitch_usage": 0.0,
"release_speed": 86.0245751140897,
"release_spin_rate": 2299.076010454948,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.0246,
"release_spin_rate": 2299.076,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2074,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4817,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.1294,
"sample_weight": 0.884,
"run_prevention_factor": 1.011,
"strikeout_factor": 0.999,
"walk_factor": 0.9752,
"homer_factor": 1.043,
"woba_minus_xwoba": 0.033,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "605400",
"espn_id": 33709,
"player_name": "Aaron Nola",
"team": "PHI",
"role": "pitcher",
"espn_rank": 267,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 267,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 5.8584,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 70.2,
"ip_rank": 72,
"h_value": 80.0,
"h_rank": 22,
"er_value": 46.0,
"er_rank": 7,
"hr_value": 13.0,
"hr_rank": 23,
"bb_value": 24.0,
"bb_rank": 68,
"k_value": 71.0,
"k_rank": 52,
"k_per_9_value": 9.042453,
"k_per_9_rank": 19,
"whip_value": 1.4716,
"whip_rank": null,
"war_value": 0.21,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "640455",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 158.0,
"k_percent": 23.8,
"bb_percent": 7.9,
"woba": 0.334,
"xwoba": 0.318,
"sweet_spot_percent": 35.2,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 38.0,
"avg_best_speed": 76.2541,
"avg_hyper_speed": 94.0572,
"whiff_percent": 22.8,
"swing_percent": 47.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1832,
"command_and_miss": 0.0036,
"regression_edge": 0.4571,
"xwoba_edge": -0.0857,
"barrel_edge": -0.4222,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.4143,
"bb_edge": 0.325,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "640455",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 63,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 63,
"pitch_usage": 0.0,
"release_speed": 84.2727734472041,
"release_spin_rate": 2093.764899844348,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 63,
"pitch_usage": 0.0,
"release_speed": 84.2727734472041,
"release_spin_rate": 2093.764899844348,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 84.2728,
"release_spin_rate": 2093.7649,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.28,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -2.0,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0495,
"sample_weight": 0.632,
"run_prevention_factor": 1.0042,
"strikeout_factor": 0.9942,
"walk_factor": 0.9836,
"homer_factor": 1.0219,
"woba_minus_xwoba": 0.016,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "640455",
"espn_id": 33244,
"player_name": "Sean Manaea",
"team": "NYM",
"role": "pitcher",
"espn_rank": 485,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 485,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 1.0,
"qs_rank": 134,
"era_value": 4.7755,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 49.0,
"ip_rank": 136,
"h_value": 49.0,
"h_rank": 119,
"er_value": 26.0,
"er_rank": 104,
"hr_value": 6.0,
"hr_rank": 125,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 51.0,
"k_rank": 108,
"k_per_9_value": 9.367347,
"k_per_9_rank": 21,
"whip_value": 1.3469,
"whip_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0097,
"home_runs_vs_away_pitcher": 1.0027,
"home_pitcher_quality_edge": -0.0799
},
"score_before": {
"away_runs": 4.9164,
"home_runs": 2.0889
},
"score_after": {
"away_runs": 4.9642,
"home_runs": 2.0944,
"home_win_probability": 0.2546
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away NYM | 24-41 | 0.369 | 1.10 | 3.10 | -131 | cold | strong | |
| Home PHI | 16-49 | 0.246 | 1 | 3 | -128 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away NYM | 33-41 | 0.446 | -17 | -0.230 | True |
| Home PHI | 40-34 | 0.541 | -18 | -0.243 | True |
| Signal | - | - | -0.013 | 0.128 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target NYM | - | - | 4 | - | - | - | - |
| Game target PHI | - | - | 3 | - | - | - | - |
| Player finalized NYM | 32 | 9 | 3 | 0 | 3 | 1 | 9 |
| Player finalized PHI | 33 | 9 | 4 | 0 | 3 | 2 | 9 |
| Player model fractional NYM | 31.86 | 7.41 | 3.82 | 0.98 | 3.53 | 3.14 | 7.86 |
| Player model fractional PHI | 32.06 | 7.14 | 4.17 | 1.16 | 3.95 | 2.77 | 8.04 |
| Simulation box NYM | 34 | 7 | 4 | 1 | 4 | 3 | 7 |
| Simulation box PHI | 34 | 7 | 2 | 2 | 2 | 1 | 8 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away NYM | Starter | Sean Manaea | 5.10 | 2 | 7 | 5 | 0 | 4.11 | 1.19 | True |
| Away NYM | Middle Reliever | Brooks Raley | 1.10 | 0 | 0 | 0 | 0 | 3.84 | 1.35 | True |
| Away NYM | Middle Reliever | Devin Williams | 1.10 | 0 | 1 | 1 | 0 | 3.90 | 1.21 | True |
| Away NYM | Middle Reliever | Luke Weaver | 1 | 0 | 0 | 1 | 1 | 2.28 | 0.84 | True |
| Home PHI | Starter | Aaron Nola | 5 | 4 | 3 | 6 | 2 | 5.69 | 1.41 | True |
| Home PHI | Middle Reliever | Jhoan Duran | 1 | 0 | 3 | 0 | 0 | 2.43 | 0.99 | True |
| Home PHI | Middle Reliever | Jonathan Bowlan | 1 | 0 | 0 | 0 | 1 | 2.86 | 1.11 | True |
| Home PHI | Middle Reliever | José Alvarado | 1 | 0 | 0 | 1 | 0 | 5.79 | 1.36 | True |
| Home PHI | Middle Reliever | Orion Kerkering | 1 | 0 | 1 | 0 | 0 | 3.10 | 1.28 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | NYM | batter | SS | Bo Bichette | worse | 11 | 5 | 6 | 4 | 7 | predicted_RBI | 2.4000 | boost | better |
| home | PHI | pitcher | Starter | Aaron Nola | worse | 1 | 1 | 0 | 0 | 1 | predicted_H | 2.0000 | boost | worse |
| home | PHI | pitcher | Middle Reliever | Jhoan Duran | better | 1 | 0 | 1 | 1 | 0 | predicted_H | -2.0000 | deboost | better |
| home | PHI | batter | CF | Derek Hill | better | 9 | 5 | 4 | 5 | 4 | predicted_H | 1.8400 | boost | better |
| away | NYM | batter | 1B | Jared Young | worse | 10 | 3 | 7 | 4 | 6 | predicted_H | 1.7400 | boost | better |
| away | NYM | batter | 3B | Brett Baty | worse | 11 | 3 | 8 | 4 | 7 | predicted_H | 1.2800 | boost | better |
| home | PHI | batter | LF | Edmundo Sosa | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | 1.2250 | boost | better |
| home | PHI | batter | 1B | Bryce Harper | better | 11 | 6 | 5 | 7 | 4 | predicted_H | 1.1400 | boost | better |
| away | NYM | batter | LF | Juan Soto | worse | 10 | 2 | 8 | 1 | 9 | predicted_H | -1.1000 | deboost | worse |
| home | PHI | batter | RF | Brandon Marsh | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.0880 | boost | worse |
| home | PHI | batter | DH | Kyle Schwarber | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | -1.0000 | deboost | worse |
| home | PHI | batter | 3B | Alec Bohm | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | -0.9200 | deboost | worse |
| away | NYM | batter | RF | Carson Benge | worse | 9 | 3 | 6 | 4 | 5 | predicted_SO | -0.8840 | deboost | better |
| away | NYM | batter | CF | A.J. Ewing | worse | 10 | 2 | 8 | 1 | 9 | predicted_H | -0.8600 | deboost | worse |
| away | NYM | batter | 2B | Marcus Semien | worse | 11 | 2 | 9 | 1 | 10 | predicted_H | -0.8600 | deboost | worse |
| away | NYM | batter | C | Francisco Alvarez | worse | 11 | 2 | 9 | 3 | 8 | predicted_SO | -0.8330 | deboost | better |
| home | PHI | batter | C | J.T. Realmuto | worse | 11 | 2 | 9 | 1 | 10 | predicted_H | -0.7100 | deboost | worse |
| away | NYM | batter | DH | MJ Melendez | worse | 9 | 2 | 7 | 2 | 7 | predicted_BB | 0.6900 | boost | better |
| home | PHI | batter | SS | Trea Turner | worse | 8 | 0 | 8 | 0 | 8 | predicted_AB | -0.6700 | deboost | worse |
| home | PHI | batter | 2B | Bryson Stott | worse | 9 | 3 | 6 | 2 | 7 | predicted_AB | 0.5670 | boost | better |
| away | NYM | pitcher | Starter | Sean Manaea | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | NYM | pitcher | Middle Reliever | Brooks Raley | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| away | NYM | pitcher | Middle Reliever | Devin Williams | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Sean Manaea |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.0495 |
| ESPN Rank | 485 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.2728 |
| Avg Spin | 2093.7649 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 2 |
| Pre H | 5 |
| Pre BB | 0 |
| Pre SO | 7 |
| Season ERA | 4.7755 |
| Season WHIP | 1.3469 |
| Role Avg IP | 6 |
| Recent Avg IP | 6 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"opponent": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"edges": {
"quality_edge": -0.0979,
"offense_edge": -0.1288,
"opponent_offense_edge": -0.1014,
"defense_strength": 0.0831,
"opponent_defense_weakness": -0.0311,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0026,
"run_prevention": 0.9804,
"strikeout": 1.0052
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "640455",
"profile": {
"available": true,
"pitcher_id": "640455",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 158.0,
"k_percent": 23.8,
"bb_percent": 7.9,
"woba": 0.334,
"xwoba": 0.318,
"sweet_spot_percent": 35.2,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 38.0,
"avg_best_speed": 76.2541,
"avg_hyper_speed": 94.0572,
"whiff_percent": 22.8,
"swing_percent": 47.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1832,
"command_and_miss": 0.0036,
"regression_edge": 0.4571,
"xwoba_edge": -0.0857,
"barrel_edge": -0.4222,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.4143,
"bb_edge": 0.325,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "640455",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 63,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 63,
"pitch_usage": 0.0,
"release_speed": 84.2727734472041,
"release_spin_rate": 2093.764899844348,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 63,
"pitch_usage": 0.0,
"release_speed": 84.2727734472041,
"release_spin_rate": 2093.764899844348,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 84.2728,
"release_spin_rate": 2093.7649,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.28,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -2.0,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0495,
"sample_weight": 0.632,
"run_prevention_factor": 1.0042,
"strikeout_factor": 0.9942,
"walk_factor": 0.9836,
"homer_factor": 1.0219,
"woba_minus_xwoba": 0.016,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "640455",
"espn_id": 33244,
"player_name": "Sean Manaea",
"team": "NYM",
"role": "pitcher",
"espn_rank": 485,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 485,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 1.0,
"qs_rank": 134,
"era_value": 4.7755,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 49.0,
"ip_rank": 136,
"h_value": 49.0,
"h_rank": 119,
"er_value": 26.0,
"er_rank": 104,
"hr_value": 6.0,
"hr_rank": 125,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 51.0,
"k_rank": 108,
"k_per_9_value": 9.367347,
"k_per_9_rank": 21,
"whip_value": 1.3469,
"whip_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0027,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0027,
"adjusted": 4
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9896,
"adjusted": 0
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0138,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9963,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 33.0,
"ER": 18,
"H": 33,
"BB": 10,
"SO": 39,
"HR": 4,
"ERA": 4.909090909090909,
"WHIP": 1.303030303030303,
"K9": 10.636363636363637,
"HR9": 1.0909090909090908,
"games_pitched": 10,
"quality_starts": 1,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "640455",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 63,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 63,
"pitch_usage": 0.0,
"release_speed": 84.2727734472041,
"release_spin_rate": 2093.764899844348,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 63,
"pitch_usage": 0.0,
"release_speed": 84.2727734472041,
"release_spin_rate": 2093.764899844348,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 84.2728,
"release_spin_rate": 2093.7649,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.28,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -2.0,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 15.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.75,
"prior_weight": 0.25
},
"role": "pitcher",
"player_id": "640455",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 21.2,
"ER": 7.0,
"R": 7.0,
"H": 16.0,
"BB": 4.0,
"SO": 22.0,
"HR": 3.0,
"BF": 83.0,
"Pitches": 346.0
},
"per_game": {
"IP": 4.1,
"ER": 1.4,
"R": 1.4,
"H": 3.2,
"BB": 0.8,
"SO": 4.4,
"HR": 0.6,
"BF": 16.6,
"Pitches": 69.2
},
"rates": {
"ERA": 2.9077,
"WHIP": 0.9231,
"ER_per_IP": 0.32308,
"H_per_IP": 0.73846,
"BB_per_IP": 0.18462,
"SO_per_IP": 1.01538,
"HR_per_IP": 0.13846
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 33.0,
"ER": 18.0,
"R": 19.0,
"H": 33.0,
"BB": 10.0,
"SO": 39.0,
"HR": 4.0,
"BF": 144.0,
"Pitches": 574.0
},
"per_game": {
"IP": 3.1,
"ER": 1.8,
"R": 1.9,
"H": 3.3,
"BB": 1.0,
"SO": 3.9,
"HR": 0.4,
"BF": 14.4,
"Pitches": 57.4
},
"rates": {
"ERA": 4.9091,
"WHIP": 1.303,
"ER_per_IP": 0.54545,
"H_per_IP": 1.0,
"BB_per_IP": 0.30303,
"SO_per_IP": 1.18182,
"HR_per_IP": 0.12121
}
},
"season": {
"games": 15,
"totals": {
"IP": 49.0,
"ER": 26.0,
"R": 27.0,
"H": 49.0,
"BB": 17.0,
"SO": 51.0,
"HR": 6.0,
"BF": 214.0,
"Pitches": 860.0
},
"per_game": {
"IP": 3.1,
"ER": 1.7333,
"R": 1.8,
"H": 3.2667,
"BB": 1.1333,
"SO": 3.4,
"HR": 0.4,
"BF": 14.2667,
"Pitches": 57.3333
},
"rates": {
"ERA": 4.7755,
"WHIP": 1.3469,
"ER_per_IP": 0.53061,
"H_per_IP": 1.0,
"BB_per_IP": 0.34694,
"SO_per_IP": 1.04082,
"HR_per_IP": 0.12245
}
}
},
"weighted_prediction": {
"predicted_IP": 4.1,
"predicted_ER": 1.906,
"predicted_H": 3.776,
"predicted_BB": 1.187,
"predicted_SO": 4.352,
"predicted_HR": 0.556,
"predicted_ERA": 4.1134,
"predicted_WHIP": 1.1899
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4556,
"form_weight": 0.5444,
"form_reliability": 0.75,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 15.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.75,
"prior_weight": 0.25
},
"applied_metrics": {
"predicted_IP": {
"model": 5.1,
"form": 4.1,
"final": 4.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 1.906,
"final": 1.9488,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 3.776,
"final": 4.3337,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 1.187,
"final": 0.6462,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 7.0,
"form": 4.352,
"final": 5.5585,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 2.0,
"form": 0.556,
"final": 1.2139,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.1134,
"final": 4.1134,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1899,
"final": 1.1899,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Brooks Raley |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1249 |
| ESPN Rank | 116 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2 |
| Season WHIP | 1.2593 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"opponent": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"edges": {
"quality_edge": -0.0979,
"offense_edge": -0.1288,
"opponent_offense_edge": -0.1014,
"defense_strength": 0.0831,
"opponent_defense_weakness": -0.0311,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0026,
"run_prevention": 0.9804,
"strikeout": 1.0052
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "548384",
"profile": {
"available": true,
"pitcher_id": "548384",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 89.0,
"k_percent": 26.5,
"bb_percent": 10.3,
"woba": 0.287,
"xwoba": 0.296,
"sweet_spot_percent": 38.9,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 30.6,
"avg_best_speed": 76.2791,
"avg_hyper_speed": 93.1912,
"whiff_percent": 26.0,
"swing_percent": 44.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4407,
"command_and_miss": 0.2171,
"regression_edge": -0.2571,
"xwoba_edge": 0.5429,
"barrel_edge": 0.0889,
"hard_hit_edge": 1.1,
"whiff_edge": 0.0429,
"bb_edge": -0.275,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "548384",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.1249,
"sample_weight": 0.45,
"run_prevention_factor": 0.9894,
"strikeout_factor": 1.0111,
"walk_factor": 1.0099,
"homer_factor": 0.9697,
"woba_minus_xwoba": -0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "548384",
"espn_id": 32005,
"player_name": "Brooks Raley",
"team": "NYM",
"role": "pitcher",
"espn_rank": 116,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 116,
"gp_value": 30.0,
"gp_rank": 64,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.0,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 10.0,
"hld_rank": 22,
"ip_value": 27.0,
"ip_rank": 302,
"h_value": 22.0,
"h_rank": 299,
"er_value": 6.0,
"er_rank": 464,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 12.0,
"bb_rank": 246,
"k_value": 31.0,
"k_rank": 239,
"k_per_9_value": 10.333333,
"k_per_9_rank": 21,
"whip_value": 1.2592,
"whip_rank": null,
"war_value": 0.88,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9952,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9952,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0045,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9864,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.005,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.2,
"ER": 3,
"H": 9,
"BB": 4,
"SO": 10,
"HR": 1,
"ERA": 3.115384615384615,
"WHIP": 1.4999999999999998,
"K9": 10.384615384615383,
"HR9": 1.0384615384615383,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "548384",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.362,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5175,
"prior_weight": 0.4825
},
"role": "pitcher",
"player_id": "548384",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 2.0,
"SO": 5.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 86.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 4.2,
"Pitches": 17.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.2857,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 3.0,
"R": 3.0,
"H": 9.0,
"BB": 4.0,
"SO": 10.0,
"HR": 1.0,
"BF": 40.0,
"Pitches": 161.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.9,
"BB": 0.4,
"SO": 1.0,
"HR": 0.1,
"BF": 4.0,
"Pitches": 16.1
},
"rates": {
"ERA": 3.1154,
"WHIP": 1.5,
"ER_per_IP": 0.34615,
"H_per_IP": 1.03846,
"BB_per_IP": 0.46154,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.11538
}
},
"season": {
"games": 30,
"totals": {
"IP": 27.0,
"ER": 6.0,
"R": 7.0,
"H": 22.0,
"BB": 12.0,
"SO": 31.0,
"HR": 2.0,
"BF": 117.0,
"Pitches": 448.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2333,
"H": 0.7333,
"BB": 0.4,
"SO": 1.0333,
"HR": 0.0667,
"BF": 3.9,
"Pitches": 14.9333
},
"rates": {
"ERA": 2.0,
"WHIP": 1.2593,
"ER_per_IP": 0.22222,
"H_per_IP": 0.81481,
"BB_per_IP": 0.44444,
"SO_per_IP": 1.14815,
"HR_per_IP": 0.07407
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.427,
"predicted_H": 0.942,
"predicted_BB": 0.405,
"predicted_SO": 1.03,
"predicted_HR": 0.099,
"predicted_ERA": 3.8447,
"predicted_WHIP": 1.3466
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5539,
"form_weight": 0.4461,
"form_reliability": 0.5175,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.362,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5175,
"prior_weight": 0.4825
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.427,
"final": 0.1905,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.942,
"final": 0.4203,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.405,
"final": 0.1807,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.03,
"final": 0.4595,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.099,
"final": 0.0442,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8447,
"final": 3.8447,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3466,
"final": 1.3466,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Devin Williams |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3662 |
| ESPN Rank | 508 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0348 |
| Avg Velo | 89.1068 |
| Avg Spin | 2442.9373 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 4.2429 |
| Season WHIP | 1.3286 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"opponent": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"edges": {
"quality_edge": -0.0979,
"offense_edge": -0.1288,
"opponent_offense_edge": -0.1014,
"defense_strength": 0.0831,
"opponent_defense_weakness": -0.0311,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0026,
"run_prevention": 0.9804,
"strikeout": 1.0052
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "642207",
"profile": {
"available": true,
"pitcher_id": "642207",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 80.0,
"k_percent": 35.9,
"bb_percent": 13.6,
"woba": 0.324,
"xwoba": 0.272,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 25.0,
"avg_best_speed": 79.6207,
"avg_hyper_speed": 92.7857,
"whiff_percent": 39.5,
"swing_percent": 50.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5748,
"command_and_miss": 1.3314,
"regression_edge": 1.4857,
"xwoba_edge": 1.2286,
"barrel_edge": -0.0889,
"hard_hit_edge": 1.9,
"whiff_edge": 1.9714,
"bb_edge": -1.1,
"pitch_design_score": -0.0348
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "642207",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 34,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 34,
"pitch_usage": 0.0,
"release_speed": 89.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 34,
"pitch_usage": 0.0,
"release_speed": 89.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.1068,
"release_spin_rate": 2442.9373,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0348,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2489,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.3662,
"sample_weight": 0.45,
"run_prevention_factor": 0.9689,
"strikeout_factor": 1.0699,
"walk_factor": 1.0396,
"homer_factor": 0.9524,
"woba_minus_xwoba": 0.052,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "642207",
"espn_id": 33224,
"player_name": "Devin Williams",
"team": "NYM",
"role": "pitcher",
"espn_rank": 508,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 508,
"gp_value": 26.0,
"gp_rank": 116,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.0142,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 10.0,
"sv_rank": 16,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 23.1,
"ip_rank": 341,
"h_value": 21.0,
"h_rank": 312,
"er_value": 13.0,
"er_rank": 243,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 14.0,
"bb_rank": 209,
"k_value": 37.0,
"k_rank": 181,
"k_per_9_value": 14.271429,
"k_per_9_rank": 14,
"whip_value": 1.5,
"whip_rank": null,
"war_value": -0.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.986,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.986,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0178,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9786,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0315,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.2,
"ER": 5,
"H": 6,
"BB": 7,
"SO": 15,
"HR": 1,
"ERA": 4.655172413793104,
"WHIP": 1.3448275862068966,
"K9": 13.965517241379311,
"HR9": 0.9310344827586208,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "642207",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 34,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 34,
"pitch_usage": 0.0,
"release_speed": 89.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 34,
"pitch_usage": 0.0,
"release_speed": 89.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.1068,
"release_spin_rate": 2442.9373,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0348,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2489,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.634,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.481,
"prior_weight": 0.519
},
"role": "pitcher",
"player_id": "642207",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 1.0,
"SO": 9.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 95.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.2,
"SO": 1.8,
"HR": 0.0,
"BF": 4.0,
"Pitches": 19.0
},
"rates": {
"ERA": 1.6875,
"WHIP": 0.75,
"ER_per_IP": 0.1875,
"H_per_IP": 0.5625,
"BB_per_IP": 0.1875,
"SO_per_IP": 1.6875,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 5.0,
"R": 5.0,
"H": 6.0,
"BB": 7.0,
"SO": 15.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 181.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.6,
"BB": 0.7,
"SO": 1.5,
"HR": 0.1,
"BF": 4.1,
"Pitches": 18.1
},
"rates": {
"ERA": 4.6552,
"WHIP": 1.3448,
"ER_per_IP": 0.51724,
"H_per_IP": 0.62069,
"BB_per_IP": 0.72414,
"SO_per_IP": 1.55172,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 25,
"totals": {
"IP": 23.1,
"ER": 11.0,
"R": 11.0,
"H": 20.0,
"BB": 11.0,
"SO": 37.0,
"HR": 2.0,
"BF": 98.0,
"Pitches": 408.0
},
"per_game": {
"IP": 1.0,
"ER": 0.44,
"R": 0.44,
"H": 0.8,
"BB": 0.44,
"SO": 1.48,
"HR": 0.08,
"BF": 3.92,
"Pitches": 16.32
},
"rates": {
"ERA": 4.2429,
"WHIP": 1.3286,
"ER_per_IP": 0.47143,
"H_per_IP": 0.85714,
"BB_per_IP": 0.47143,
"SO_per_IP": 1.58571,
"HR_per_IP": 0.08571
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.433,
"predicted_H": 0.814,
"predicted_BB": 0.396,
"predicted_SO": 1.266,
"predicted_HR": 0.101,
"predicted_ERA": 3.8969,
"predicted_WHIP": 1.2106
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5693,
"form_weight": 0.4307,
"form_reliability": 0.481,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.634,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.481,
"prior_weight": 0.519
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.433,
"final": 0.1865,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.814,
"final": 0.9199,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.396,
"final": 0.1706,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.266,
"final": 1.1146,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.101,
"final": 0.0435,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.8969,
"final": 3.8969,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2106,
"final": 1.2106,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Luke Weaver |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1927 |
| ESPN Rank | 79 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 2.3226 |
| Season WHIP | 0.9032 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"opponent": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"edges": {
"quality_edge": -0.0979,
"offense_edge": -0.1288,
"opponent_offense_edge": -0.1014,
"defense_strength": 0.0831,
"opponent_defense_weakness": -0.0311,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 1.0026,
"run_prevention": 0.9804,
"strikeout": 1.0052
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "596133",
"profile": {
"available": true,
"pitcher_id": "596133",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 95.0,
"k_percent": 24.6,
"bb_percent": 6.6,
"woba": 0.228,
"xwoba": 0.278,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 9.6,
"hard_hit_percent": 31.3,
"avg_best_speed": 79.538,
"avg_hyper_speed": 93.0824,
"whiff_percent": 28.0,
"swing_percent": 51.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8433,
"command_and_miss": 0.38,
"regression_edge": -1.4286,
"xwoba_edge": 1.0571,
"barrel_edge": -0.5111,
"hard_hit_edge": 1.0,
"whiff_edge": 0.3286,
"bb_edge": 0.65,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "596133",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.1927,
"sample_weight": 0.45,
"run_prevention_factor": 0.9836,
"strikeout_factor": 1.0113,
"walk_factor": 0.9766,
"homer_factor": 0.9861,
"woba_minus_xwoba": -0.05,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "596133",
"espn_id": 33770,
"player_name": "Luke Weaver",
"team": "NYM",
"role": "pitcher",
"espn_rank": 79,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 79,
"gp_value": 29.0,
"gp_rank": 80,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.3225,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 8.0,
"hld_rank": 41,
"ip_value": 31.0,
"ip_rank": 235,
"h_value": 20.0,
"h_rank": 330,
"er_value": 8.0,
"er_rank": 396,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 8.0,
"bb_rank": 360,
"k_value": 30.0,
"k_rank": 253,
"k_per_9_value": 8.709678,
"k_per_9_rank": 29,
"whip_value": 0.9032,
"whip_rank": null,
"war_value": 1.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9926,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9926,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9937,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0051,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 0,
"H": 4,
"BB": 1,
"SO": 9,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.46875,
"K9": 7.59375,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "596133",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.156,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5518,
"prior_weight": 0.4482
},
"role": "pitcher",
"player_id": "596133",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 0.0,
"SO": 5.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 59.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.2,
"BB": 0.0,
"SO": 1.0,
"HR": 0.0,
"BF": 3.4,
"Pitches": 11.8
},
"rates": {
"ERA": 0.0,
"WHIP": 0.2,
"ER_per_IP": 0.0,
"H_per_IP": 0.2,
"BB_per_IP": 0.0,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 1.0,
"SO": 9.0,
"HR": 0.0,
"BF": 38.0,
"Pitches": 131.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.1,
"SO": 0.9,
"HR": 0.0,
"BF": 3.8,
"Pitches": 13.1
},
"rates": {
"ERA": 0.0,
"WHIP": 0.4688,
"ER_per_IP": 0.0,
"H_per_IP": 0.375,
"BB_per_IP": 0.09375,
"SO_per_IP": 0.84375,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 31.0,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 8.0,
"SO": 30.0,
"HR": 2.0,
"BF": 122.0,
"Pitches": 461.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2759,
"R": 0.2759,
"H": 0.6897,
"BB": 0.2759,
"SO": 1.0345,
"HR": 0.069,
"BF": 4.2069,
"Pitches": 15.8966
},
"rates": {
"ERA": 2.3226,
"WHIP": 0.9032,
"ER_per_IP": 0.25806,
"H_per_IP": 0.64516,
"BB_per_IP": 0.25806,
"SO_per_IP": 0.96774,
"HR_per_IP": 0.06452
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.253,
"predicted_H": 0.63,
"predicted_BB": 0.209,
"predicted_SO": 0.938,
"predicted_HR": 0.073,
"predicted_ERA": 2.2769,
"predicted_WHIP": 0.8392
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5394,
"form_weight": 0.4606,
"form_reliability": 0.5518,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.156,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5518,
"prior_weight": 0.4482
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.253,
"final": 0.1165,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.63,
"final": 0.8296,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.209,
"final": 0.6356,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.938,
"final": 0.4321,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.073,
"final": 0.0336,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.2769,
"final": 2.2769,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.8392,
"final": 0.8392,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.148 | 0.000 | 0.000 | Hitting_2B | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.037 | 3.000 | 3.000 | Hitting_AB | 2.889 | 3.000 | 0.111 | 0.000 |
| predicted_AVG | 0.229 | 0.667 | 0.333 | Hitting_AVG | 0.285 | 0.000 | 0.382 | 0.667 |
| predicted_BB | 0.222 | 1.000 | 0.000 | Hitting_BB | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.260 | 2.000 | 1.000 | Hitting_H | 0.822 | 0.000 | 1.178 | 2.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.089 | 0.000 | -0.089 | 0.000 |
| predicted_OBP | 0.248 | 0.750 | 0.333 | Hitting_OBP | 0.333 | 0.000 | 0.417 | 0.750 |
| predicted_R | 0.370 | 1.000 | 0.000 | Hitting_R | 0.333 | 0.000 | 0.667 | 1.000 |
| predicted_RBI | 0.160 | 0.000 | 0.000 | Hitting_RBI | 0.289 | 0.000 | -0.289 | 0.000 |
| predicted_SLG | 0.357 | 0.667 | 0.333 | Hitting_SLG | 0.446 | 0.000 | 0.221 | 0.667 |
| predicted_SO | 0.704 | 0.000 | 1.000 | Hitting_SO | 0.578 | 0.000 | -0.578 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_H: 0.2600 -> 2.0000 (boost 1.7400, better) |
| Biggest Deboost | predicted_SO: 0.7040 -> 0.0000 (deboost -0.7040, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_H: 0.2600 -> 0.4173 (boost 0.1573, better) | predicted_AVG: 0.2290 -> 0.2196 (deboost -0.0094, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3541 -> 0.2448 (deboost -0.1093, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.7123 -> 1.0000 (boost 0.2877, worse) | predicted_H: 0.4080 -> 0.0000 (deboost -0.4080, worse) | AB rounded to 3 (raw=3.15), rates preserved: AVG=0.130 HR/AB=0.023 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3494 -> 0.0000 (deboost -0.3494, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1297 -> 0.3330 (boost 0.2033, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 4 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1297 (deboost -0.2033, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676724",
"player_name": "Jared Young",
"position": "1B",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.148,
"predicted_3B": 0.0,
"predicted_AB": 3.037,
"predicted_AVG": 0.229,
"predicted_BB": 0.222,
"predicted_H": 0.26,
"predicted_HR": 0.05,
"predicted_OBP": 0.248,
"predicted_R": 0.37,
"predicted_RBI": 0.16,
"predicted_SLG": 0.357,
"predicted_SO": 0.704
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1405,
"predicted_3B": 0.0011,
"predicted_AB": 3.145,
"predicted_AVG": 0.2196,
"predicted_BB": 0.2092,
"predicted_H": 0.4173,
"predicted_HBP": 0.04,
"predicted_HR": 0.0748,
"predicted_OBP": 0.2501,
"predicted_R": 0.3629,
"predicted_RBI": 0.2364,
"predicted_SLG": 0.3541,
"predicted_SO": 0.7066
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.148,
"after": 0.1405,
"delta": -0.0075,
"percent_delta": -0.0507,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0011,
"delta": 0.0011,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.037,
"after": 3.145,
"delta": 0.108,
"percent_delta": 0.0356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2196,
"delta": -0.0094,
"percent_delta": -0.041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.2092,
"delta": -0.0128,
"percent_delta": -0.0577,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.26,
"after": 0.4173,
"delta": 0.1573,
"percent_delta": 0.605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0748,
"delta": 0.0248,
"percent_delta": 0.496,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.248,
"after": 0.2501,
"delta": 0.0021,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.37,
"after": 0.3629,
"delta": -0.0071,
"percent_delta": -0.0192,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.2364,
"delta": 0.0764,
"percent_delta": 0.4775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3541,
"delta": -0.0029,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.704,
"after": 0.7066,
"delta": 0.0026,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.26,
"after": 0.4173,
"delta": 0.1573,
"percent_delta": 0.605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2196,
"delta": -0.0094,
"percent_delta": -0.041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 27
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1405,
"predicted_3B": 0.0011,
"predicted_AB": 3.145,
"predicted_AVG": 0.1297,
"predicted_BB": 0.2075,
"predicted_H": 0.408,
"predicted_HBP": 0.04,
"predicted_HR": 0.073,
"predicted_OBP": 0.1836,
"predicted_R": 0.3494,
"predicted_RBI": 0.2276,
"predicted_SLG": 0.2448,
"predicted_SO": 0.7123
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1405,
"after": 0.1405,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.145,
"after": 3.145,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2196,
"after": 0.1297,
"delta": -0.0899,
"percent_delta": -0.4094,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2092,
"after": 0.2075,
"delta": -0.0017,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4173,
"after": 0.408,
"delta": -0.0093,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.04,
"after": 0.04,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0748,
"after": 0.073,
"delta": -0.0018,
"percent_delta": -0.0241,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2501,
"after": 0.1836,
"delta": -0.0665,
"percent_delta": -0.2659,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3629,
"after": 0.3494,
"delta": -0.0135,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2364,
"after": 0.2276,
"delta": -0.0088,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3541,
"after": 0.2448,
"delta": -0.1093,
"percent_delta": -0.3087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7066,
"after": 0.7123,
"delta": 0.0057,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3541,
"after": 0.2448,
"delta": -0.1093,
"percent_delta": -0.3087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.15), rates preserved: AVG=0.130 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1405,
"after": 0.0,
"delta": -0.1405,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0,
"delta": -0.0011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.145,
"after": 3.0,
"delta": -0.145,
"percent_delta": -0.0461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2075,
"after": 0.0,
"delta": -0.2075,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.408,
"after": 0.0,
"delta": -0.408,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.073,
"after": 0.0,
"delta": -0.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2276,
"after": 0.0,
"delta": -0.2276,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7123,
"after": 1.0,
"delta": 0.2877,
"percent_delta": 0.4039,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7123,
"after": 1.0,
"delta": 0.2877,
"percent_delta": 0.4039,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.408,
"after": 0.0,
"delta": -0.408,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3494,
"after": 0.0,
"delta": -0.3494,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3494,
"after": 0.0,
"delta": -0.3494,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1297,
"after": 0.333,
"delta": 0.2033,
"percent_delta": 1.5675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.1836,
"after": 0.333,
"delta": 0.1494,
"percent_delta": 0.8137,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2448,
"after": 0.333,
"delta": 0.0882,
"percent_delta": 0.3603,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1297,
"after": 0.333,
"delta": 0.2033,
"percent_delta": 1.5675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1297,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1836,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2448,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1297,
"delta": -0.2033,
"percent_delta": -0.6104,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.1836,
"delta": -0.1494,
"percent_delta": -0.4487,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2448,
"delta": -0.0882,
"percent_delta": -0.2649,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1297,
"delta": -0.2033,
"percent_delta": -0.6104,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.148,
"after": 0.0,
"delta": -0.148,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.037,
"after": 3.0,
"delta": -0.037,
"percent_delta": -0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.1297,
"delta": -0.0993,
"percent_delta": -0.4336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 1.0,
"delta": 0.778,
"percent_delta": 3.5045,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.26,
"after": 2.0,
"delta": 1.74,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.248,
"after": 0.1836,
"delta": -0.0644,
"percent_delta": -0.2597,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.37,
"after": 1.0,
"delta": 0.63,
"percent_delta": 1.7027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.2448,
"delta": -0.1122,
"percent_delta": -0.3143,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.704,
"after": 0.0,
"delta": -0.704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.26,
"after": 2.0,
"delta": 1.74,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.704,
"after": 0.0,
"delta": -0.704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.037 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.222 | - |
| predicted_H | 0.260 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.248 | - |
| predicted_R | 0.370 | - |
| predicted_RBI | 0.160 | - |
| predicted_SLG | 0.357 | - |
| predicted_SO | 0.704 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | -0.007 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.145 | 0.108 |
| predicted_AVG | 0.220 | -0.009 |
| predicted_BB | 0.209 | -0.013 |
| predicted_H | 0.417 | 0.157 |
| predicted_HBP | 0.040 | - |
| predicted_HR | 0.075 | 0.025 |
| predicted_OBP | 0.250 | 0.002 |
| predicted_R | 0.363 | -0.007 |
| predicted_RBI | 0.236 | 0.076 |
| predicted_SLG | 0.354 | -0.003 |
| predicted_SO | 0.707 | 0.003 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.145 | 0.000 |
| predicted_AVG | 0.130 | -0.090 |
| predicted_BB | 0.207 | -0.002 |
| predicted_H | 0.408 | -0.009 |
| predicted_HBP | 0.040 | 0.000 |
| predicted_HR | 0.073 | -0.002 |
| predicted_OBP | 0.184 | -0.066 |
| predicted_R | 0.349 | -0.014 |
| predicted_RBI | 0.228 | -0.009 |
| predicted_SLG | 0.245 | -0.109 |
| predicted_SO | 0.712 | 0.006 |
AB rounded to 3 (raw=3.15), rates preserved: AVG=0.130 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.141 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.145 |
| predicted_AVG | 0.333 | 0.203 |
| predicted_BB | 0.000 | -0.207 |
| predicted_H | 1.000 | 0.592 |
| predicted_HR | 0.000 | -0.073 |
| predicted_OBP | 0.333 | 0.149 |
| predicted_R | 0.000 | -0.349 |
| predicted_RBI | 0.000 | -0.228 |
| predicted_SLG | 0.333 | 0.088 |
| predicted_SO | 1.000 | 0.288 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 3.000 | 0.0625 | 0.0625 | 0.0625 | 0.0625 | 0.0000 | 0.0625 | 0.0000 | 0.1875 |
| last_10 | 0.20 | 10 | - | 34.000 | 5.000 | 1.000 | 0.000 | 1.000 | 4.000 | 2.000 | 1.000 | 6.000 | 0.1471 | 0.1944 | 0.2647 | 0.1471 | 0.0294 | 0.1177 | 0.0294 | 0.1765 |
| season | 0.60 | 27 | - | 82.000 | 20.000 | 4.000 | 0.000 | 4.000 | 9.000 | 10.000 | 6.000 | 19.000 | 0.2439 | 0.3034 | 0.4390 | 0.2439 | 0.0488 | 0.1098 | 0.0732 | 0.2317 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1280 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.3240 |
| predicted_AVG | 0.2040 |
| predicted_BB | 0.1880 |
| predicted_H | 0.6780 |
| predicted_HBP | 0.0400 |
| predicted_HR | 0.1160 |
| predicted_OBP | 0.2536 |
| predicted_R | 0.3510 |
| predicted_RBI | 0.3630 |
| predicted_SLG | 0.3492 |
| predicted_SO | 0.7110 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1480 | 0.1280 | 0.1405 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 3.0370 | 3.3240 | 3.1450 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2040 | 0.2196 | model_form_blend |
| predicted_BB | 0.2220 | 0.1880 | 0.2092 | model_form_blend |
| predicted_H | 0.2600 | 0.6780 | 0.4173 | model_form_blend |
| predicted_HBP | - | 0.0400 | 0.0400 | form_only |
| predicted_HR | 0.0500 | 0.1160 | 0.0748 | model_form_blend |
| predicted_OBP | 0.2480 | 0.2536 | 0.2501 | model_form_blend |
| predicted_R | 0.3700 | 0.3510 | 0.3629 | model_form_blend |
| predicted_RBI | 0.1600 | 0.3630 | 0.2364 | model_form_blend |
| predicted_SLG | 0.3570 | 0.3492 | 0.3541 | model_form_blend |
| predicted_SO | 0.7040 | 0.7110 | 0.7066 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 45 |
| Season rows before report date | 45 |
| Report year | 2026 |
| Profile rows used | 27 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.244 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B-LF |
| gameID | 20260616_NYM@CIN |
| game_type | full |
| mlbID | 676724 |
| playerID | 676724 |
| playerName | Jared Young |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-16 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.326 |
| sl_xwoba | 0.34 |
| sl_xba | 0.246 |
| sl_xslg | 0.447 |
| sl_sweet_spot_percent | 26.6 |
| sl_barrel_batted_rate | 12.5 |
| sl_hard_hit_percent | 46.9 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 9.3 |
| sl_whiff_percent | 26.6 |
| sl_swing_percent | 47.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.151 | 0.000 | 0.000 | Hitting_2B | 0.131 | 0.000 | -0.131 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.470 | 4.000 | 4.000 | Hitting_AB | 4.138 | 4.000 | -0.138 | 0.000 |
| predicted_AVG | 0.264 | 0.250 | 0.250 | Hitting_AVG | 0.236 | 0.750 | 0.014 | -0.500 |
| predicted_BB | 0.260 | 0.000 | 0.000 | Hitting_BB | 0.277 | 1.000 | -0.277 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.180 | 1.000 | 1.000 | Hitting_H | 0.977 | 3.000 | 0.023 | -2.000 |
| predicted_HR | 0.140 | 1.000 | 0.000 | Hitting_HR | 0.104 | 0.000 | 0.896 | 1.000 |
| predicted_OBP | 0.346 | 0.250 | 0.250 | Hitting_OBP | 0.282 | 0.800 | -0.032 | -0.550 |
| predicted_R | 0.534 | 1.000 | 1.000 | Hitting_R | 0.485 | 3.000 | 0.515 | -2.000 |
| predicted_RBI | 0.600 | 3.000 | 1.000 | Hitting_RBI | 0.562 | 1.000 | 2.438 | 2.000 |
| predicted_SLG | 0.452 | 1.000 | 0.250 | Hitting_SLG | 0.345 | 0.750 | 0.655 | 0.250 |
| predicted_SO | 0.767 | 2.000 | 1.000 | Hitting_SO | 0.781 | 0.000 | 1.219 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_RBI: 0.6000 -> 3.0000 (boost 2.4000, better) |
| Biggest Deboost | predicted_AB: 4.4700 -> 4.0000 (deboost -0.4700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 6 | 1 | 6 | 1 | predicted_H: 1.1800 -> 1.2620 (boost 0.0820, better) | predicted_AB: 4.4700 -> 4.3480 (deboost -0.1220, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4679 -> 0.4269 (deboost -0.0410, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_RBI: 0.5846 -> 1.0000 (boost 0.4154, better) | predicted_AB: 4.3480 -> 4.0000 (deboost -0.3480, worse) | AB rounded to 4 (raw=4.47), rates preserved: AVG=0.276 HR/AB=0.029 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.400) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5927 -> 1.0000 (boost 0.4073, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4269 -> 0.2500 (deboost -0.1769, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 3 | 0 | 2 | 1 | predicted_RBI: 1.0000 -> 3.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4269 (boost 0.1769, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666182",
"player_name": "Bo Bichette",
"position": "SS",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.151,
"predicted_3B": 0.014,
"predicted_AB": 4.47,
"predicted_AVG": 0.264,
"predicted_BB": 0.26,
"predicted_H": 1.18,
"predicted_HR": 0.14,
"predicted_OBP": 0.346,
"predicted_R": 0.534,
"predicted_RBI": 0.6,
"predicted_SLG": 0.452,
"predicted_SO": 0.767
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2033,
"predicted_3B": 0.0119,
"predicted_AB": 4.348,
"predicted_AVG": 0.2913,
"predicted_BB": 0.2456,
"predicted_H": 1.262,
"predicted_HBP": 0.011,
"predicted_HR": 0.1349,
"predicted_OBP": 0.3528,
"predicted_R": 0.6156,
"predicted_RBI": 0.6072,
"predicted_SLG": 0.4679,
"predicted_SO": 0.7836
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.151,
"after": 0.2033,
"delta": 0.0523,
"percent_delta": 0.3464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 4.348,
"delta": -0.122,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2913,
"delta": 0.0273,
"percent_delta": 0.1034,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.26,
"after": 0.2456,
"delta": -0.0144,
"percent_delta": -0.0554,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 1.262,
"delta": 0.082,
"percent_delta": 0.0695,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1349,
"delta": -0.0051,
"percent_delta": -0.0364,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.346,
"after": 0.3528,
"delta": 0.0068,
"percent_delta": 0.0197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.534,
"after": 0.6156,
"delta": 0.0816,
"percent_delta": 0.1528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.6072,
"delta": 0.0072,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4679,
"delta": 0.0159,
"percent_delta": 0.0352,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.767,
"after": 0.7836,
"delta": 0.0166,
"percent_delta": 0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 6,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.18,
"after": 1.262,
"delta": 0.082,
"percent_delta": 0.0695,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.47,
"after": 4.348,
"delta": -0.122,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 73
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2033,
"predicted_3B": 0.0119,
"predicted_AB": 4.348,
"predicted_AVG": 0.2838,
"predicted_BB": 0.2436,
"predicted_H": 1.2339,
"predicted_HBP": 0.011,
"predicted_HR": 0.1317,
"predicted_OBP": 0.3218,
"predicted_R": 0.5927,
"predicted_RBI": 0.5846,
"predicted_SLG": 0.4269,
"predicted_SO": 0.7899
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2033,
"after": 0.2033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.348,
"after": 4.348,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2913,
"after": 0.2838,
"delta": -0.0075,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2456,
"after": 0.2436,
"delta": -0.002,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.262,
"after": 1.2339,
"delta": -0.0281,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1349,
"after": 0.1317,
"delta": -0.0032,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3528,
"after": 0.3218,
"delta": -0.031,
"percent_delta": -0.0879,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6156,
"after": 0.5927,
"delta": -0.0229,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6072,
"after": 0.5846,
"delta": -0.0226,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4679,
"after": 0.4269,
"delta": -0.041,
"percent_delta": -0.0876,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7836,
"after": 0.7899,
"delta": 0.0063,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4679,
"after": 0.4269,
"delta": -0.041,
"percent_delta": -0.0876,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.47), rates preserved: AVG=0.276 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2033,
"after": 0.0,
"delta": -0.2033,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.348,
"after": 4.0,
"delta": -0.348,
"percent_delta": -0.08,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2436,
"after": 0.0,
"delta": -0.2436,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2339,
"after": 1.0,
"delta": -0.2339,
"percent_delta": -0.1896,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1317,
"after": 0.0,
"delta": -0.1317,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5846,
"after": 1.0,
"delta": 0.4154,
"percent_delta": 0.7106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7899,
"after": 1.0,
"delta": 0.2101,
"percent_delta": 0.266,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5846,
"after": 1.0,
"delta": 0.4154,
"percent_delta": 0.7106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.348,
"after": 4.0,
"delta": -0.348,
"percent_delta": -0.08,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.400)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9,
"bvp": 0.1
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5927,
"after": 1.0,
"delta": 0.4073,
"percent_delta": 0.6872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5927,
"after": 1.0,
"delta": 0.4073,
"percent_delta": 0.6872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2838,
"after": 0.25,
"delta": -0.0338,
"percent_delta": -0.1191,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3218,
"after": 0.25,
"delta": -0.0718,
"percent_delta": -0.2231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4269,
"after": 0.25,
"delta": -0.1769,
"percent_delta": -0.4144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4269,
"after": 0.25,
"delta": -0.1769,
"percent_delta": -0.4144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2838,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3218,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4269,
"predicted_SO": 2.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2838,
"delta": 0.0338,
"percent_delta": 0.1351,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3218,
"delta": 0.0718,
"percent_delta": 0.2871,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4269,
"delta": 0.1769,
"percent_delta": 0.7076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4269,
"delta": 0.1769,
"percent_delta": 0.7076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.151,
"after": 0.0,
"delta": -0.151,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.47,
"after": 4.0,
"delta": -0.47,
"percent_delta": -0.1051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2838,
"delta": 0.0198,
"percent_delta": 0.075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.18,
"after": 1.0,
"delta": -0.18,
"percent_delta": -0.1525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 1.0,
"delta": 0.86,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.346,
"after": 0.3218,
"delta": -0.0242,
"percent_delta": -0.0699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.534,
"after": 1.0,
"delta": 0.466,
"percent_delta": 0.8727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 3.0,
"delta": 2.4,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4269,
"delta": -0.0251,
"percent_delta": -0.0555,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.767,
"after": 2.0,
"delta": 1.233,
"percent_delta": 1.6076,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6,
"after": 3.0,
"delta": 2.4,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.47,
"after": 4.0,
"delta": -0.47,
"percent_delta": -0.1051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.151 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.470 | - |
| predicted_AVG | 0.264 | - |
| predicted_BB | 0.260 | - |
| predicted_H | 1.180 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.346 | - |
| predicted_R | 0.534 | - |
| predicted_RBI | 0.600 | - |
| predicted_SLG | 0.452 | - |
| predicted_SO | 0.767 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.203 | 0.052 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 4.348 | -0.122 |
| predicted_AVG | 0.291 | 0.027 |
| predicted_BB | 0.246 | -0.014 |
| predicted_H | 1.262 | 0.082 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.135 | -0.005 |
| predicted_OBP | 0.353 | 0.007 |
| predicted_R | 0.616 | 0.082 |
| predicted_RBI | 0.607 | 0.007 |
| predicted_SLG | 0.468 | 0.016 |
| predicted_SO | 0.784 | 0.017 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.203 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 4.348 | 0.000 |
| predicted_AVG | 0.284 | -0.008 |
| predicted_BB | 0.244 | -0.002 |
| predicted_H | 1.234 | -0.028 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.132 | -0.003 |
| predicted_OBP | 0.322 | -0.031 |
| predicted_R | 0.593 | -0.023 |
| predicted_RBI | 0.585 | -0.023 |
| predicted_SLG | 0.427 | -0.041 |
| predicted_SO | 0.790 | 0.006 |
AB rounded to 4 (raw=4.47), rates preserved: AVG=0.276 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.400)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.203 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | -0.348 |
| predicted_AVG | 0.250 | -0.034 |
| predicted_BB | 0.000 | -0.244 |
| predicted_H | 1.000 | -0.234 |
| predicted_HR | 0.000 | -0.132 |
| predicted_OBP | 0.250 | -0.072 |
| predicted_R | 1.000 | 0.407 |
| predicted_RBI | 1.000 | 0.415 |
| predicted_SLG | 0.250 | -0.177 |
| predicted_SO | 1.000 | 0.210 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 3.000 | 2.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 23.000 | 12.000 | 3.000 | 0.000 | 0.000 | 2.000 | 6.000 | 1.000 | 4.000 | 0.5217 | 0.5417 | 0.6522 | 0.5217 | 0.0000 | 0.0870 | 0.0435 | 0.1739 |
| last_10 | 0.20 | 10 | - | 43.000 | 17.000 | 4.000 | 0.000 | 3.000 | 10.000 | 10.000 | 1.000 | 9.000 | 0.3953 | 0.4000 | 0.6977 | 0.3953 | 0.0698 | 0.2326 | 0.0233 | 0.2093 |
| season | 0.60 | 73 | - | 296.000 | 75.000 | 11.000 | 1.000 | 8.000 | 42.000 | 39.000 | 19.000 | 56.000 | 0.2534 | 0.2969 | 0.3784 | 0.2534 | 0.0270 | 0.1419 | 0.0642 | 0.1892 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2740 |
| predicted_3B | 0.0090 |
| predicted_AB | 4.1830 |
| predicted_AVG | 0.3282 |
| predicted_BB | 0.2260 |
| predicted_H | 1.3730 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.1280 |
| predicted_OBP | 0.3619 |
| predicted_R | 0.7260 |
| predicted_RBI | 0.6170 |
| predicted_SLG | 0.4895 |
| predicted_SO | 0.8060 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1510 | 0.2740 | 0.2033 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 4.4700 | 4.1830 | 4.3480 | model_form_blend |
| predicted_AVG | 0.2640 | 0.3282 | 0.2913 | model_form_blend |
| predicted_BB | 0.2600 | 0.2260 | 0.2456 | model_form_blend |
| predicted_H | 1.1800 | 1.3730 | 1.2620 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1400 | 0.1280 | 0.1349 | model_form_blend |
| predicted_OBP | 0.3460 | 0.3619 | 0.3528 | model_form_blend |
| predicted_R | 0.5340 | 0.7260 | 0.6156 | model_form_blend |
| predicted_RBI | 0.6000 | 0.6170 | 0.6072 | model_form_blend |
| predicted_SLG | 0.4520 | 0.4895 | 0.4679 | model_form_blend |
| predicted_SO | 0.7670 | 0.8060 | 0.7836 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 260 |
| Season rows before report date | 260 |
| Report year | 2026 |
| Profile rows used | 73 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.253 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.75 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 3 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 666182 |
| playerID | 666182 |
| playerName | Bo Bichette |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.3 |
| sl_bb_percent | 6.2 |
| sl_woba | 0.299 |
| sl_xwoba | 0.334 |
| sl_xba | 0.287 |
| sl_xslg | 0.436 |
| sl_sweet_spot_percent | 35.2 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 45.3 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 7.9 |
| sl_whiff_percent | 17.5 |
| sl_swing_percent | 53.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.130 | 0.000 | 0.000 | Hitting_2B | 0.151 | 0.000 | -0.151 | 0.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.009 | 1.000 | -0.009 | -1.000 |
| predicted_AB | 4.210 | 5.000 | 4.000 | Hitting_AB | 3.826 | 5.000 | 1.174 | 0.000 |
| predicted_AVG | 0.236 | 0.200 | 0.250 | Hitting_AVG | 0.263 | 0.200 | -0.063 | 0.000 |
| predicted_BB | 0.275 | 0.000 | 0.000 | Hitting_BB | 0.306 | 0.000 | -0.306 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.046 | 0.000 | -0.046 | 0.000 |
| predicted_H | 0.990 | 1.000 | 1.000 | Hitting_H | 1.005 | 1.000 | -0.005 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.068 | 0.000 | -0.068 | 0.000 |
| predicted_OBP | 0.304 | 0.200 | 0.250 | Hitting_OBP | 0.330 | 0.200 | -0.130 | 0.000 |
| predicted_R | 0.551 | 1.000 | 1.000 | Hitting_R | 0.580 | 1.000 | 0.420 | 0.000 |
| predicted_RBI | 0.370 | 1.000 | 0.000 | Hitting_RBI | 0.466 | 0.000 | 0.534 | 1.000 |
| predicted_SLG | 0.390 | 0.200 | 0.250 | Hitting_SLG | 0.360 | 0.600 | -0.160 | -0.400 |
| predicted_SO | 0.884 | 0.000 | 1.000 | Hitting_SO | 0.836 | 0.000 | -0.836 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_AB: 4.2100 -> 5.0000 (boost 0.7900, better) |
| Biggest Deboost | predicted_SO: 0.8840 -> 0.0000 (deboost -0.8840, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_AB: 4.2100 -> 4.1054 (deboost -0.1046, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3027 -> 0.2806 (deboost -0.0221, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 1 | 7 | 0 | 8 | predicted_SO: 0.8869 -> 1.0000 (boost 0.1131, worse) | predicted_RBI: 0.3278 -> 0.0000 (deboost -0.3278, worse) | AB rounded to 4 (raw=4.21), rates preserved: AVG=0.226 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5297 -> 1.0000 (boost 0.4703, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2320 -> 0.2500 (boost 0.0180, better) | predicted_SLG: 0.3614 -> 0.2500 (deboost -0.1114, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3614 (boost 0.1114, better) | predicted_AVG: 0.2500 -> 0.2320 (deboost -0.0180, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701807",
"player_name": "Carson Benge",
"position": "RF",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.13,
"predicted_3B": 0.029,
"predicted_AB": 4.21,
"predicted_AVG": 0.236,
"predicted_BB": 0.275,
"predicted_H": 0.99,
"predicted_HR": 0.12,
"predicted_OBP": 0.304,
"predicted_R": 0.551,
"predicted_RBI": 0.37,
"predicted_SLG": 0.39,
"predicted_SO": 0.884
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1144,
"predicted_3B": 0.0526,
"predicted_AB": 4.1054,
"predicted_AVG": 0.2379,
"predicted_BB": 0.2796,
"predicted_H": 0.974,
"predicted_HBP": 0.054,
"predicted_HR": 0.1065,
"predicted_OBP": 0.3027,
"predicted_R": 0.5502,
"predicted_RBI": 0.3405,
"predicted_SLG": 0.383,
"predicted_SO": 0.8798
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 0.1144,
"delta": -0.0156,
"percent_delta": -0.12,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0526,
"delta": 0.0236,
"percent_delta": 0.8138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 4.1054,
"delta": -0.1046,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2379,
"delta": 0.0019,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.275,
"after": 0.2796,
"delta": 0.0046,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.974,
"delta": -0.016,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1065,
"delta": -0.0135,
"percent_delta": -0.1125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3027,
"delta": -0.0013,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.551,
"after": 0.5502,
"delta": -0.0008,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.3405,
"delta": -0.0295,
"percent_delta": -0.0797,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.383,
"delta": -0.007,
"percent_delta": -0.0179,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.884,
"after": 0.8798,
"delta": -0.0042,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 4.1054,
"delta": -0.1046,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1144,
"predicted_3B": 0.0526,
"predicted_AB": 4.1054,
"predicted_AVG": 0.232,
"predicted_BB": 0.2773,
"predicted_H": 0.9523,
"predicted_HBP": 0.054,
"predicted_HR": 0.104,
"predicted_OBP": 0.2806,
"predicted_R": 0.5297,
"predicted_RBI": 0.3278,
"predicted_SLG": 0.3614,
"predicted_SO": 0.8869
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1144,
"after": 0.1144,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0526,
"after": 0.0526,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1054,
"after": 4.1054,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2379,
"after": 0.232,
"delta": -0.0059,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2796,
"after": 0.2773,
"delta": -0.0023,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.974,
"after": 0.9523,
"delta": -0.0217,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.054,
"after": 0.054,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1065,
"after": 0.104,
"delta": -0.0025,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3027,
"after": 0.2806,
"delta": -0.0221,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5502,
"after": 0.5297,
"delta": -0.0205,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3405,
"after": 0.3278,
"delta": -0.0127,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.383,
"after": 0.3614,
"delta": -0.0216,
"percent_delta": -0.0564,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8798,
"after": 0.8869,
"delta": 0.0071,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3027,
"after": 0.2806,
"delta": -0.0221,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.21), rates preserved: AVG=0.226 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1144,
"after": 0.0,
"delta": -0.1144,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0526,
"after": 0.0,
"delta": -0.0526,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.1054,
"after": 4.0,
"delta": -0.1054,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2773,
"after": 0.0,
"delta": -0.2773,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9523,
"after": 1.0,
"delta": 0.0477,
"percent_delta": 0.0501,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.054,
"after": 0.0,
"delta": -0.054,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.104,
"after": 0.0,
"delta": -0.104,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3278,
"after": 0.0,
"delta": -0.3278,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8869,
"after": 1.0,
"delta": 0.1131,
"percent_delta": 0.1275,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 0,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8869,
"after": 1.0,
"delta": 0.1131,
"percent_delta": 0.1275,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3278,
"after": 0.0,
"delta": -0.3278,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5297,
"after": 1.0,
"delta": 0.4703,
"percent_delta": 0.8879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5297,
"after": 1.0,
"delta": 0.4703,
"percent_delta": 0.8879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.25,
"delta": 0.018,
"percent_delta": 0.0776,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2806,
"after": 0.25,
"delta": -0.0306,
"percent_delta": -0.1091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3614,
"after": 0.25,
"delta": -0.1114,
"percent_delta": -0.3082,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.25,
"delta": 0.018,
"percent_delta": 0.0776,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3614,
"after": 0.25,
"delta": -0.1114,
"percent_delta": -0.3082,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.232,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2806,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3614,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.232,
"delta": -0.018,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2806,
"delta": 0.0306,
"percent_delta": 0.1222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3614,
"delta": 0.1114,
"percent_delta": 0.4458,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3614,
"delta": 0.1114,
"percent_delta": 0.4458,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.232,
"delta": -0.018,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 5.0,
"delta": 0.79,
"percent_delta": 0.1876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.232,
"delta": -0.004,
"percent_delta": -0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.275,
"after": 0.0,
"delta": -0.275,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.0,
"delta": 0.01,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.2806,
"delta": -0.0234,
"percent_delta": -0.077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.551,
"after": 1.0,
"delta": 0.449,
"percent_delta": 0.8149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 1.0,
"delta": 0.63,
"percent_delta": 1.7027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.3614,
"delta": -0.0286,
"percent_delta": -0.0733,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.884,
"after": 0.0,
"delta": -0.884,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 5.0,
"delta": 0.79,
"percent_delta": 0.1876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.884,
"after": 0.0,
"delta": -0.884,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.130 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.275 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.551 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.390 | - |
| predicted_SO | 0.884 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.114 | -0.016 |
| predicted_3B | 0.053 | 0.024 |
| predicted_AB | 4.105 | -0.105 |
| predicted_AVG | 0.238 | 0.002 |
| predicted_BB | 0.280 | 0.005 |
| predicted_H | 0.974 | -0.016 |
| predicted_HBP | 0.054 | - |
| predicted_HR | 0.106 | -0.013 |
| predicted_OBP | 0.303 | -0.001 |
| predicted_R | 0.550 | -0.001 |
| predicted_RBI | 0.341 | -0.029 |
| predicted_SLG | 0.383 | -0.007 |
| predicted_SO | 0.880 | -0.004 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.114 | 0.000 |
| predicted_3B | 0.053 | 0.000 |
| predicted_AB | 4.105 | 0.000 |
| predicted_AVG | 0.232 | -0.006 |
| predicted_BB | 0.277 | -0.002 |
| predicted_H | 0.952 | -0.022 |
| predicted_HBP | 0.054 | 0.000 |
| predicted_HR | 0.104 | -0.003 |
| predicted_OBP | 0.281 | -0.022 |
| predicted_R | 0.530 | -0.021 |
| predicted_RBI | 0.328 | -0.013 |
| predicted_SLG | 0.361 | -0.022 |
| predicted_SO | 0.887 | 0.007 |
AB rounded to 4 (raw=4.21), rates preserved: AVG=0.226 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.114 |
| predicted_3B | 0.000 | -0.053 |
| predicted_AB | 4.000 | -0.105 |
| predicted_AVG | 0.250 | 0.018 |
| predicted_BB | 0.000 | -0.277 |
| predicted_H | 1.000 | 0.048 |
| predicted_HR | 0.000 | -0.104 |
| predicted_OBP | 0.250 | -0.031 |
| predicted_R | 1.000 | 0.470 |
| predicted_RBI | 0.000 | -0.328 |
| predicted_SLG | 0.250 | -0.111 |
| predicted_SO | 1.000 | 0.113 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 4.000 | 0.000 | 1.000 | 0.000 | 0.000 | 2.000 | 2.000 | 4.000 | 0.1818 | 0.2500 | 0.2727 | 0.1818 | 0.0000 | 0.0000 | 0.0909 | 0.1818 |
| last_10 | 0.20 | 10 | - | 42.000 | 11.000 | 0.000 | 2.000 | 1.000 | 2.000 | 7.000 | 2.000 | 9.000 | 0.2619 | 0.3111 | 0.4286 | 0.2619 | 0.0238 | 0.0476 | 0.0476 | 0.2143 |
| season | 0.60 | 69 | - | 259.000 | 65.000 | 9.000 | 2.000 | 7.000 | 26.000 | 38.000 | 19.000 | 61.000 | 0.2510 | 0.3121 | 0.3822 | 0.2510 | 0.0270 | 0.1004 | 0.0734 | 0.2355 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0930 |
| predicted_3B | 0.0850 |
| predicted_AB | 3.9620 |
| predicted_AVG | 0.2404 |
| predicted_BB | 0.2860 |
| predicted_H | 0.9520 |
| predicted_HBP | 0.0540 |
| predicted_HR | 0.0880 |
| predicted_OBP | 0.3008 |
| predicted_R | 0.5490 |
| predicted_RBI | 0.3000 |
| predicted_SLG | 0.3734 |
| predicted_SO | 0.8740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1300 | 0.0930 | 0.1144 | model_form_blend |
| predicted_3B | 0.0290 | 0.0850 | 0.0526 | model_form_blend |
| predicted_AB | 4.2100 | 3.9620 | 4.1054 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2404 | 0.2379 | model_form_blend |
| predicted_BB | 0.2750 | 0.2860 | 0.2796 | model_form_blend |
| predicted_H | 0.9900 | 0.9520 | 0.9740 | model_form_blend |
| predicted_HBP | - | 0.0540 | 0.0540 | form_only |
| predicted_HR | 0.1200 | 0.0880 | 0.1065 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3008 | 0.3027 | model_form_blend |
| predicted_R | 0.5510 | 0.5490 | 0.5502 | model_form_blend |
| predicted_RBI | 0.3700 | 0.3000 | 0.3405 | model_form_blend |
| predicted_SLG | 0.3900 | 0.3734 | 0.3830 | model_form_blend |
| predicted_SO | 0.8840 | 0.8740 | 0.8798 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 219 |
| Season rows before report date | 219 |
| Report year | 2026 |
| Profile rows used | 69 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.251 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 1 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 701807 |
| playerID | 701807 |
| playerName | Carson Benge |
| pos | OF |
| started | True |
| startingPosition | RF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 6.7 |
| sl_woba | 0.308 |
| sl_xwoba | 0.347 |
| sl_xba | 0.284 |
| sl_xslg | 0.454 |
| sl_sweet_spot_percent | 40.7 |
| sl_barrel_batted_rate | 9.1 |
| sl_hard_hit_percent | 43.2 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 11.4 |
| sl_whiff_percent | 21.5 |
| sl_swing_percent | 45.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.125 | 0.000 | 0.000 | Hitting_2B | 0.115 | 1.000 | -0.115 | -1.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_AB | 4.020 | 4.000 | 4.000 | Hitting_AB | 3.769 | 5.000 | 0.231 | -1.000 |
| predicted_AVG | 0.274 | 0.000 | 0.250 | Hitting_AVG | 0.302 | 0.600 | -0.302 | -0.600 |
| predicted_BB | 0.589 | 0.000 | 1.000 | Hitting_BB | 0.637 | 0.000 | -0.637 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_H | 1.100 | 0.000 | 1.000 | Hitting_H | 1.137 | 3.000 | -1.137 | -3.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.264 | 0.000 | -0.264 | 0.000 |
| predicted_OBP | 0.402 | 0.000 | 0.400 | Hitting_OBP | 0.400 | 0.600 | -0.400 | -0.600 |
| predicted_R | 0.607 | 0.000 | 1.000 | Hitting_R | 0.604 | 2.000 | -0.604 | -2.000 |
| predicted_RBI | 0.670 | 0.000 | 1.000 | Hitting_RBI | 0.632 | 2.000 | -0.632 | -2.000 |
| predicted_SLG | 0.515 | 0.000 | 0.250 | Hitting_SLG | 0.554 | 0.800 | -0.554 | -0.800 |
| predicted_SO | 0.571 | 1.000 | 1.000 | Hitting_SO | 0.659 | 0.000 | 0.341 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.5710 -> 1.0000 (boost 0.4290, worse) |
| Biggest Deboost | predicted_H: 1.1000 -> 0.0000 (deboost -1.1000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_BB: 0.5890 -> 0.6399 (boost 0.0509, better) | predicted_AB: 4.0200 -> 3.8597 (deboost -0.1603, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5337 -> 0.4863 (deboost -0.0474, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 0.5689 -> 1.0000 (boost 0.4311, worse) | predicted_HR: 0.1868 -> 0.0000 (deboost -0.1868, worse) | AB rounded to 4 (raw=4.02), rates preserved: AVG=0.280 HR/AB=0.046 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=43.0, weight=0.236, BvP AVG=0.233) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5792 -> 1.0000 (boost 0.4208, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3913 -> 0.4000 (boost 0.0087, better) | predicted_SLG: 0.4863 -> 0.2500 (deboost -0.2363, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 0 | 4 | 0 | 4 | - | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4863 (boost 0.2363, better) | predicted_OBP: 0.4000 -> 0.3913 (deboost -0.0087, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665742",
"player_name": "Juan Soto",
"position": "LF",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.125,
"predicted_3B": 0.018,
"predicted_AB": 4.02,
"predicted_AVG": 0.274,
"predicted_BB": 0.589,
"predicted_H": 1.1,
"predicted_HR": 0.19,
"predicted_OBP": 0.402,
"predicted_R": 0.607,
"predicted_RBI": 0.67,
"predicted_SLG": 0.515,
"predicted_SO": 0.571
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1622,
"predicted_3B": 0.0151,
"predicted_AB": 3.8597,
"predicted_AVG": 0.2996,
"predicted_BB": 0.6399,
"predicted_H": 1.1497,
"predicted_HBP": 0.004,
"predicted_HR": 0.1913,
"predicted_OBP": 0.4176,
"predicted_R": 0.6016,
"predicted_RBI": 0.6696,
"predicted_SLG": 0.5337,
"predicted_SO": 0.5643
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.125,
"after": 0.1622,
"delta": 0.0372,
"percent_delta": 0.2976,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0151,
"delta": -0.0029,
"percent_delta": -0.1611,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 3.8597,
"delta": -0.1603,
"percent_delta": -0.0399,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.274,
"after": 0.2996,
"delta": 0.0256,
"percent_delta": 0.0934,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.589,
"after": 0.6399,
"delta": 0.0509,
"percent_delta": 0.0864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 1.1497,
"delta": 0.0497,
"percent_delta": 0.0452,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.1913,
"delta": 0.0013,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.402,
"after": 0.4176,
"delta": 0.0156,
"percent_delta": 0.0388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.607,
"after": 0.6016,
"delta": -0.0054,
"percent_delta": -0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.67,
"after": 0.6696,
"delta": -0.0004,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.515,
"after": 0.5337,
"delta": 0.0187,
"percent_delta": 0.0363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.571,
"after": 0.5643,
"delta": -0.0067,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.589,
"after": 0.6399,
"delta": 0.0509,
"percent_delta": 0.0864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.02,
"after": 3.8597,
"delta": -0.1603,
"percent_delta": -0.0399,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 56
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1622,
"predicted_3B": 0.0151,
"predicted_AB": 3.8597,
"predicted_AVG": 0.2912,
"predicted_BB": 0.6347,
"predicted_H": 1.1241,
"predicted_HBP": 0.004,
"predicted_HR": 0.1868,
"predicted_OBP": 0.3913,
"predicted_R": 0.5792,
"predicted_RBI": 0.6447,
"predicted_SLG": 0.4863,
"predicted_SO": 0.5689
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1622,
"after": 0.1622,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0151,
"after": 0.0151,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8597,
"after": 3.8597,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2996,
"after": 0.2912,
"delta": -0.0084,
"percent_delta": -0.028,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6399,
"after": 0.6347,
"delta": -0.0052,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1497,
"after": 1.1241,
"delta": -0.0256,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1913,
"after": 0.1868,
"delta": -0.0045,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4176,
"after": 0.3913,
"delta": -0.0263,
"percent_delta": -0.063,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6016,
"after": 0.5792,
"delta": -0.0224,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6696,
"after": 0.6447,
"delta": -0.0249,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5337,
"after": 0.4863,
"delta": -0.0474,
"percent_delta": -0.0888,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5643,
"after": 0.5689,
"delta": 0.0046,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5337,
"after": 0.4863,
"delta": -0.0474,
"percent_delta": -0.0888,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.02), rates preserved: AVG=0.280 HR/AB=0.046",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1622,
"after": 0.0,
"delta": -0.1622,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0151,
"after": 0.0,
"delta": -0.0151,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8597,
"after": 4.0,
"delta": 0.1403,
"percent_delta": 0.0363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6347,
"after": 1.0,
"delta": 0.3653,
"percent_delta": 0.5755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1241,
"after": 1.0,
"delta": -0.1241,
"percent_delta": -0.1104,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1868,
"after": 0.0,
"delta": -0.1868,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6447,
"after": 1.0,
"delta": 0.3553,
"percent_delta": 0.5511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5689,
"after": 1.0,
"delta": 0.4311,
"percent_delta": 0.7578,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5689,
"after": 1.0,
"delta": 0.4311,
"percent_delta": 0.7578,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.1868,
"after": 0.0,
"delta": -0.1868,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=43.0, weight=0.236, BvP AVG=0.233)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.7644,
"bvp": 0.2356
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5792,
"after": 1.0,
"delta": 0.4208,
"percent_delta": 0.7265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5792,
"after": 1.0,
"delta": 0.4208,
"percent_delta": 0.7265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2912,
"after": 0.25,
"delta": -0.0412,
"percent_delta": -0.1415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3913,
"after": 0.4,
"delta": 0.0087,
"percent_delta": 0.0222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4863,
"after": 0.25,
"delta": -0.2363,
"percent_delta": -0.4859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3913,
"after": 0.4,
"delta": 0.0087,
"percent_delta": 0.0222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4863,
"after": 0.25,
"delta": -0.2363,
"percent_delta": -0.4859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2912,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3913,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4863,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2912,
"delta": 0.0412,
"percent_delta": 0.1649,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3913,
"delta": -0.0087,
"percent_delta": -0.0217,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4863,
"delta": 0.2363,
"percent_delta": 0.9451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4863,
"delta": 0.2363,
"percent_delta": 0.9451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3913,
"delta": -0.0087,
"percent_delta": -0.0217,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.125,
"after": 0.0,
"delta": -0.125,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 4.0,
"delta": -0.02,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.274,
"after": 0.2912,
"delta": 0.0172,
"percent_delta": 0.0628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.589,
"after": 0.0,
"delta": -0.589,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 0.0,
"delta": -1.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.402,
"after": 0.3913,
"delta": -0.0107,
"percent_delta": -0.0266,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.607,
"after": 0.0,
"delta": -0.607,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.67,
"after": 0.0,
"delta": -0.67,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.515,
"after": 0.4863,
"delta": -0.0287,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.571,
"after": 1.0,
"delta": 0.429,
"percent_delta": 0.7513,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.571,
"after": 1.0,
"delta": 0.429,
"percent_delta": 0.7513,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.1,
"after": 0.0,
"delta": -1.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.125 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.274 | - |
| predicted_BB | 0.589 | - |
| predicted_H | 1.100 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.402 | - |
| predicted_R | 0.607 | - |
| predicted_RBI | 0.670 | - |
| predicted_SLG | 0.515 | - |
| predicted_SO | 0.571 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.037 |
| predicted_3B | 0.015 | -0.003 |
| predicted_AB | 3.860 | -0.160 |
| predicted_AVG | 0.300 | 0.026 |
| predicted_BB | 0.640 | 0.051 |
| predicted_H | 1.150 | 0.050 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.191 | 0.001 |
| predicted_OBP | 0.418 | 0.016 |
| predicted_R | 0.602 | -0.005 |
| predicted_RBI | 0.670 | -0.000 |
| predicted_SLG | 0.534 | 0.019 |
| predicted_SO | 0.564 | -0.007 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.000 |
| predicted_3B | 0.015 | 0.000 |
| predicted_AB | 3.860 | 0.000 |
| predicted_AVG | 0.291 | -0.008 |
| predicted_BB | 0.635 | -0.005 |
| predicted_H | 1.124 | -0.026 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.187 | -0.005 |
| predicted_OBP | 0.391 | -0.026 |
| predicted_R | 0.579 | -0.022 |
| predicted_RBI | 0.645 | -0.025 |
| predicted_SLG | 0.486 | -0.047 |
| predicted_SO | 0.569 | 0.005 |
AB rounded to 4 (raw=4.02), rates preserved: AVG=0.280 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=43.0, weight=0.236, BvP AVG=0.233)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.162 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 4.000 | 0.140 |
| predicted_AVG | 0.250 | -0.041 |
| predicted_BB | 1.000 | 0.365 |
| predicted_H | 1.000 | -0.124 |
| predicted_HR | 0.000 | -0.187 |
| predicted_OBP | 0.400 | 0.009 |
| predicted_R | 1.000 | 0.421 |
| predicted_RBI | 1.000 | 0.355 |
| predicted_SLG | 0.250 | -0.236 |
| predicted_SO | 1.000 | 0.431 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 8.000 | 2.000 | 0.000 | 0.000 | 4.000 | 3.000 | 5.000 | 3.000 | 0.4444 | 0.5652 | 0.5556 | 0.4444 | 0.0000 | 0.2222 | 0.2778 | 0.1667 |
| last_10 | 0.20 | 10 | - | 34.000 | 13.000 | 3.000 | 0.000 | 2.000 | 7.000 | 6.000 | 10.000 | 3.000 | 0.3824 | 0.5227 | 0.6471 | 0.3824 | 0.0588 | 0.2059 | 0.2941 | 0.0882 |
| season | 0.60 | 56 | - | 206.000 | 62.000 | 7.000 | 1.000 | 15.000 | 36.000 | 34.000 | 33.000 | 32.000 | 0.3010 | 0.3958 | 0.5631 | 0.3010 | 0.0728 | 0.1748 | 0.1602 | 0.1553 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2140 |
| predicted_3B | 0.0110 |
| predicted_AB | 3.6360 |
| predicted_AVG | 0.3354 |
| predicted_BB | 0.7110 |
| predicted_H | 1.2190 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1930 |
| predicted_OBP | 0.4393 |
| predicted_R | 0.5940 |
| predicted_RBI | 0.6690 |
| predicted_SLG | 0.5597 |
| predicted_SO | 0.5550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1250 | 0.2140 | 0.1622 | model_form_blend |
| predicted_3B | 0.0180 | 0.0110 | 0.0151 | model_form_blend |
| predicted_AB | 4.0200 | 3.6360 | 3.8597 | model_form_blend |
| predicted_AVG | 0.2740 | 0.3354 | 0.2996 | model_form_blend |
| predicted_BB | 0.5890 | 0.7110 | 0.6399 | model_form_blend |
| predicted_H | 1.1000 | 1.2190 | 1.1497 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.1900 | 0.1930 | 0.1913 | model_form_blend |
| predicted_OBP | 0.4020 | 0.4393 | 0.4176 | model_form_blend |
| predicted_R | 0.6070 | 0.5940 | 0.6016 | model_form_blend |
| predicted_RBI | 0.6700 | 0.6690 | 0.6696 | model_form_blend |
| predicted_SLG | 0.5150 | 0.5597 | 0.5337 | model_form_blend |
| predicted_SO | 0.5710 | 0.5550 | 0.5643 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 182 |
| Season rows before report date | 182 |
| Report year | 2026 |
| Profile rows used | 56 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.301 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.6 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 665742 |
| playerID | 665742 |
| playerName | Juan Soto |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.5 |
| sl_bb_percent | 13.9 |
| sl_woba | 0.402 |
| sl_xwoba | 0.421 |
| sl_xba | 0.303 |
| sl_xslg | 0.612 |
| sl_sweet_spot_percent | 31.6 |
| sl_barrel_batted_rate | 15.4 |
| sl_hard_hit_percent | 49.7 |
| sl_exit_velocity_avg | 93.1 |
| sl_launch_angle_avg | 15.7 |
| sl_whiff_percent | 20.8 |
| sl_swing_percent | 40.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.147 | 0.000 | 0.000 | Hitting_2B | 0.064 | 1.000 | -0.064 | -1.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_AB | 3.570 | 4.000 | 4.000 | Hitting_AB | 3.449 | 4.000 | 0.551 | 0.000 |
| predicted_AVG | 0.242 | 0.000 | 0.250 | Hitting_AVG | 0.260 | 0.250 | -0.260 | -0.250 |
| predicted_BB | 0.441 | 0.000 | 0.000 | Hitting_BB | 0.577 | 1.000 | -0.577 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.141 | 0.000 | -0.141 | 0.000 |
| predicted_H | 0.860 | 0.000 | 1.000 | Hitting_H | 0.897 | 1.000 | -0.897 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_OBP | 0.322 | 0.000 | 0.250 | Hitting_OBP | 0.365 | 0.400 | -0.365 | -0.400 |
| predicted_R | 0.412 | 0.000 | 0.000 | Hitting_R | 0.474 | 0.000 | -0.474 | 0.000 |
| predicted_RBI | 0.470 | 0.000 | 1.000 | Hitting_RBI | 0.346 | 2.000 | -0.346 | -2.000 |
| predicted_SLG | 0.403 | 0.000 | 0.250 | Hitting_SLG | 0.372 | 0.500 | -0.372 | -0.500 |
| predicted_SO | 1.176 | 2.000 | 1.000 | Hitting_SO | 1.231 | 1.000 | 0.769 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 1.1760 -> 2.0000 (boost 0.8240, worse) |
| Biggest Deboost | predicted_H: 0.8600 -> 0.0000 (deboost -0.8600, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 0 | 1 | 1 | 0 | - | predicted_SO: 1.1760 -> 1.1194 (deboost -0.0566, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4054 -> 0.3904 (deboost -0.0150, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_RBI: 0.4502 -> 1.0000 (boost 0.5498, better) | predicted_BB: 0.4362 -> 0.0000 (deboost -0.4362, worse) | AB rounded to 4 (raw=3.57), rates preserved: AVG=0.235 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3947 -> 0.0000 (deboost -0.3947, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2368 -> 0.2500 (boost 0.0132, better) | predicted_SLG: 0.3904 -> 0.2500 (deboost -0.1404, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 0 | 3 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3904 (boost 0.1404, better) | predicted_AVG: 0.2500 -> 0.2368 (deboost -0.0132, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805999",
"player_name": "A.J. Ewing",
"position": "CF",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.147,
"predicted_3B": 0.029,
"predicted_AB": 3.57,
"predicted_AVG": 0.242,
"predicted_BB": 0.441,
"predicted_H": 0.86,
"predicted_HR": 0.11,
"predicted_OBP": 0.322,
"predicted_R": 0.412,
"predicted_RBI": 0.47,
"predicted_SLG": 0.403,
"predicted_SO": 1.176
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.183,
"predicted_3B": 0.0243,
"predicted_AB": 3.5455,
"predicted_AVG": 0.2429,
"predicted_BB": 0.4398,
"predicted_H": 0.8588,
"predicted_HBP": 0.006,
"predicted_HR": 0.1068,
"predicted_OBP": 0.3239,
"predicted_R": 0.41,
"predicted_RBI": 0.4676,
"predicted_SLG": 0.4054,
"predicted_SO": 1.1194
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.183,
"delta": 0.036,
"percent_delta": 0.2449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0243,
"delta": -0.0047,
"percent_delta": -0.1621,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.57,
"after": 3.5455,
"delta": -0.0245,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2429,
"delta": 0.0009,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.441,
"after": 0.4398,
"delta": -0.0012,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.8588,
"delta": -0.0012,
"percent_delta": -0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1068,
"delta": -0.0032,
"percent_delta": -0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3239,
"delta": 0.0019,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.412,
"after": 0.41,
"delta": -0.002,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.4676,
"delta": -0.0024,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4054,
"delta": 0.0024,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.176,
"after": 1.1194,
"delta": -0.0566,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.176,
"after": 1.1194,
"delta": -0.0566,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 34
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.183,
"predicted_3B": 0.0243,
"predicted_AB": 3.5455,
"predicted_AVG": 0.2368,
"predicted_BB": 0.4362,
"predicted_H": 0.8396,
"predicted_HBP": 0.006,
"predicted_HR": 0.1043,
"predicted_OBP": 0.3204,
"predicted_R": 0.3947,
"predicted_RBI": 0.4502,
"predicted_SLG": 0.3904,
"predicted_SO": 1.1285
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.183,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0243,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5455,
"after": 3.5455,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2429,
"after": 0.2368,
"delta": -0.0061,
"percent_delta": -0.0251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4398,
"after": 0.4362,
"delta": -0.0036,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8588,
"after": 0.8396,
"delta": -0.0192,
"percent_delta": -0.0224,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1068,
"after": 0.1043,
"delta": -0.0025,
"percent_delta": -0.0234,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3239,
"after": 0.3204,
"delta": -0.0035,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.41,
"after": 0.3947,
"delta": -0.0153,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4676,
"after": 0.4502,
"delta": -0.0174,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4054,
"after": 0.3904,
"delta": -0.015,
"percent_delta": -0.037,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1194,
"after": 1.1285,
"delta": 0.0091,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4054,
"after": 0.3904,
"delta": -0.015,
"percent_delta": -0.037,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.57), rates preserved: AVG=0.235 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.0,
"delta": -0.183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0,
"delta": -0.0243,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5455,
"after": 4.0,
"delta": 0.4545,
"percent_delta": 0.1282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4362,
"after": 0.0,
"delta": -0.4362,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8396,
"after": 1.0,
"delta": 0.1604,
"percent_delta": 0.191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1043,
"after": 0.0,
"delta": -0.1043,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4502,
"after": 1.0,
"delta": 0.5498,
"percent_delta": 1.2212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1285,
"after": 1.0,
"delta": -0.1285,
"percent_delta": -0.1139,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4502,
"after": 1.0,
"delta": 0.5498,
"percent_delta": 1.2212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4362,
"after": 0.0,
"delta": -0.4362,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3947,
"after": 0.0,
"delta": -0.3947,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3947,
"after": 0.0,
"delta": -0.3947,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2368,
"after": 0.25,
"delta": 0.0132,
"percent_delta": 0.0557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3204,
"after": 0.25,
"delta": -0.0704,
"percent_delta": -0.2197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3904,
"after": 0.25,
"delta": -0.1404,
"percent_delta": -0.3596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2368,
"after": 0.25,
"delta": 0.0132,
"percent_delta": 0.0557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3904,
"after": 0.25,
"delta": -0.1404,
"percent_delta": -0.3596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2368,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3204,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3904,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2368,
"delta": -0.0132,
"percent_delta": -0.0527,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3204,
"delta": 0.0704,
"percent_delta": 0.2817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3904,
"delta": 0.1404,
"percent_delta": 0.5616,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3904,
"delta": 0.1404,
"percent_delta": 0.5616,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2368,
"delta": -0.0132,
"percent_delta": -0.0527,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.57,
"after": 4.0,
"delta": 0.43,
"percent_delta": 0.1204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2368,
"delta": -0.0052,
"percent_delta": -0.0215,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.441,
"after": 0.0,
"delta": -0.441,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.0,
"delta": -0.86,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3204,
"delta": -0.0016,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.412,
"after": 0.0,
"delta": -0.412,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.3904,
"delta": -0.0126,
"percent_delta": -0.0313,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.176,
"after": 2.0,
"delta": 0.824,
"percent_delta": 0.7007,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.176,
"after": 2.0,
"delta": 0.824,
"percent_delta": 0.7007,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.86,
"after": 0.0,
"delta": -0.86,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.147 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.570 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.441 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.322 | - |
| predicted_R | 0.412 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.403 | - |
| predicted_SO | 1.176 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | 0.036 |
| predicted_3B | 0.024 | -0.005 |
| predicted_AB | 3.546 | -0.024 |
| predicted_AVG | 0.243 | 0.001 |
| predicted_BB | 0.440 | -0.001 |
| predicted_H | 0.859 | -0.001 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.107 | -0.003 |
| predicted_OBP | 0.324 | 0.002 |
| predicted_R | 0.410 | -0.002 |
| predicted_RBI | 0.468 | -0.002 |
| predicted_SLG | 0.405 | 0.002 |
| predicted_SO | 1.119 | -0.057 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 3.546 | 0.000 |
| predicted_AVG | 0.237 | -0.006 |
| predicted_BB | 0.436 | -0.004 |
| predicted_H | 0.840 | -0.019 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.104 | -0.003 |
| predicted_OBP | 0.320 | -0.004 |
| predicted_R | 0.395 | -0.015 |
| predicted_RBI | 0.450 | -0.017 |
| predicted_SLG | 0.390 | -0.015 |
| predicted_SO | 1.129 | 0.009 |
AB rounded to 4 (raw=3.57), rates preserved: AVG=0.235 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.183 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 4.000 | 0.454 |
| predicted_AVG | 0.250 | 0.013 |
| predicted_BB | 0.000 | -0.436 |
| predicted_H | 1.000 | 0.160 |
| predicted_HR | 0.000 | -0.104 |
| predicted_OBP | 0.250 | -0.070 |
| predicted_R | 0.000 | -0.395 |
| predicted_RBI | 1.000 | 0.550 |
| predicted_SLG | 0.250 | -0.140 |
| predicted_SO | 1.000 | -0.129 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 2.000 | 0.000 | 1.000 | 4.000 | 2.000 | 3.000 | 4.000 | 0.2353 | 0.3500 | 0.5294 | 0.2353 | 0.0588 | 0.2353 | 0.1765 | 0.2353 |
| last_10 | 0.20 | 10 | - | 35.000 | 8.000 | 4.000 | 0.000 | 1.000 | 5.000 | 3.000 | 4.000 | 10.000 | 0.2286 | 0.3000 | 0.4286 | 0.2286 | 0.0286 | 0.1429 | 0.1143 | 0.2857 |
| season | 0.60 | 34 | - | 116.000 | 29.000 | 5.000 | 1.000 | 2.000 | 11.000 | 14.000 | 15.000 | 40.000 | 0.2500 | 0.3333 | 0.3621 | 0.2500 | 0.0172 | 0.0948 | 0.1293 | 0.3448 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2380 |
| predicted_3B | 0.0170 |
| predicted_AB | 3.5080 |
| predicted_AVG | 0.2442 |
| predicted_BB | 0.4380 |
| predicted_H | 0.8570 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.1020 |
| predicted_OBP | 0.3269 |
| predicted_R | 0.4070 |
| predicted_RBI | 0.4640 |
| predicted_SLG | 0.4090 |
| predicted_SO | 1.0330 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.2380 | 0.1830 | model_form_blend |
| predicted_3B | 0.0290 | 0.0170 | 0.0243 | model_form_blend |
| predicted_AB | 3.5700 | 3.5080 | 3.5455 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2442 | 0.2429 | model_form_blend |
| predicted_BB | 0.4410 | 0.4380 | 0.4398 | model_form_blend |
| predicted_H | 0.8600 | 0.8570 | 0.8588 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.1100 | 0.1020 | 0.1068 | model_form_blend |
| predicted_OBP | 0.3220 | 0.3269 | 0.3239 | model_form_blend |
| predicted_R | 0.4120 | 0.4070 | 0.4100 | model_form_blend |
| predicted_RBI | 0.4700 | 0.4640 | 0.4676 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4090 | 0.4054 | model_form_blend |
| predicted_SO | 1.1760 | 1.0330 | 1.1194 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 78 |
| Season rows before report date | 78 |
| Report year | 2026 |
| Profile rows used | 34 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 805999 |
| playerID | 805999 |
| playerName | A.J. Ewing |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.9 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.313 |
| sl_xwoba | 0.329 |
| sl_xba | 0.265 |
| sl_xslg | 0.389 |
| sl_sweet_spot_percent | 40.5 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 39.2 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 12.6 |
| sl_whiff_percent | 23.8 |
| sl_swing_percent | 43.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.141 | 0.000 | 0.000 | Hitting_2B | 0.173 | 0.000 | -0.173 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.025 | 0.000 | -0.025 | 0.000 |
| predicted_AB | 3.328 | 4.000 | 3.000 | Hitting_AB | 3.465 | 0.000 | 0.535 | 4.000 |
| predicted_AVG | 0.237 | 0.500 | 0.333 | Hitting_AVG | 0.246 | - | 0.254 | - |
| predicted_BB | 0.297 | 0.000 | 0.000 | Hitting_BB | 0.342 | 0.000 | -0.342 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_H | 0.720 | 2.000 | 1.000 | Hitting_H | 0.851 | 0.000 | 1.149 | 2.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.069 | 0.000 | -0.069 | 0.000 |
| predicted_OBP | 0.316 | 0.500 | 0.333 | Hitting_OBP | 0.317 | - | 0.183 | - |
| predicted_R | 0.359 | 1.000 | 0.000 | Hitting_R | 0.480 | 0.000 | 0.520 | 1.000 |
| predicted_RBI | 0.370 | 0.000 | 0.000 | Hitting_RBI | 0.460 | 0.000 | -0.460 | 0.000 |
| predicted_SLG | 0.327 | 0.500 | 0.333 | Hitting_SLG | 0.370 | - | 0.130 | - |
| predicted_SO | 1.031 | 0.000 | 1.000 | Hitting_SO | 1.054 | 0.000 | -1.054 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_H: 0.7200 -> 2.0000 (boost 1.2800, better) |
| Biggest Deboost | predicted_SO: 1.0310 -> 0.0000 (deboost -1.0310, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3270 -> 0.3101 (deboost -0.0169, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3167 -> 0.2811 (deboost -0.0356, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 1 | 6 | predicted_H: 0.6978 -> 1.0000 (boost 0.3022, better) | predicted_RBI: 0.3514 -> 0.0000 (deboost -0.3514, worse) | AB rounded to 3 (raw=3.33), rates preserved: AVG=0.210 HR/AB=0.017 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.100) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3119 -> 0.0000 (deboost -0.3119, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2102 -> 0.3330 (boost 0.1228, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 3 | 1 | 4 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2102 (deboost -0.1228, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683146",
"player_name": "Brett Baty",
"position": "3B",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.141,
"predicted_3B": 0.016,
"predicted_AB": 3.328,
"predicted_AVG": 0.237,
"predicted_BB": 0.297,
"predicted_H": 0.72,
"predicted_HR": 0.07,
"predicted_OBP": 0.316,
"predicted_R": 0.359,
"predicted_RBI": 0.37,
"predicted_SLG": 0.327,
"predicted_SO": 1.031
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1285,
"predicted_3B": 0.0135,
"predicted_AB": 3.3192,
"predicted_AVG": 0.227,
"predicted_BB": 0.33,
"predicted_H": 0.7137,
"predicted_HBP": 0.143,
"predicted_HR": 0.0567,
"predicted_OBP": 0.3167,
"predicted_R": 0.324,
"predicted_RBI": 0.365,
"predicted_SLG": 0.3101,
"predicted_SO": 1.0297
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.141,
"after": 0.1285,
"delta": -0.0125,
"percent_delta": -0.0887,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0135,
"delta": -0.0025,
"percent_delta": -0.1563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.328,
"after": 3.3192,
"delta": -0.0088,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.227,
"delta": -0.01,
"percent_delta": -0.0422,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.33,
"delta": 0.033,
"percent_delta": 0.1111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 0.7137,
"delta": -0.0063,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0567,
"delta": -0.0133,
"percent_delta": -0.19,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.3167,
"delta": 0.0007,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.359,
"after": 0.324,
"delta": -0.035,
"percent_delta": -0.0975,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.365,
"delta": -0.005,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3101,
"delta": -0.0169,
"percent_delta": -0.0517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.031,
"after": 1.0297,
"delta": -0.0013,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3101,
"delta": -0.0169,
"percent_delta": -0.0517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 64
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1285,
"predicted_3B": 0.0135,
"predicted_AB": 3.3192,
"predicted_AVG": 0.2102,
"predicted_BB": 0.3273,
"predicted_H": 0.6978,
"predicted_HBP": 0.143,
"predicted_HR": 0.0554,
"predicted_OBP": 0.2811,
"predicted_R": 0.3119,
"predicted_RBI": 0.3514,
"predicted_SLG": 0.3071,
"predicted_SO": 1.038
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1285,
"after": 0.1285,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0135,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3192,
"after": 3.3192,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.227,
"after": 0.2102,
"delta": -0.0168,
"percent_delta": -0.074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.33,
"after": 0.3273,
"delta": -0.0027,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7137,
"after": 0.6978,
"delta": -0.0159,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.143,
"after": 0.143,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0567,
"after": 0.0554,
"delta": -0.0013,
"percent_delta": -0.0229,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3167,
"after": 0.2811,
"delta": -0.0356,
"percent_delta": -0.1124,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.324,
"after": 0.3119,
"delta": -0.0121,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.365,
"after": 0.3514,
"delta": -0.0136,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3101,
"after": 0.3071,
"delta": -0.003,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0297,
"after": 1.038,
"delta": 0.0083,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3167,
"after": 0.2811,
"delta": -0.0356,
"percent_delta": -0.1124,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.33), rates preserved: AVG=0.210 HR/AB=0.017",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1285,
"after": 0.0,
"delta": -0.1285,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0,
"delta": -0.0135,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3192,
"after": 3.0,
"delta": -0.3192,
"percent_delta": -0.0962,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3273,
"after": 0.0,
"delta": -0.3273,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6978,
"after": 1.0,
"delta": 0.3022,
"percent_delta": 0.4331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.143,
"after": 0.0,
"delta": -0.143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0554,
"after": 0.0,
"delta": -0.0554,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3514,
"after": 0.0,
"delta": -0.3514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.038,
"after": 1.0,
"delta": -0.038,
"percent_delta": -0.0366,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6978,
"after": 1.0,
"delta": 0.3022,
"percent_delta": 0.4331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3514,
"after": 0.0,
"delta": -0.3514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.100)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9,
"bvp": 0.1
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3119,
"after": 0.0,
"delta": -0.3119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3119,
"after": 0.0,
"delta": -0.3119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2102,
"after": 0.333,
"delta": 0.1228,
"percent_delta": 0.5842,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2811,
"after": 0.333,
"delta": 0.0519,
"percent_delta": 0.1846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3071,
"after": 0.333,
"delta": 0.0259,
"percent_delta": 0.0843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2102,
"after": 0.333,
"delta": 0.1228,
"percent_delta": 0.5842,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2102,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2811,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3071,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2102,
"delta": -0.1228,
"percent_delta": -0.3687,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2811,
"delta": -0.0519,
"percent_delta": -0.1558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3071,
"delta": -0.0259,
"percent_delta": -0.0777,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2102,
"delta": -0.1228,
"percent_delta": -0.3687,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.141,
"after": 0.0,
"delta": -0.141,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.328,
"after": 4.0,
"delta": 0.672,
"percent_delta": 0.2019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2102,
"delta": -0.0268,
"percent_delta": -0.1131,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 2.0,
"delta": 1.28,
"percent_delta": 1.7778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.2811,
"delta": -0.0349,
"percent_delta": -0.1104,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.359,
"after": 1.0,
"delta": 0.641,
"percent_delta": 1.7855,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.327,
"after": 0.3071,
"delta": -0.0199,
"percent_delta": -0.0609,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.031,
"after": 0.0,
"delta": -1.031,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.72,
"after": 2.0,
"delta": 1.28,
"percent_delta": 1.7778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.031,
"after": 0.0,
"delta": -1.031,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 3.328 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.297 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.316 | - |
| predicted_R | 0.359 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.327 | - |
| predicted_SO | 1.031 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | -0.012 |
| predicted_3B | 0.013 | -0.003 |
| predicted_AB | 3.319 | -0.009 |
| predicted_AVG | 0.227 | -0.010 |
| predicted_BB | 0.330 | 0.033 |
| predicted_H | 0.714 | -0.006 |
| predicted_HBP | 0.143 | - |
| predicted_HR | 0.057 | -0.013 |
| predicted_OBP | 0.317 | 0.001 |
| predicted_R | 0.324 | -0.035 |
| predicted_RBI | 0.365 | -0.005 |
| predicted_SLG | 0.310 | -0.017 |
| predicted_SO | 1.030 | -0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.319 | 0.000 |
| predicted_AVG | 0.210 | -0.017 |
| predicted_BB | 0.327 | -0.003 |
| predicted_H | 0.698 | -0.016 |
| predicted_HBP | 0.143 | 0.000 |
| predicted_HR | 0.055 | -0.001 |
| predicted_OBP | 0.281 | -0.036 |
| predicted_R | 0.312 | -0.012 |
| predicted_RBI | 0.351 | -0.014 |
| predicted_SLG | 0.307 | -0.003 |
| predicted_SO | 1.038 | 0.008 |
AB rounded to 3 (raw=3.33), rates preserved: AVG=0.210 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.100)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.129 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 3.000 | -0.319 |
| predicted_AVG | 0.333 | 0.123 |
| predicted_BB | 0.000 | -0.327 |
| predicted_H | 1.000 | 0.302 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.333 | 0.052 |
| predicted_R | 0.000 | -0.312 |
| predicted_RBI | 0.000 | -0.351 |
| predicted_SLG | 0.333 | 0.026 |
| predicted_SO | 1.000 | -0.038 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 3.000 | 6.000 | 0.1333 | 0.3500 | 0.1333 | 0.1333 | 0.0000 | 0.0667 | 0.2000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 32.000 | 7.000 | 1.000 | 0.000 | 0.000 | 3.000 | 2.000 | 4.000 | 9.000 | 0.2188 | 0.3421 | 0.2500 | 0.2188 | 0.0000 | 0.0938 | 0.1250 | 0.2812 |
| season | 0.60 | 64 | - | 213.000 | 49.000 | 9.000 | 1.000 | 3.000 | 26.000 | 23.000 | 19.000 | 66.000 | 0.2300 | 0.2996 | 0.3239 | 0.2301 | 0.0141 | 0.1221 | 0.0892 | 0.3099 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1110 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.3070 |
| predicted_AVG | 0.2131 |
| predicted_BB | 0.3760 |
| predicted_H | 0.7050 |
| predicted_HBP | 0.1430 |
| predicted_HR | 0.0380 |
| predicted_OBP | 0.3176 |
| predicted_R | 0.2750 |
| predicted_RBI | 0.3580 |
| predicted_SLG | 0.2866 |
| predicted_SO | 1.0280 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1410 | 0.1110 | 0.1285 | model_form_blend |
| predicted_3B | 0.0160 | 0.0100 | 0.0135 | model_form_blend |
| predicted_AB | 3.3280 | 3.3070 | 3.3192 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2131 | 0.2270 | model_form_blend |
| predicted_BB | 0.2970 | 0.3760 | 0.3300 | model_form_blend |
| predicted_H | 0.7200 | 0.7050 | 0.7137 | model_form_blend |
| predicted_HBP | - | 0.1430 | 0.1430 | form_only |
| predicted_HR | 0.0700 | 0.0380 | 0.0567 | model_form_blend |
| predicted_OBP | 0.3160 | 0.3176 | 0.3167 | model_form_blend |
| predicted_R | 0.3590 | 0.2750 | 0.3240 | model_form_blend |
| predicted_RBI | 0.3700 | 0.3580 | 0.3650 | model_form_blend |
| predicted_SLG | 0.3270 | 0.2866 | 0.3101 | model_form_blend |
| predicted_SO | 1.0310 | 1.0280 | 1.0297 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 202 |
| Season rows before report date | 202 |
| Report year | 2026 |
| Profile rows used | 64 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_NYM@CIN |
| game_type | short |
| mlbID | 683146 |
| playerID | 683146 |
| playerName | Brett Baty |
| pos | 3B |
| started | False |
| startingPosition | 2B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.283 |
| sl_xwoba | 0.296 |
| sl_xba | 0.228 |
| sl_xslg | 0.36 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 38.7 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 9.4 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 45.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.110 | 0.000 | 0.000 | Hitting_2B | 0.134 | 0.000 | -0.134 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.680 | 4.000 | 4.000 | Hitting_AB | 3.681 | 4.000 | 0.319 | 0.000 |
| predicted_AVG | 0.234 | 0.000 | 0.250 | Hitting_AVG | 0.233 | 0.500 | -0.233 | -0.500 |
| predicted_BB | 0.301 | 0.000 | 0.000 | Hitting_BB | 0.269 | 1.000 | -0.269 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_H | 0.860 | 0.000 | 1.000 | Hitting_H | 0.857 | 2.000 | -0.857 | -2.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.101 | 0.000 | -0.101 | 0.000 |
| predicted_OBP | 0.307 | 0.000 | 0.250 | Hitting_OBP | 0.284 | 0.600 | -0.284 | -0.600 |
| predicted_R | 0.397 | 0.000 | 0.000 | Hitting_R | 0.395 | 1.000 | -0.395 | -1.000 |
| predicted_RBI | 0.400 | 0.000 | 0.000 | Hitting_RBI | 0.412 | 1.000 | -0.412 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.088 | 0.000 | -0.088 | 0.000 |
| predicted_SLG | 0.386 | 0.000 | 0.250 | Hitting_SLG | 0.352 | 0.500 | -0.352 | -0.500 |
| predicted_SO | 0.822 | 1.000 | 1.000 | Hitting_SO | 0.807 | 0.000 | 0.193 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_AB: 3.6800 -> 4.0000 (boost 0.3200, better) |
| Biggest Deboost | predicted_H: 0.8600 -> 0.0000 (deboost -0.8600, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.3010 -> 0.3547 (boost 0.0537, better) | predicted_SLG: 0.3860 -> 0.3800 (deboost -0.0060, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3064 -> 0.2928 (deboost -0.0136, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_AB: 3.6652 -> 4.0000 (boost 0.3348, better) | predicted_RBI: 0.3749 -> 0.0000 (deboost -0.3749, worse) | AB rounded to 4 (raw=3.68), rates preserved: AVG=0.224 HR/AB=0.039 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4014 -> 0.0000 (deboost -0.4014, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2249 -> 0.2500 (boost 0.0251, better) | predicted_SLG: 0.3673 -> 0.2500 (deboost -0.1173, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3673 (boost 0.1173, better) | predicted_AVG: 0.2500 -> 0.2249 (deboost -0.0251, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "543760",
"player_name": "Marcus Semien",
"position": "2B",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.11,
"predicted_3B": 0.0,
"predicted_AB": 3.68,
"predicted_AVG": 0.234,
"predicted_BB": 0.301,
"predicted_H": 0.86,
"predicted_HR": 0.14,
"predicted_OBP": 0.307,
"predicted_R": 0.397,
"predicted_RBI": 0.4,
"predicted_SLG": 0.386,
"predicted_SO": 0.822
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0961,
"predicted_3B": 0.0004,
"predicted_AB": 3.6652,
"predicted_AVG": 0.2302,
"predicted_BB": 0.3547,
"predicted_H": 0.8431,
"predicted_HBP": 0.011,
"predicted_HR": 0.1451,
"predicted_OBP": 0.3064,
"predicted_R": 0.4169,
"predicted_RBI": 0.3894,
"predicted_SLG": 0.38,
"predicted_SO": 0.8655
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.11,
"after": 0.0961,
"delta": -0.0139,
"percent_delta": -0.1264,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.68,
"after": 3.6652,
"delta": -0.0148,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2302,
"delta": -0.0038,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.301,
"after": 0.3547,
"delta": 0.0537,
"percent_delta": 0.1784,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.8431,
"delta": -0.0169,
"percent_delta": -0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1451,
"delta": 0.0051,
"percent_delta": 0.0364,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.3064,
"delta": -0.0006,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 0.4169,
"delta": 0.0199,
"percent_delta": 0.0501,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.3894,
"delta": -0.0106,
"percent_delta": -0.0265,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.38,
"delta": -0.006,
"percent_delta": -0.0155,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.822,
"after": 0.8655,
"delta": 0.0435,
"percent_delta": 0.0529,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.301,
"after": 0.3547,
"delta": 0.0537,
"percent_delta": 0.1784,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.38,
"delta": -0.006,
"percent_delta": -0.0155,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 73
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0961,
"predicted_3B": 0.0004,
"predicted_AB": 3.6652,
"predicted_AVG": 0.2249,
"predicted_BB": 0.3518,
"predicted_H": 0.8243,
"predicted_HBP": 0.011,
"predicted_HR": 0.1417,
"predicted_OBP": 0.2928,
"predicted_R": 0.4014,
"predicted_RBI": 0.3749,
"predicted_SLG": 0.3673,
"predicted_SO": 0.8725
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0961,
"after": 0.0961,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6652,
"after": 3.6652,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2302,
"after": 0.2249,
"delta": -0.0053,
"percent_delta": -0.023,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3547,
"after": 0.3518,
"delta": -0.0029,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8431,
"after": 0.8243,
"delta": -0.0188,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1451,
"after": 0.1417,
"delta": -0.0034,
"percent_delta": -0.0234,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3064,
"after": 0.2928,
"delta": -0.0136,
"percent_delta": -0.0444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4169,
"after": 0.4014,
"delta": -0.0155,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3894,
"after": 0.3749,
"delta": -0.0145,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3673,
"delta": -0.0127,
"percent_delta": -0.0334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8655,
"after": 0.8725,
"delta": 0.007,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3064,
"after": 0.2928,
"delta": -0.0136,
"percent_delta": -0.0444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.68), rates preserved: AVG=0.224 HR/AB=0.039",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0961,
"after": 0.0,
"delta": -0.0961,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6652,
"after": 4.0,
"delta": 0.3348,
"percent_delta": 0.0913,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3518,
"after": 0.0,
"delta": -0.3518,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8243,
"after": 1.0,
"delta": 0.1757,
"percent_delta": 0.2132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1417,
"after": 0.0,
"delta": -0.1417,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3749,
"after": 0.0,
"delta": -0.3749,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8725,
"after": 1.0,
"delta": 0.1275,
"percent_delta": 0.1461,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.6652,
"after": 4.0,
"delta": 0.3348,
"percent_delta": 0.0913,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3749,
"after": 0.0,
"delta": -0.3749,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4014,
"after": 0.0,
"delta": -0.4014,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4014,
"after": 0.0,
"delta": -0.4014,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2249,
"after": 0.25,
"delta": 0.0251,
"percent_delta": 0.1116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2928,
"after": 0.25,
"delta": -0.0428,
"percent_delta": -0.1462,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3673,
"after": 0.25,
"delta": -0.1173,
"percent_delta": -0.3194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2249,
"after": 0.25,
"delta": 0.0251,
"percent_delta": 0.1116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3673,
"after": 0.25,
"delta": -0.1173,
"percent_delta": -0.3194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2249,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2928,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3673,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2249,
"delta": -0.0251,
"percent_delta": -0.1004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2928,
"delta": 0.0428,
"percent_delta": 0.1711,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3673,
"delta": 0.1173,
"percent_delta": 0.4692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3673,
"delta": 0.1173,
"percent_delta": 0.4692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2249,
"delta": -0.0251,
"percent_delta": -0.1004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.68,
"after": 4.0,
"delta": 0.32,
"percent_delta": 0.087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2249,
"delta": -0.0091,
"percent_delta": -0.0389,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.301,
"after": 0.0,
"delta": -0.301,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.0,
"delta": -0.86,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.2928,
"delta": -0.0142,
"percent_delta": -0.0463,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 0.0,
"delta": -0.397,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.3673,
"delta": -0.0187,
"percent_delta": -0.0484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.822,
"after": 1.0,
"delta": 0.178,
"percent_delta": 0.2165,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.68,
"after": 4.0,
"delta": 0.32,
"percent_delta": 0.087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.86,
"after": 0.0,
"delta": -0.86,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.680 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.301 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.307 | - |
| predicted_R | 0.397 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.386 | - |
| predicted_SO | 0.822 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.096 | -0.014 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.665 | -0.015 |
| predicted_AVG | 0.230 | -0.004 |
| predicted_BB | 0.355 | 0.054 |
| predicted_H | 0.843 | -0.017 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.145 | 0.005 |
| predicted_OBP | 0.306 | -0.001 |
| predicted_R | 0.417 | 0.020 |
| predicted_RBI | 0.389 | -0.011 |
| predicted_SLG | 0.380 | -0.006 |
| predicted_SO | 0.866 | 0.044 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.096 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.665 | 0.000 |
| predicted_AVG | 0.225 | -0.005 |
| predicted_BB | 0.352 | -0.003 |
| predicted_H | 0.824 | -0.019 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.142 | -0.003 |
| predicted_OBP | 0.293 | -0.014 |
| predicted_R | 0.401 | -0.016 |
| predicted_RBI | 0.375 | -0.015 |
| predicted_SLG | 0.367 | -0.013 |
| predicted_SO | 0.873 | 0.007 |
AB rounded to 4 (raw=3.68), rates preserved: AVG=0.224 HR/AB=0.039
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.096 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.335 |
| predicted_AVG | 0.250 | 0.025 |
| predicted_BB | 0.000 | -0.352 |
| predicted_H | 1.000 | 0.176 |
| predicted_HR | 0.000 | -0.142 |
| predicted_OBP | 0.250 | -0.043 |
| predicted_R | 0.000 | -0.401 |
| predicted_RBI | 0.000 | -0.375 |
| predicted_SLG | 0.250 | -0.117 |
| predicted_SO | 1.000 | 0.127 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 4.000 | 5.000 | 0.2222 | 0.3636 | 0.3889 | 0.2222 | 0.0556 | 0.1111 | 0.2222 | 0.2778 |
| last_10 | 0.20 | 10 | - | 37.000 | 8.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 5.000 | 12.000 | 0.2162 | 0.3095 | 0.3784 | 0.2162 | 0.0541 | 0.0811 | 0.1351 | 0.3243 |
| season | 0.60 | 73 | - | 263.000 | 59.000 | 8.000 | 0.000 | 9.000 | 27.000 | 29.000 | 22.000 | 60.000 | 0.2243 | 0.2837 | 0.3574 | 0.2243 | 0.0342 | 0.1027 | 0.0837 | 0.2281 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0770 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6450 |
| predicted_AVG | 0.2249 |
| predicted_BB | 0.4280 |
| predicted_H | 0.8200 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.1520 |
| predicted_OBP | 0.3056 |
| predicted_R | 0.4440 |
| predicted_RBI | 0.3750 |
| predicted_SLG | 0.3718 |
| predicted_SO | 0.9250 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1100 | 0.0770 | 0.0961 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6800 | 3.6450 | 3.6652 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2249 | 0.2302 | model_form_blend |
| predicted_BB | 0.3010 | 0.4280 | 0.3547 | model_form_blend |
| predicted_H | 0.8600 | 0.8200 | 0.8431 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1400 | 0.1520 | 0.1451 | model_form_blend |
| predicted_OBP | 0.3070 | 0.3056 | 0.3064 | model_form_blend |
| predicted_R | 0.3970 | 0.4440 | 0.4169 | model_form_blend |
| predicted_RBI | 0.4000 | 0.3750 | 0.3894 | model_form_blend |
| predicted_SLG | 0.3860 | 0.3718 | 0.3800 | model_form_blend |
| predicted_SO | 0.8220 | 0.9250 | 0.8655 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 238 |
| Season rows before report date | 238 |
| Report year | 2026 |
| Profile rows used | 73 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.224 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 543760 |
| playerID | 543760 |
| playerName | Marcus Semien |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.281 |
| sl_xwoba | 0.325 |
| sl_xba | 0.26 |
| sl_xslg | 0.428 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 34.9 |
| sl_exit_velocity_avg | 86.2 |
| sl_launch_angle_avg | 18.5 |
| sl_whiff_percent | 23.0 |
| sl_swing_percent | 50.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.119 | 0.000 | 0.000 | Hitting_2B | 0.147 | 0.000 | -0.147 | 0.000 |
| predicted_3B | 0.024 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 2.500 | 3.000 | 3.000 | Hitting_AB | 2.549 | 0.000 | 0.451 | 3.000 |
| predicted_AVG | 0.258 | 0.000 | 0.333 | Hitting_AVG | 0.231 | - | -0.231 | - |
| predicted_BB | 0.310 | 1.000 | 0.000 | Hitting_BB | 0.324 | 0.000 | 0.676 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.039 | 0.000 | -0.039 | 0.000 |
| predicted_H | 0.530 | 0.000 | 1.000 | Hitting_H | 0.588 | 0.000 | -0.588 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.088 | 0.000 | -0.088 | 0.000 |
| predicted_OBP | 0.323 | 0.250 | 0.333 | Hitting_OBP | 0.352 | - | -0.102 | - |
| predicted_R | 0.333 | 0.000 | 0.000 | Hitting_R | 0.324 | 0.000 | -0.324 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.245 | 0.000 | -0.245 | 0.000 |
| predicted_SLG | 0.369 | 0.000 | 0.333 | Hitting_SLG | 0.415 | - | -0.415 | - |
| predicted_SO | 1.000 | 1.000 | 1.000 | Hitting_SO | 1.059 | 0.000 | -0.059 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.3100 -> 1.0000 (boost 0.6900, better) |
| Biggest Deboost | predicted_H: 0.5300 -> 0.0000 (deboost -0.5300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AB: 2.5000 -> 2.5570 (boost 0.0570, better) | predicted_AVG: 0.2580 -> 0.2370 (deboost -0.0210, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2370 -> 0.2043 (deboost -0.0327, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 2 | 5 | predicted_H: 0.5224 -> 1.0000 (boost 0.4776, better) | predicted_BB: 0.3550 -> 0.0000 (deboost -0.3550, worse) | AB rounded to 3 (raw=2.56), rates preserved: AVG=0.204 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3581 -> 0.0000 (deboost -0.3581, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2043 -> 0.3330 (boost 0.1287, better) | predicted_SLG: 0.3648 -> 0.3330 (deboost -0.0318, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3648 (boost 0.0318, better) | predicted_AVG: 0.3330 -> 0.2043 (deboost -0.1287, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669004",
"player_name": "MJ Melendez",
"position": "DH",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.119,
"predicted_3B": 0.024,
"predicted_AB": 2.5,
"predicted_AVG": 0.258,
"predicted_BB": 0.31,
"predicted_H": 0.53,
"predicted_HR": 0.08,
"predicted_OBP": 0.323,
"predicted_R": 0.333,
"predicted_RBI": 0.27,
"predicted_SLG": 0.369,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1335,
"predicted_3B": 0.0201,
"predicted_AB": 2.557,
"predicted_AVG": 0.237,
"predicted_BB": 0.3579,
"predicted_H": 0.5343,
"predicted_HBP": 0.066,
"predicted_HR": 0.0808,
"predicted_OBP": 0.3248,
"predicted_R": 0.3719,
"predicted_RBI": 0.2555,
"predicted_SLG": 0.3684,
"predicted_SO": 1.0059
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.119,
"after": 0.1335,
"delta": 0.0145,
"percent_delta": 0.1218,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.024,
"after": 0.0201,
"delta": -0.0039,
"percent_delta": -0.1625,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.557,
"delta": 0.057,
"percent_delta": 0.0228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.237,
"delta": -0.021,
"percent_delta": -0.0814,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 0.3579,
"delta": 0.0479,
"percent_delta": 0.1545,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.53,
"after": 0.5343,
"delta": 0.0043,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0808,
"delta": 0.0008,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3248,
"delta": 0.0018,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.3719,
"delta": 0.0389,
"percent_delta": 0.1168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2555,
"delta": -0.0145,
"percent_delta": -0.0537,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.369,
"after": 0.3684,
"delta": -0.0006,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0059,
"delta": 0.0059,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 2.557,
"delta": 0.057,
"percent_delta": 0.0228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.237,
"delta": -0.021,
"percent_delta": -0.0814,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 46
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1335,
"predicted_3B": 0.0201,
"predicted_AB": 2.557,
"predicted_AVG": 0.2043,
"predicted_BB": 0.355,
"predicted_H": 0.5224,
"predicted_HBP": 0.066,
"predicted_HR": 0.0789,
"predicted_OBP": 0.3013,
"predicted_R": 0.3581,
"predicted_RBI": 0.246,
"predicted_SLG": 0.3648,
"predicted_SO": 1.014
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1335,
"after": 0.1335,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0201,
"after": 0.0201,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.557,
"after": 2.557,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2043,
"delta": -0.0327,
"percent_delta": -0.138,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3579,
"after": 0.355,
"delta": -0.0029,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5343,
"after": 0.5224,
"delta": -0.0119,
"percent_delta": -0.0223,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.066,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0808,
"after": 0.0789,
"delta": -0.0019,
"percent_delta": -0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3248,
"after": 0.3013,
"delta": -0.0235,
"percent_delta": -0.0724,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3719,
"after": 0.3581,
"delta": -0.0138,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2555,
"after": 0.246,
"delta": -0.0095,
"percent_delta": -0.0372,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3684,
"after": 0.3648,
"delta": -0.0036,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0059,
"after": 1.014,
"delta": 0.0081,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2043,
"delta": -0.0327,
"percent_delta": -0.138,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.56), rates preserved: AVG=0.204 HR/AB=0.031",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1335,
"after": 0.0,
"delta": -0.1335,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0201,
"after": 0.0,
"delta": -0.0201,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.557,
"after": 3.0,
"delta": 0.443,
"percent_delta": 0.1732,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.355,
"after": 0.0,
"delta": -0.355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5224,
"after": 1.0,
"delta": 0.4776,
"percent_delta": 0.9142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.0,
"delta": -0.066,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0789,
"after": 0.0,
"delta": -0.0789,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.246,
"after": 0.0,
"delta": -0.246,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.014,
"after": 1.0,
"delta": -0.014,
"percent_delta": -0.0138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5224,
"after": 1.0,
"delta": 0.4776,
"percent_delta": 0.9142,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.355,
"after": 0.0,
"delta": -0.355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3581,
"after": 0.0,
"delta": -0.3581,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3581,
"after": 0.0,
"delta": -0.3581,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2043,
"after": 0.333,
"delta": 0.1287,
"percent_delta": 0.63,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3013,
"after": 0.333,
"delta": 0.0317,
"percent_delta": 0.1052,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3648,
"after": 0.333,
"delta": -0.0318,
"percent_delta": -0.0872,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2043,
"after": 0.333,
"delta": 0.1287,
"percent_delta": 0.63,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3648,
"after": 0.333,
"delta": -0.0318,
"percent_delta": -0.0872,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2043,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3013,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3648,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2043,
"delta": -0.1287,
"percent_delta": -0.3865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3013,
"delta": -0.0317,
"percent_delta": -0.0952,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3648,
"delta": 0.0318,
"percent_delta": 0.0955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3648,
"delta": 0.0318,
"percent_delta": 0.0955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2043,
"delta": -0.1287,
"percent_delta": -0.3865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.119,
"after": 0.0,
"delta": -0.119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.024,
"after": 0.0,
"delta": -0.024,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2043,
"delta": -0.0537,
"percent_delta": -0.2081,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3013,
"delta": -0.0217,
"percent_delta": -0.0672,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.369,
"after": 0.3648,
"delta": -0.0042,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.119 | - |
| predicted_3B | 0.024 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.310 | - |
| predicted_H | 0.530 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.323 | - |
| predicted_R | 0.333 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.369 | - |
| predicted_SO | 1.000 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.134 | 0.015 |
| predicted_3B | 0.020 | -0.004 |
| predicted_AB | 2.557 | 0.057 |
| predicted_AVG | 0.237 | -0.021 |
| predicted_BB | 0.358 | 0.048 |
| predicted_H | 0.534 | 0.004 |
| predicted_HBP | 0.066 | - |
| predicted_HR | 0.081 | 0.001 |
| predicted_OBP | 0.325 | 0.002 |
| predicted_R | 0.372 | 0.039 |
| predicted_RBI | 0.256 | -0.015 |
| predicted_SLG | 0.368 | -0.001 |
| predicted_SO | 1.006 | 0.006 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.134 | 0.000 |
| predicted_3B | 0.020 | 0.000 |
| predicted_AB | 2.557 | 0.000 |
| predicted_AVG | 0.204 | -0.033 |
| predicted_BB | 0.355 | -0.003 |
| predicted_H | 0.522 | -0.012 |
| predicted_HBP | 0.066 | 0.000 |
| predicted_HR | 0.079 | -0.002 |
| predicted_OBP | 0.301 | -0.023 |
| predicted_R | 0.358 | -0.014 |
| predicted_RBI | 0.246 | -0.010 |
| predicted_SLG | 0.365 | -0.004 |
| predicted_SO | 1.014 | 0.008 |
AB rounded to 3 (raw=2.56), rates preserved: AVG=0.204 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.134 |
| predicted_3B | 0.000 | -0.020 |
| predicted_AB | 3.000 | 0.443 |
| predicted_AVG | 0.333 | 0.129 |
| predicted_BB | 0.000 | -0.355 |
| predicted_H | 1.000 | 0.478 |
| predicted_HR | 0.000 | -0.079 |
| predicted_OBP | 0.333 | 0.032 |
| predicted_R | 0.000 | -0.358 |
| predicted_RBI | 0.000 | -0.246 |
| predicted_SLG | 0.333 | -0.032 |
| predicted_SO | 1.000 | -0.014 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 11.000 | 2.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 4.000 | 6.000 | 0.1818 | 0.4000 | 0.2727 | 0.1818 | 0.0000 | 0.0000 | 0.3636 | 0.5454 |
| last_10 | 0.20 | 10 | - | 27.000 | 5.000 | 2.000 | 0.000 | 1.000 | 2.000 | 5.000 | 5.000 | 10.000 | 0.1852 | 0.3125 | 0.3704 | 0.1852 | 0.0370 | 0.0741 | 0.1852 | 0.3704 |
| season | 0.60 | 46 | - | 105.000 | 21.000 | 5.000 | 1.000 | 4.000 | 11.000 | 14.000 | 13.000 | 42.000 | 0.2000 | 0.3145 | 0.3810 | 0.2000 | 0.0381 | 0.1048 | 0.1238 | 0.4000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1560 |
| predicted_3B | 0.0140 |
| predicted_AB | 2.6450 |
| predicted_AVG | 0.2045 |
| predicted_BB | 0.4320 |
| predicted_H | 0.5410 |
| predicted_HBP | 0.0660 |
| predicted_HR | 0.0820 |
| predicted_OBP | 0.3277 |
| predicted_R | 0.4320 |
| predicted_RBI | 0.2330 |
| predicted_SLG | 0.3675 |
| predicted_SO | 1.0150 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1190 | 0.1560 | 0.1335 | model_form_blend |
| predicted_3B | 0.0240 | 0.0140 | 0.0201 | model_form_blend |
| predicted_AB | 2.5000 | 2.6450 | 2.5570 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2045 | 0.2370 | model_form_blend |
| predicted_BB | 0.3100 | 0.4320 | 0.3579 | model_form_blend |
| predicted_H | 0.5300 | 0.5410 | 0.5343 | model_form_blend |
| predicted_HBP | - | 0.0660 | 0.0660 | form_only |
| predicted_HR | 0.0800 | 0.0820 | 0.0808 | model_form_blend |
| predicted_OBP | 0.3230 | 0.3277 | 0.3248 | model_form_blend |
| predicted_R | 0.3330 | 0.4320 | 0.3719 | model_form_blend |
| predicted_RBI | 0.2700 | 0.2330 | 0.2555 | model_form_blend |
| predicted_SLG | 0.3690 | 0.3675 | 0.3684 | model_form_blend |
| predicted_SO | 1.0000 | 1.0150 | 1.0059 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 102 |
| Season rows before report date | 102 |
| Report year | 2026 |
| Profile rows used | 46 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.2 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_NYM@CIN |
| game_type | short |
| mlbID | 669004 |
| playerID | 669004 |
| playerName | MJ Melendez |
| pos | DH |
| started | False |
| startingPosition | LF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 33.9 |
| sl_bb_percent | 11.0 |
| sl_woba | 0.313 |
| sl_xwoba | 0.276 |
| sl_xba | 0.164 |
| sl_xslg | 0.31 |
| sl_sweet_spot_percent | 27.7 |
| sl_barrel_batted_rate | 10.8 |
| sl_hard_hit_percent | 55.4 |
| sl_exit_velocity_avg | 93.9 |
| sl_launch_angle_avg | 23.9 |
| sl_whiff_percent | 34.4 |
| sl_swing_percent | 46.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.119 | 0.000 | 0.000 | Hitting_2B | 0.109 | 0.000 | -0.109 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.238 | 3.000 | 3.000 | Hitting_AB | 3.387 | 5.000 | -0.387 | -2.000 |
| predicted_AVG | 0.262 | 0.333 | 0.333 | Hitting_AVG | 0.239 | 0.600 | 0.094 | -0.267 |
| predicted_BB | 0.310 | 1.000 | 0.000 | Hitting_BB | 0.328 | 0.000 | 0.672 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.750 | 1.000 | 1.000 | Hitting_H | 0.810 | 3.000 | 0.190 | -2.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_OBP | 0.328 | 0.500 | 0.333 | Hitting_OBP | 0.316 | 0.600 | 0.184 | -0.100 |
| predicted_R | 0.310 | 0.000 | 0.000 | Hitting_R | 0.365 | 1.000 | -0.365 | -1.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.336 | 1.000 | -0.336 | -1.000 |
| predicted_SLG | 0.395 | 0.333 | 0.333 | Hitting_SLG | 0.401 | 0.600 | -0.068 | -0.267 |
| predicted_SO | 0.833 | 0.000 | 1.000 | Hitting_SO | 0.839 | 0.000 | -0.839 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.3100 -> 1.0000 (boost 0.6900, better) |
| Biggest Deboost | predicted_SO: 0.8330 -> 0.0000 (deboost -0.8330, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_AB: 3.2380 -> 3.3147 (boost 0.0767, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3311 -> 0.3066 (deboost -0.0245, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.8044 -> 1.0000 (boost 0.1956, better) | predicted_RBI: 0.3266 -> 0.0000 (deboost -0.3266, worse) | AB rounded to 3 (raw=3.31), rates preserved: AVG=0.243 HR/AB=0.031 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3023 -> 0.0000 (deboost -0.3023, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2427 -> 0.3330 (boost 0.0903, better) | predicted_SLG: 0.3710 -> 0.3330 (deboost -0.0380, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3710 (boost 0.0380, better) | predicted_AVG: 0.3330 -> 0.2427 (deboost -0.0903, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682626",
"player_name": "Francisco Alvarez",
"position": "C",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.119,
"predicted_3B": 0.0,
"predicted_AB": 3.238,
"predicted_AVG": 0.262,
"predicted_BB": 0.31,
"predicted_H": 0.75,
"predicted_HR": 0.11,
"predicted_OBP": 0.328,
"predicted_R": 0.31,
"predicted_RBI": 0.34,
"predicted_SLG": 0.395,
"predicted_SO": 0.833
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1146,
"predicted_3B": 0.0008,
"predicted_AB": 3.3147,
"predicted_AVG": 0.2658,
"predicted_BB": 0.308,
"predicted_H": 0.8227,
"predicted_HBP": 0.03,
"predicted_HR": 0.1056,
"predicted_OBP": 0.3311,
"predicted_R": 0.314,
"predicted_RBI": 0.3392,
"predicted_SLG": 0.3934,
"predicted_SO": 0.8382
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.119,
"after": 0.1146,
"delta": -0.0044,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.238,
"after": 3.3147,
"delta": 0.0767,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2658,
"delta": 0.0038,
"percent_delta": 0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 0.308,
"delta": -0.002,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 0.8227,
"delta": 0.0727,
"percent_delta": 0.0969,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1056,
"delta": -0.0044,
"percent_delta": -0.04,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3311,
"delta": 0.0031,
"percent_delta": 0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.31,
"after": 0.314,
"delta": 0.004,
"percent_delta": 0.0129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.3392,
"delta": -0.0008,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.3934,
"delta": -0.0016,
"percent_delta": -0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.833,
"after": 0.8382,
"delta": 0.0052,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.238,
"after": 3.3147,
"delta": 0.0767,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 42
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1146,
"predicted_3B": 0.0008,
"predicted_AB": 3.3147,
"predicted_AVG": 0.2427,
"predicted_BB": 0.3055,
"predicted_H": 0.8044,
"predicted_HBP": 0.03,
"predicted_HR": 0.1031,
"predicted_OBP": 0.3066,
"predicted_R": 0.3023,
"predicted_RBI": 0.3266,
"predicted_SLG": 0.371,
"predicted_SO": 0.845
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1146,
"after": 0.1146,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3147,
"after": 3.3147,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2658,
"after": 0.2427,
"delta": -0.0231,
"percent_delta": -0.0869,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.308,
"after": 0.3055,
"delta": -0.0025,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8227,
"after": 0.8044,
"delta": -0.0183,
"percent_delta": -0.0222,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.03,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1056,
"after": 0.1031,
"delta": -0.0025,
"percent_delta": -0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3311,
"after": 0.3066,
"delta": -0.0245,
"percent_delta": -0.074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.314,
"after": 0.3023,
"delta": -0.0117,
"percent_delta": -0.0373,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3392,
"after": 0.3266,
"delta": -0.0126,
"percent_delta": -0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3934,
"after": 0.371,
"delta": -0.0224,
"percent_delta": -0.0569,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8382,
"after": 0.845,
"delta": 0.0068,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3311,
"after": 0.3066,
"delta": -0.0245,
"percent_delta": -0.074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.31), rates preserved: AVG=0.243 HR/AB=0.031",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1146,
"after": 0.0,
"delta": -0.1146,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3147,
"after": 3.0,
"delta": -0.3147,
"percent_delta": -0.0949,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3055,
"after": 0.0,
"delta": -0.3055,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8044,
"after": 1.0,
"delta": 0.1956,
"percent_delta": 0.2432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1031,
"after": 0.0,
"delta": -0.1031,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3266,
"after": 0.0,
"delta": -0.3266,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.845,
"after": 1.0,
"delta": 0.155,
"percent_delta": 0.1834,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8044,
"after": 1.0,
"delta": 0.1956,
"percent_delta": 0.2432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3266,
"after": 0.0,
"delta": -0.3266,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3023,
"after": 0.0,
"delta": -0.3023,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3023,
"after": 0.0,
"delta": -0.3023,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2427,
"after": 0.333,
"delta": 0.0903,
"percent_delta": 0.3721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3066,
"after": 0.333,
"delta": 0.0264,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.333,
"delta": -0.038,
"percent_delta": -0.1024,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2427,
"after": 0.333,
"delta": 0.0903,
"percent_delta": 0.3721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.333,
"delta": -0.038,
"percent_delta": -0.1024,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2427,
"predicted_BB": 1.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3066,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.371,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2427,
"delta": -0.0903,
"percent_delta": -0.2713,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3066,
"delta": -0.0264,
"percent_delta": -0.0794,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.371,
"delta": 0.038,
"percent_delta": 0.1143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.371,
"delta": 0.038,
"percent_delta": 0.1143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2427,
"delta": -0.0903,
"percent_delta": -0.2713,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.119,
"after": 0.0,
"delta": -0.119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.238,
"after": 3.0,
"delta": -0.238,
"percent_delta": -0.0735,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2427,
"delta": -0.0193,
"percent_delta": -0.0737,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 1.0,
"delta": 0.25,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3066,
"delta": -0.0214,
"percent_delta": -0.0652,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.31,
"after": 0.0,
"delta": -0.31,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.371,
"delta": -0.024,
"percent_delta": -0.0608,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.833,
"after": 0.0,
"delta": -0.833,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.833,
"after": 0.0,
"delta": -0.833,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.119 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.238 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.310 | - |
| predicted_H | 0.750 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.328 | - |
| predicted_R | 0.310 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.395 | - |
| predicted_SO | 0.833 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | -0.004 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.315 | 0.077 |
| predicted_AVG | 0.266 | 0.004 |
| predicted_BB | 0.308 | -0.002 |
| predicted_H | 0.823 | 0.073 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.106 | -0.004 |
| predicted_OBP | 0.331 | 0.003 |
| predicted_R | 0.314 | 0.004 |
| predicted_RBI | 0.339 | -0.001 |
| predicted_SLG | 0.393 | -0.002 |
| predicted_SO | 0.838 | 0.005 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.115 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.315 | 0.000 |
| predicted_AVG | 0.243 | -0.023 |
| predicted_BB | 0.305 | -0.003 |
| predicted_H | 0.804 | -0.018 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.103 | -0.003 |
| predicted_OBP | 0.307 | -0.025 |
| predicted_R | 0.302 | -0.012 |
| predicted_RBI | 0.327 | -0.013 |
| predicted_SLG | 0.371 | -0.022 |
| predicted_SO | 0.845 | 0.007 |
AB rounded to 3 (raw=3.31), rates preserved: AVG=0.243 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.115 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.315 |
| predicted_AVG | 0.333 | 0.090 |
| predicted_BB | 0.000 | -0.305 |
| predicted_H | 1.000 | 0.196 |
| predicted_HR | 0.000 | -0.103 |
| predicted_OBP | 0.333 | 0.026 |
| predicted_R | 0.000 | -0.302 |
| predicted_RBI | 0.000 | -0.327 |
| predicted_SLG | 0.333 | -0.038 |
| predicted_SO | 1.000 | 0.155 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 4.000 | 0.3333 | 0.4000 | 0.3333 | 0.3333 | 0.0000 | 0.0556 | 0.1111 | 0.2222 |
| last_10 | 0.20 | 10 | - | 34.000 | 10.000 | 1.000 | 0.000 | 1.000 | 4.000 | 3.000 | 2.000 | 9.000 | 0.2941 | 0.3333 | 0.4118 | 0.2941 | 0.0294 | 0.1177 | 0.0588 | 0.2647 |
| season | 0.60 | 42 | - | 136.000 | 34.000 | 5.000 | 0.000 | 5.000 | 13.000 | 13.000 | 13.000 | 35.000 | 0.2500 | 0.3224 | 0.3971 | 0.2500 | 0.0368 | 0.0956 | 0.0956 | 0.2574 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1080 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.4290 |
| predicted_AVG | 0.2714 |
| predicted_BB | 0.3050 |
| predicted_H | 0.9310 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.0990 |
| predicted_OBP | 0.3357 |
| predicted_R | 0.3200 |
| predicted_RBI | 0.3380 |
| predicted_SLG | 0.3910 |
| predicted_SO | 0.8460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1190 | 0.1080 | 0.1146 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.2380 | 3.4290 | 3.3147 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2714 | 0.2658 | model_form_blend |
| predicted_BB | 0.3100 | 0.3050 | 0.3080 | model_form_blend |
| predicted_H | 0.7500 | 0.9310 | 0.8227 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.1100 | 0.0990 | 0.1056 | model_form_blend |
| predicted_OBP | 0.3280 | 0.3357 | 0.3311 | model_form_blend |
| predicted_R | 0.3100 | 0.3200 | 0.3140 | model_form_blend |
| predicted_RBI | 0.3400 | 0.3380 | 0.3392 | model_form_blend |
| predicted_SLG | 0.3950 | 0.3910 | 0.3934 | model_form_blend |
| predicted_SO | 0.8330 | 0.8460 | 0.8382 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 137 |
| Season rows before report date | 137 |
| Report year | 2026 |
| Profile rows used | 42 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.6 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 682626 |
| playerID | 682626 |
| playerName | Francisco Alvarez |
| pos | C |
| started | True |
| startingPosition | DH |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.6 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.324 |
| sl_xwoba | 0.35 |
| sl_xba | 0.26 |
| sl_xslg | 0.476 |
| sl_sweet_spot_percent | 32.0 |
| sl_barrel_batted_rate | 16.5 |
| sl_hard_hit_percent | 43.7 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 9.4 |
| sl_whiff_percent | 29.5 |
| sl_swing_percent | 46.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 1.133 | 0.000 | -1.133 | 0.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 1.733 | 2.000 | 0.267 | 0.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 3.267 | 4.000 | 1.733 | 1.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 3.127 | 6.000 | 1.973 | -0.900 |
| predicted_SO | 7.000 | 7.000 | 7.000 | Pitching_SO | 3.400 | 6.000 | 3.600 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "640455",
"player_name": "Sean Manaea",
"position": "Starter",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 2.0,
"predicted_IP": 5.3333,
"predicted_SO": 7.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 2.0,
"predicted_IP": 5.1,
"predicted_R": 2.0,
"predicted_SO": 7.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 2.000 | - |
| predicted_IP | 5.333 | - |
| predicted_SO | 7.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 21.200 | 7.000 | 16.000 | 4.000 | 22.000 | 3.000 | 2.9077 | 0.9231 | 0.3231 | 0.7385 | 0.1846 | 1.0154 | 0.1385 |
| last_10 | 0.35 | 10 | 33.000 | 18.000 | 33.000 | 10.000 | 39.000 | 4.000 | 4.9091 | 1.3030 | 0.5454 | 1.0000 | 0.3030 | 1.1818 | 0.1212 |
| season | 0.20 | 15 | 49.000 | 26.000 | 49.000 | 17.000 | 51.000 | 6.000 | 4.7755 | 1.3469 | 0.5306 | 1.0000 | 0.3469 | 1.0408 | 0.1225 |
| Metric | Value |
|---|---|
| predicted_BB | 1.1870 |
| predicted_ER | 1.9060 |
| predicted_ERA | 4.1134 |
| predicted_H | 3.7760 |
| predicted_HR | 0.5560 |
| predicted_IP | 4.1000 |
| predicted_SO | 4.3520 |
| predicted_WHIP | 1.1899 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 1.1870 | 0.6462 | model_form_blend |
| predicted_ER | 2.0000 | 1.9060 | 1.9488 | model_form_blend |
| predicted_ERA | - | 4.1134 | 4.1134 | form_only |
| predicted_H | 5.0000 | 3.7760 | 4.3337 | model_form_blend |
| predicted_HR | 2.0000 | 0.5560 | 1.2139 | model_form_blend |
| predicted_IP | 5.1000 | 4.1000 | 4.2000 | model_form_blend |
| predicted_SO | 7.0000 | 4.3520 | 5.5585 | model_form_blend |
| predicted_WHIP | - | 1.1899 | 1.1899 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 15 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.1 |
| H | 5 |
| R | 2 |
| ER | 2 |
| BB | 0 |
| SO | 7 |
| HR | 2 |
| BF | 21 |
| Pitches | 87 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 22 |
| Pitching_ER | 2 |
| Pitching_ERA | 4.78 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 6 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 84 |
| Pitching_R | 2 |
| Pitching_SO | 6 |
| Pitching_Strikes | 59 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260613_ATL@NYM |
| game_type | full |
| mlbID | 640455 |
| playerID | 640455 |
| playerName | Sean Manaea |
| pos | P |
| started | True |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-13 |
| sl_k_percent | 23.8 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.334 |
| sl_xwoba | 0.318 |
| sl_sweet_spot_percent | 35.2 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 38.0 |
| sl_whiff_percent | 22.8 |
| sl_swing_percent | 47.4 |
| sl_avg_best_speed | 76.254124429 |
| sl_avg_hyper_speed | 94.057223714 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.733 | 1.000 | -0.733 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.737 | 1.000 | 0.363 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.033 | 0.000 | -1.033 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "548384",
"player_name": "Brooks Raley",
"position": "Middle Reliever",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 2.000 | 4.000 | 2.000 | 5.000 | 0.000 | 3.8571 | 1.2857 | 0.4286 | 0.8571 | 0.4286 | 1.0714 | 0.0000 |
| last_10 | 0.35 | 10 | 8.200 | 3.000 | 9.000 | 4.000 | 10.000 | 1.000 | 3.1154 | 1.5000 | 0.3462 | 1.0385 | 0.4615 | 1.1539 | 0.1154 |
| season | 0.20 | 30 | 27.000 | 6.000 | 22.000 | 12.000 | 31.000 | 2.000 | 2.0000 | 1.2593 | 0.2222 | 0.8148 | 0.4444 | 1.1482 | 0.0741 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4050 |
| predicted_ER | 0.4270 |
| predicted_ERA | 3.8447 |
| predicted_H | 0.9420 |
| predicted_HR | 0.0990 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0300 |
| predicted_WHIP | 1.3466 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4050 | 0.1807 | model_form_blend |
| predicted_ER | 0.0000 | 0.4270 | 0.1905 | model_form_blend |
| predicted_ERA | - | 3.8447 | 3.8447 | form_only |
| predicted_H | 0.0000 | 0.9420 | 0.4203 | model_form_blend |
| predicted_HR | 0.0000 | 0.0990 | 0.0442 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0300 | 0.4595 | model_form_blend |
| predicted_WHIP | - | 1.3466 | 1.3466 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 30 |
| Season rows before report date | 30 |
| Report year | 2026 |
| Profile rows used | 30 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.00 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260617_NYM@CIN |
| game_type | full |
| mlbID | 548384 |
| playerID | 548384 |
| playerName | Brooks Raley |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-17 |
| sl_k_percent | 26.5 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.287 |
| sl_xwoba | 0.296 |
| sl_sweet_spot_percent | 38.9 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 30.6 |
| sl_whiff_percent | 26.0 |
| sl_swing_percent | 44.6 |
| sl_avg_best_speed | 76.279147714 |
| sl_avg_hyper_speed | 93.191174493 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.538 | 0.000 | -0.538 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.808 | 2.000 | 0.192 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.835 | 1.100 | 0.265 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.423 | 2.000 | -0.423 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "642207",
"player_name": "Devin Williams",
"position": "Middle Reliever",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 1.000 | 3.000 | 1.000 | 9.000 | 0.000 | 1.6875 | 0.7500 | 0.1875 | 0.5625 | 0.1875 | 1.6875 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 5.000 | 6.000 | 7.000 | 15.000 | 1.000 | 4.6552 | 1.3448 | 0.5172 | 0.6207 | 0.7241 | 1.5517 | 0.1035 |
| season | 0.20 | 25 | 23.100 | 11.000 | 20.000 | 11.000 | 37.000 | 2.000 | 4.2429 | 1.3286 | 0.4714 | 0.8571 | 0.4714 | 1.5857 | 0.0857 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3960 |
| predicted_ER | 0.4330 |
| predicted_ERA | 3.8969 |
| predicted_H | 0.8140 |
| predicted_HR | 0.1010 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2660 |
| predicted_WHIP | 1.2106 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3960 | 0.1706 | model_form_blend |
| predicted_ER | 0.0000 | 0.4330 | 0.1865 | model_form_blend |
| predicted_ERA | - | 3.8969 | 3.8969 | form_only |
| predicted_H | 1.0000 | 0.8140 | 0.9199 | model_form_blend |
| predicted_HR | 0.0000 | 0.1010 | 0.0435 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.2660 | 1.1146 | model_form_blend |
| predicted_WHIP | - | 1.2106 | 1.2106 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 26 |
| Season rows before report date | 26 |
| Report year | 2026 |
| Profile rows used | 25 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.01 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 33 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 27 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260612_ATL@NYM |
| game_type | full |
| mlbID | 642207 |
| playerID | 642207 |
| playerName | Devin Williams |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-12 |
| sl_k_percent | 35.9 |
| sl_bb_percent | 13.6 |
| sl_woba | 0.324 |
| sl_xwoba | 0.272 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 25.0 |
| sl_whiff_percent | 39.5 |
| sl_swing_percent | 50.1 |
| sl_avg_best_speed | 79.6207416 |
| sl_avg_hyper_speed | 92.7856574 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.276 | 0.000 | 0.724 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.276 | 0.000 | -0.276 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.690 | 0.000 | 0.310 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.997 | 1.000 | 0.003 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.034 | 3.000 | -1.034 | -3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "596133",
"player_name": "Luke Weaver",
"position": "Middle Reliever",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 0.000 | 1.000 | 0.000 | 5.000 | 0.000 | 0.0000 | 0.2000 | 0.0000 | 0.2000 | 0.0000 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.200 | 0.000 | 4.000 | 1.000 | 9.000 | 0.000 | 0.0000 | 0.4688 | 0.0000 | 0.3750 | 0.0938 | 0.8438 | 0.0000 |
| season | 0.20 | 29 | 31.000 | 8.000 | 20.000 | 8.000 | 30.000 | 2.000 | 2.3226 | 0.9032 | 0.2581 | 0.6452 | 0.2581 | 0.9677 | 0.0645 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2090 |
| predicted_ER | 0.2530 |
| predicted_ERA | 2.2769 |
| predicted_H | 0.6300 |
| predicted_HR | 0.0730 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9380 |
| predicted_WHIP | 0.8392 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2090 | 0.6356 | model_form_blend |
| predicted_ER | 0.0000 | 0.2530 | 0.1165 | model_form_blend |
| predicted_ERA | - | 2.2769 | 2.2769 | form_only |
| predicted_H | 1.0000 | 0.6300 | 0.8296 | model_form_blend |
| predicted_HR | 0.0000 | 0.0730 | 0.0336 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9380 | 0.4321 | model_form_blend |
| predicted_WHIP | - | 0.8392 | 0.8392 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 29 |
| Season rows before report date | 29 |
| Report year | 2026 |
| Profile rows used | 29 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.32 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260616_NYM@CIN |
| game_type | full |
| mlbID | 596133 |
| playerID | 596133 |
| playerName | Luke Weaver |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-16 |
| sl_k_percent | 24.6 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.228 |
| sl_xwoba | 0.278 |
| sl_sweet_spot_percent | 28.9 |
| sl_barrel_batted_rate | 9.6 |
| sl_hard_hit_percent | 31.3 |
| sl_whiff_percent | 28.0 |
| sl_swing_percent | 51.8 |
| sl_avg_best_speed | 79.537970732 |
| sl_avg_hyper_speed | 93.082388642 |
| Field | Value |
|---|---|
| Pitcher | Aaron Nola |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1294 |
| ESPN Rank | 267 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2074 |
| Avg Velo | 86.0246 |
| Avg Spin | 2299.0760 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 4 |
| Pre H | 6 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 5.8585 |
| Season WHIP | 1.4717 |
| Role Avg IP | 5.0480 |
| Recent Avg IP | 5 |
| Last Start IP | 4.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"opponent": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"edges": {
"quality_edge": 0.0979,
"offense_edge": -0.1014,
"opponent_offense_edge": -0.1288,
"defense_strength": 0.0311,
"opponent_defense_weakness": -0.0831,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9714,
"strikeout": 1.0132
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "605400",
"profile": {
"available": true,
"pitcher_id": "605400",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 221.0,
"k_percent": 23.0,
"bb_percent": 7.8,
"woba": 0.36,
"xwoba": 0.327,
"sweet_spot_percent": 36.0,
"barrel_batted_rate": 9.3,
"hard_hit_percent": 38.8,
"avg_best_speed": 76.3074,
"avg_hyper_speed": 94.1882,
"whiff_percent": 25.0,
"swing_percent": 45.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4314,
"command_and_miss": 0.0671,
"regression_edge": 0.9429,
"xwoba_edge": -0.3429,
"barrel_edge": -0.4444,
"hard_hit_edge": -0.0714,
"whiff_edge": -0.1,
"bb_edge": 0.35,
"pitch_design_score": -0.2074
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "605400",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 80,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 80,
"pitch_usage": 0.0,
"release_speed": 86.0245751140897,
"release_spin_rate": 2299.076010454948,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 80,
"pitch_usage": 0.0,
"release_speed": 86.0245751140897,
"release_spin_rate": 2299.076010454948,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.0246,
"release_spin_rate": 2299.076,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2074,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4817,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.1294,
"sample_weight": 0.884,
"run_prevention_factor": 1.011,
"strikeout_factor": 0.999,
"walk_factor": 0.9752,
"homer_factor": 1.043,
"woba_minus_xwoba": 0.033,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "605400",
"espn_id": 33709,
"player_name": "Aaron Nola",
"team": "PHI",
"role": "pitcher",
"espn_rank": 267,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 267,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 4.0,
"qs_rank": 73,
"era_value": 5.8584,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 70.2,
"ip_rank": 72,
"h_value": 80.0,
"h_rank": 22,
"er_value": 46.0,
"er_rank": 7,
"hr_value": 13.0,
"hr_rank": 23,
"bb_value": 24.0,
"bb_rank": 68,
"k_value": 71.0,
"k_rank": 52,
"k_per_9_value": 9.042453,
"k_per_9_rank": 19,
"whip_value": 1.4716,
"whip_rank": null,
"war_value": 0.21,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0097,
"adjusted": 3
},
"predicted_H": {
"original": 6.0,
"factor": 1.0097,
"adjusted": 6
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9781,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.038,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9991,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 48.1,
"ER": 36,
"H": 57,
"BB": 18,
"SO": 47,
"HR": 10,
"ERA": 6.703448275862069,
"WHIP": 1.5517241379310345,
"K9": 8.751724137931035,
"HR9": 1.8620689655172413,
"games_pitched": 10,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "605400",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 80,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 80,
"pitch_usage": 0.0,
"release_speed": 86.0245751140897,
"release_spin_rate": 2299.076010454948,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 80,
"pitch_usage": 0.0,
"release_speed": 86.0245751140897,
"release_spin_rate": 2299.076010454948,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.0246,
"release_spin_rate": 2299.076,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2074,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.4817,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "605400",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 25.0,
"ER": 16.0,
"R": 16.0,
"H": 27.0,
"BB": 6.0,
"SO": 25.0,
"HR": 4.0,
"BF": 108.0,
"Pitches": 435.0
},
"per_game": {
"IP": 5.0,
"ER": 3.2,
"R": 3.2,
"H": 5.4,
"BB": 1.2,
"SO": 5.0,
"HR": 0.8,
"BF": 21.6,
"Pitches": 87.0
},
"rates": {
"ERA": 5.76,
"WHIP": 1.32,
"ER_per_IP": 0.64,
"H_per_IP": 1.08,
"BB_per_IP": 0.24,
"SO_per_IP": 1.0,
"HR_per_IP": 0.16
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 48.1,
"ER": 36.0,
"R": 36.0,
"H": 57.0,
"BB": 18.0,
"SO": 47.0,
"HR": 10.0,
"BF": 216.0,
"Pitches": 892.0
},
"per_game": {
"IP": 4.2,
"ER": 3.6,
"R": 3.6,
"H": 5.7,
"BB": 1.8,
"SO": 4.7,
"HR": 1.0,
"BF": 21.6,
"Pitches": 89.2
},
"rates": {
"ERA": 6.7034,
"WHIP": 1.5517,
"ER_per_IP": 0.74483,
"H_per_IP": 1.17931,
"BB_per_IP": 0.37241,
"SO_per_IP": 0.97241,
"HR_per_IP": 0.2069
}
},
"season": {
"games": 14,
"totals": {
"IP": 70.2,
"ER": 46.0,
"R": 46.0,
"H": 80.0,
"BB": 24.0,
"SO": 71.0,
"HR": 13.0,
"BF": 309.0,
"Pitches": 1249.0
},
"per_game": {
"IP": 5.0,
"ER": 3.2857,
"R": 3.2857,
"H": 5.7143,
"BB": 1.7143,
"SO": 5.0714,
"HR": 0.9286,
"BF": 22.0714,
"Pitches": 89.2143
},
"rates": {
"ERA": 5.8585,
"WHIP": 1.4717,
"ER_per_IP": 0.65094,
"H_per_IP": 1.13208,
"BB_per_IP": 0.33962,
"SO_per_IP": 1.00472,
"HR_per_IP": 0.18396
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 3.106,
"predicted_H": 5.334,
"predicted_BB": 1.579,
"predicted_SO": 4.802,
"predicted_HR": 0.845,
"predicted_ERA": 5.6883,
"predicted_WHIP": 1.4066
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 5.0,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 4.0,
"form": 3.106,
"final": 3.5183,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 5.334,
"final": 4.7188,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.579,
"final": 1.7732,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 4.802,
"final": 3.9709,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.845,
"final": 0.9165,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.6883,
"final": 5.6883,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4066,
"final": 1.4066,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jhoan Duran |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4662 |
| ESPN Rank | 44 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 3 |
| Season ERA | 1.1408 |
| Season WHIP | 0.8451 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"opponent": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"edges": {
"quality_edge": 0.0979,
"offense_edge": -0.1014,
"opponent_offense_edge": -0.1288,
"defense_strength": 0.0311,
"opponent_defense_weakness": -0.0831,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9714,
"strikeout": 1.0132
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "661395",
"profile": {
"available": true,
"pitcher_id": "661395",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 65.0,
"k_percent": 38.5,
"bb_percent": 5.5,
"woba": 0.24,
"xwoba": 0.242,
"sweet_spot_percent": 27.5,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 49.0,
"avg_best_speed": 82.5465,
"avg_hyper_speed": 95.402,
"whiff_percent": 39.6,
"swing_percent": 52.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.9741,
"command_and_miss": 1.9086,
"regression_edge": -0.0571,
"xwoba_edge": 2.0857,
"barrel_edge": 0.3111,
"hard_hit_edge": -1.5286,
"whiff_edge": 1.9857,
"bb_edge": 0.925,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "661395",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4662,
"sample_weight": 0.45,
"run_prevention_factor": 0.9604,
"strikeout_factor": 1.0769,
"walk_factor": 0.9667,
"homer_factor": 0.9882,
"woba_minus_xwoba": -0.002,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "661395",
"espn_id": 41109,
"player_name": "Jhoan Duran",
"team": "PHI",
"role": "pitcher",
"espn_rank": 44,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 44,
"gp_value": 25.0,
"gp_rank": 125,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.9014,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 18.0,
"sv_rank": 3,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 23.2,
"ip_rank": 339,
"h_value": 18.0,
"h_rank": 367,
"er_value": 5.0,
"er_rank": 496,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 35.0,
"k_rank": 199,
"k_per_9_value": 13.309859,
"k_per_9_rank": 15,
"whip_value": 0.9718,
"whip_rank": null,
"war_value": 1.55,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9822,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9822,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.985,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9947,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0346,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 0,
"H": 4,
"BB": 0,
"SO": 12,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.4444444444444444,
"K9": 12.0,
"HR9": 0.0,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "661395",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.7,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4845,
"prior_weight": 0.5155
},
"role": "pitcher",
"player_id": "661395",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 0.0,
"SO": 6.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 62.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.0,
"SO": 1.2,
"HR": 0.0,
"BF": 3.4,
"Pitches": 12.4
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6,
"ER_per_IP": 0.0,
"H_per_IP": 0.6,
"BB_per_IP": 0.0,
"SO_per_IP": 1.2,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 0.0,
"R": 0.0,
"H": 5.0,
"BB": 0.0,
"SO": 13.0,
"HR": 0.0,
"BF": 34.0,
"Pitches": 135.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.5,
"BB": 0.0,
"SO": 1.3,
"HR": 0.0,
"BF": 3.4,
"Pitches": 13.5
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5,
"ER_per_IP": 0.0,
"H_per_IP": 0.5,
"BB_per_IP": 0.0,
"SO_per_IP": 1.3,
"HR_per_IP": 0.0
}
},
"season": {
"games": 24,
"totals": {
"IP": 23.2,
"ER": 3.0,
"R": 4.0,
"H": 15.0,
"BB": 5.0,
"SO": 35.0,
"HR": 1.0,
"BF": 88.0,
"Pitches": 359.0
},
"per_game": {
"IP": 1.0,
"ER": 0.125,
"R": 0.1667,
"H": 0.625,
"BB": 0.2083,
"SO": 1.4583,
"HR": 0.0417,
"BF": 3.6667,
"Pitches": 14.9583
},
"rates": {
"ERA": 1.1408,
"WHIP": 0.8451,
"ER_per_IP": 0.12676,
"H_per_IP": 0.6338,
"BB_per_IP": 0.21127,
"SO_per_IP": 1.47887,
"HR_per_IP": 0.04225
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.271,
"predicted_H": 0.779,
"predicted_BB": 0.208,
"predicted_SO": 1.109,
"predicted_HR": 0.079,
"predicted_ERA": 2.4345,
"predicted_WHIP": 0.9868
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5678,
"form_weight": 0.4322,
"form_reliability": 0.4845,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.7,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4845,
"prior_weight": 0.5155
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.271,
"final": 0.1171,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.779,
"final": 1.4723,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.208,
"final": 0.0899,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 1.109,
"final": 2.1827,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.079,
"final": 0.0341,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.4345,
"final": 2.4345,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9868,
"final": 0.9868,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jonathan Bowlan |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4527 |
| ESPN Rank | 251 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1786 |
| Avg Velo | 92.9186 |
| Avg Spin | 2274.8166 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 3.5735 |
| Season WHIP | 1.0588 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"opponent": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"edges": {
"quality_edge": 0.0979,
"offense_edge": -0.1014,
"opponent_offense_edge": -0.1288,
"defense_strength": 0.0311,
"opponent_defense_weakness": -0.0831,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9714,
"strikeout": 1.0132
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "680742",
"profile": {
"available": true,
"pitcher_id": "680742",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 71.0,
"k_percent": 25.3,
"bb_percent": 4.4,
"woba": 0.252,
"xwoba": 0.243,
"sweet_spot_percent": 29.7,
"barrel_batted_rate": 3.1,
"hard_hit_percent": 34.4,
"avg_best_speed": 76.7246,
"avg_hyper_speed": 92.8274,
"whiff_percent": 31.8,
"swing_percent": 48.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.3882,
"command_and_miss": 0.725,
"regression_edge": 0.2571,
"xwoba_edge": 2.0571,
"barrel_edge": 0.9333,
"hard_hit_edge": 0.5571,
"whiff_edge": 0.8714,
"bb_edge": 1.2,
"pitch_design_score": 0.1786
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680742",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 18,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 18,
"pitch_usage": 0.0,
"release_speed": 92.91864746636017,
"release_spin_rate": 2274.8166248712982,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 18,
"pitch_usage": 0.0,
"release_speed": 92.91864746636017,
"release_spin_rate": 2274.8166248712982,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.9186,
"release_spin_rate": 2274.8166,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1786,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.2759,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.4527,
"sample_weight": 0.45,
"run_prevention_factor": 0.9615,
"strikeout_factor": 1.0229,
"walk_factor": 0.9568,
"homer_factor": 0.9286,
"woba_minus_xwoba": 0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680742",
"espn_id": 41344,
"player_name": "Jonathan Bowlan",
"team": "PHI",
"role": "pitcher",
"espn_rank": 251,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 251,
"gp_value": 22.0,
"gp_rank": 157,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.5735,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 1.0,
"hld_rank": 198,
"ip_value": 22.2,
"ip_rank": 350,
"h_value": 20.0,
"h_rank": 330,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 4.0,
"bb_rank": 502,
"k_value": 23.0,
"k_rank": 321,
"k_per_9_value": 9.132353,
"k_per_9_rank": 24,
"whip_value": 1.0588,
"whip_rank": null,
"war_value": 0.28,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9827,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9827,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9806,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9679,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0103,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 1,
"H": 8,
"BB": 1,
"SO": 11,
"HR": 1,
"ERA": 0.9,
"WHIP": 0.9,
"K9": 9.9,
"HR9": 0.9,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": true,
"pitcher_id": "680742",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 18,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 18,
"pitch_usage": 0.0,
"release_speed": 92.91864746636017,
"release_spin_rate": 2274.8166248712982,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 18,
"pitch_usage": 0.0,
"release_speed": 92.91864746636017,
"release_spin_rate": 2274.8166248712982,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.9186,
"release_spin_rate": 2274.8166,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1786,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.2759,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.501,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4738,
"prior_weight": 0.5262
},
"role": "pitcher",
"player_id": "680742",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 1.0,
"H": 4.0,
"BB": 0.0,
"SO": 7.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 75.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.2,
"H": 0.8,
"BB": 0.0,
"SO": 1.4,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.0
},
"rates": {
"ERA": 0.0,
"WHIP": 0.75,
"ER_per_IP": 0.0,
"H_per_IP": 0.75,
"BB_per_IP": 0.0,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 1.0,
"R": 3.0,
"H": 8.0,
"BB": 1.0,
"SO": 11.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 157.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.3,
"H": 0.8,
"BB": 0.1,
"SO": 1.1,
"HR": 0.1,
"BF": 4.1,
"Pitches": 15.7
},
"rates": {
"ERA": 0.9,
"WHIP": 0.9,
"ER_per_IP": 0.1,
"H_per_IP": 0.8,
"BB_per_IP": 0.1,
"SO_per_IP": 1.1,
"HR_per_IP": 0.1
}
},
"season": {
"games": 22,
"totals": {
"IP": 22.2,
"ER": 9.0,
"R": 11.0,
"H": 20.0,
"BB": 4.0,
"SO": 23.0,
"HR": 1.0,
"BF": 91.0,
"Pitches": 371.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4091,
"R": 0.5,
"H": 0.9091,
"BB": 0.1818,
"SO": 1.0455,
"HR": 0.0455,
"BF": 4.1364,
"Pitches": 16.8636
},
"rates": {
"ERA": 3.5735,
"WHIP": 1.0588,
"ER_per_IP": 0.39706,
"H_per_IP": 0.88235,
"BB_per_IP": 0.17647,
"SO_per_IP": 1.01471,
"HR_per_IP": 0.04412
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.318,
"predicted_H": 0.889,
"predicted_BB": 0.224,
"predicted_SO": 1.052,
"predicted_HR": 0.098,
"predicted_ERA": 2.8601,
"predicted_WHIP": 1.1131
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5723,
"form_weight": 0.4277,
"form_reliability": 0.4738,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.501,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4738,
"prior_weight": 0.5262
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.318,
"final": 0.136,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.889,
"final": 0.3802,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.224,
"final": 0.6681,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.052,
"final": 0.4499,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.098,
"final": 0.0419,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.8601,
"final": 2.8601,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1131,
"final": 1.1131,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | José Alvarado |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1944 |
| ESPN Rank | 560 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 5.7600 |
| Season WHIP | 1.6400 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"opponent": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"edges": {
"quality_edge": 0.0979,
"offense_edge": -0.1014,
"opponent_offense_edge": -0.1288,
"defense_strength": 0.0311,
"opponent_defense_weakness": -0.0831,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9714,
"strikeout": 1.0132
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "621237",
"profile": {
"available": true,
"pitcher_id": "621237",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 85.0,
"k_percent": 27.5,
"bb_percent": 7.5,
"woba": 0.366,
"xwoba": 0.302,
"sweet_spot_percent": 35.6,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 28.8,
"avg_best_speed": 77.1795,
"avg_hyper_speed": 93.3158,
"whiff_percent": 30.2,
"swing_percent": 48.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1518,
"command_and_miss": 0.6314,
"regression_edge": 1.8286,
"xwoba_edge": 0.3714,
"barrel_edge": 0.6889,
"hard_hit_edge": 1.3571,
"whiff_edge": 0.6429,
"bb_edge": 0.425,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "621237",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.1944,
"sample_weight": 0.45,
"run_prevention_factor": 0.9835,
"strikeout_factor": 1.0244,
"walk_factor": 0.9847,
"homer_factor": 0.9458,
"woba_minus_xwoba": 0.064,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "621237",
"espn_id": 36063,
"player_name": "Jose Alvarado",
"team": "PHI",
"role": "pitcher",
"espn_rank": 560,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 560,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.76,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 8.0,
"hld_rank": 41,
"ip_value": 25.0,
"ip_rank": 323,
"h_value": 32.0,
"h_rank": 193,
"er_value": 16.0,
"er_rank": 197,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 9.0,
"bb_rank": 332,
"k_value": 33.0,
"k_rank": 209,
"k_per_9_value": 11.88,
"k_per_9_rank": 17,
"whip_value": 1.64,
"whip_rank": null,
"war_value": -0.21,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9926,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9926,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9931,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9756,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.011,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 7,
"H": 10,
"BB": 2,
"SO": 10,
"HR": 3,
"ERA": 7.000000000000002,
"WHIP": 1.3333333333333337,
"K9": 10.000000000000002,
"HR9": 3.0000000000000004,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "621237",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.965,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4982,
"prior_weight": 0.5018
},
"role": "pitcher",
"player_id": "621237",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 4.0,
"R": 4.0,
"H": 5.0,
"BB": 1.0,
"SO": 7.0,
"HR": 2.0,
"BF": 21.0,
"Pitches": 99.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.0,
"BB": 0.2,
"SO": 1.4,
"HR": 0.4,
"BF": 4.2,
"Pitches": 19.8
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.2857,
"ER_per_IP": 0.85714,
"H_per_IP": 1.07143,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.5,
"HR_per_IP": 0.42857
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 7.0,
"R": 7.0,
"H": 10.0,
"BB": 2.0,
"SO": 10.0,
"HR": 3.0,
"BF": 40.0,
"Pitches": 180.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7,
"R": 0.7,
"H": 1.0,
"BB": 0.2,
"SO": 1.0,
"HR": 0.3,
"BF": 4.0,
"Pitches": 18.0
},
"rates": {
"ERA": 7.0,
"WHIP": 1.3333,
"ER_per_IP": 0.77778,
"H_per_IP": 1.11111,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.11111,
"HR_per_IP": 0.33333
}
},
"season": {
"games": 31,
"totals": {
"IP": 25.0,
"ER": 16.0,
"R": 17.0,
"H": 32.0,
"BB": 9.0,
"SO": 33.0,
"HR": 3.0,
"BF": 120.0,
"Pitches": 500.0
},
"per_game": {
"IP": 0.2,
"ER": 0.5161,
"R": 0.5484,
"H": 1.0323,
"BB": 0.2903,
"SO": 1.0645,
"HR": 0.0968,
"BF": 3.871,
"Pitches": 16.129
},
"rates": {
"ERA": 5.76,
"WHIP": 1.64,
"ER_per_IP": 0.64,
"H_per_IP": 1.28,
"BB_per_IP": 0.36,
"SO_per_IP": 1.32,
"HR_per_IP": 0.12
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.622,
"predicted_H": 1.015,
"predicted_BB": 0.295,
"predicted_SO": 1.094,
"predicted_HR": 0.231,
"predicted_ERA": 5.7862,
"predicted_WHIP": 1.3551
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.562,
"form_weight": 0.438,
"form_reliability": 0.4982,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.965,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4982,
"prior_weight": 0.5018
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.622,
"final": 0.2724,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.015,
"final": 1.0066,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.295,
"final": 0.1292,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.094,
"final": 0.4792,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.231,
"final": 0.1012,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.7862,
"final": 5.7862,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3551,
"final": 1.3551,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Orion Kerkering |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4098 |
| ESPN Rank | 84 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.2771 |
| Season WHIP | 1.1928 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PHI",
"games": 81,
"wins": 41,
"losses": 40,
"win_pct": 0.5062,
"runs_scored": 328.0,
"runs_allowed": 354.0,
"run_differential": -26.0,
"run_differential_per_game": -0.321,
"avg_runs_scored": 4.0494,
"avg_runs_allowed": 4.3704,
"offense_index": 0.8986,
"defense_index": 1.0311,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.1,
"avg_runs_allowed": 4.6,
"run_differential": 5.0
},
"available": true,
"quality_score": 0.0011
},
"opponent": {
"team": "NYM",
"games": 81,
"wins": 34,
"losses": 47,
"win_pct": 0.4198,
"runs_scored": 318.0,
"runs_allowed": 337.0,
"run_differential": -19.0,
"run_differential_per_game": -0.2346,
"avg_runs_scored": 3.9259,
"avg_runs_allowed": 4.1605,
"offense_index": 0.8712,
"defense_index": 1.0831,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 5.0,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.0968
},
"edges": {
"quality_edge": 0.0979,
"offense_edge": -0.1014,
"opponent_offense_edge": -0.1288,
"defense_strength": 0.0311,
"opponent_defense_weakness": -0.0831,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9714,
"strikeout": 1.0132
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "689147",
"profile": {
"available": true,
"pitcher_id": "689147",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 78.0,
"k_percent": 26.1,
"bb_percent": 10.9,
"woba": 0.279,
"xwoba": 0.252,
"sweet_spot_percent": 26.0,
"barrel_batted_rate": 5.5,
"hard_hit_percent": 21.9,
"avg_best_speed": 70.1017,
"avg_hyper_speed": 91.7835,
"whiff_percent": 25.8,
"swing_percent": 43.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.4182,
"command_and_miss": 0.1514,
"regression_edge": 0.7714,
"xwoba_edge": 1.8,
"barrel_edge": 0.4,
"hard_hit_edge": 2.3429,
"whiff_edge": 0.0143,
"bb_edge": -0.425,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "689147",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4098,
"sample_weight": 0.45,
"run_prevention_factor": 0.9652,
"strikeout_factor": 1.0095,
"walk_factor": 1.0153,
"homer_factor": 0.9191,
"woba_minus_xwoba": 0.027,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "689147",
"espn_id": 4630789,
"player_name": "Orion Kerkering",
"team": "PHI",
"role": "pitcher",
"espn_rank": 84,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 84,
"gp_value": 30.0,
"gp_rank": 64,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.2771,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 27.2,
"ip_rank": 286,
"h_value": 20.0,
"h_rank": 330,
"er_value": 7.0,
"er_rank": 431,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 13.0,
"bb_rank": 227,
"k_value": 31.0,
"k_rank": 239,
"k_per_9_value": 10.084337,
"k_per_9_rank": 22,
"whip_value": 1.1927,
"whip_rank": null,
"war_value": 1.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9843,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9843,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0069,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9636,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0043,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 2,
"H": 6,
"BB": 6,
"SO": 17,
"HR": 0,
"ERA": 1.741935483870968,
"WHIP": 1.1612903225806452,
"K9": 14.806451612903228,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "689147",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.494,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5235,
"prior_weight": 0.4765
},
"role": "pitcher",
"player_id": "689147",
"report_date": "20260618_N",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 4.0,
"SO": 7.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 110.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.8,
"SO": 1.4,
"HR": 0.0,
"BF": 4.8,
"Pitches": 22.0
},
"rates": {
"ERA": 1.6875,
"WHIP": 1.3125,
"ER_per_IP": 0.1875,
"H_per_IP": 0.5625,
"BB_per_IP": 0.75,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 2.0,
"R": 2.0,
"H": 6.0,
"BB": 6.0,
"SO": 17.0,
"HR": 0.0,
"BF": 44.0,
"Pitches": 189.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.6,
"SO": 1.7,
"HR": 0.0,
"BF": 4.4,
"Pitches": 18.9
},
"rates": {
"ERA": 1.7419,
"WHIP": 1.1613,
"ER_per_IP": 0.19355,
"H_per_IP": 0.58065,
"BB_per_IP": 0.58065,
"SO_per_IP": 1.64516,
"HR_per_IP": 0.0
}
},
"season": {
"games": 30,
"totals": {
"IP": 27.2,
"ER": 7.0,
"R": 8.0,
"H": 20.0,
"BB": 13.0,
"SO": 31.0,
"HR": 2.0,
"BF": 119.0,
"Pitches": 495.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2333,
"R": 0.2667,
"H": 0.6667,
"BB": 0.4333,
"SO": 1.0333,
"HR": 0.0667,
"BF": 3.9667,
"Pitches": 16.5
},
"rates": {
"ERA": 2.2771,
"WHIP": 1.1928,
"ER_per_IP": 0.25301,
"H_per_IP": 0.72289,
"BB_per_IP": 0.46988,
"SO_per_IP": 1.12048,
"HR_per_IP": 0.07229
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.345,
"predicted_H": 0.779,
"predicted_BB": 0.505,
"predicted_SO": 1.175,
"predicted_HR": 0.077,
"predicted_ERA": 3.1033,
"predicted_WHIP": 1.284
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5513,
"form_weight": 0.4487,
"form_reliability": 0.5235,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.494,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5235,
"prior_weight": 0.4765
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.345,
"final": 0.1548,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.779,
"final": 0.3495,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.505,
"final": 0.2266,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.175,
"final": 1.0785,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.077,
"final": 0.0345,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.1033,
"final": 3.1033,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.284,
"final": 1.284,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.130 | 0.000 | 0.000 | Hitting_2B | 0.150 | 0.000 | -0.150 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.880 | 3.000 | 4.000 | Hitting_AB | 3.753 | 4.000 | -0.753 | -1.000 |
| predicted_AVG | 0.237 | 0.000 | 0.250 | Hitting_AVG | 0.221 | 0.500 | -0.221 | -0.500 |
| predicted_BB | 0.261 | 1.000 | 0.000 | Hitting_BB | 0.286 | 0.000 | 0.714 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.920 | 0.000 | 1.000 | Hitting_H | 0.828 | 2.000 | -0.828 | -2.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.093 | 0.000 | -0.093 | 0.000 |
| predicted_OBP | 0.293 | 0.250 | 0.250 | Hitting_OBP | 0.278 | 0.500 | -0.028 | -0.250 |
| predicted_R | 0.319 | 0.000 | 0.000 | Hitting_R | 0.322 | 0.000 | -0.322 | 0.000 |
| predicted_RBI | 0.610 | 0.000 | 1.000 | Hitting_RBI | 0.507 | 1.000 | -0.507 | -1.000 |
| predicted_SLG | 0.398 | 0.000 | 0.250 | Hitting_SLG | 0.335 | 0.500 | -0.335 | -0.500 |
| predicted_SO | 0.580 | 0.000 | 1.000 | Hitting_SO | 0.559 | 1.000 | -0.559 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.2610 -> 1.0000 (boost 0.7390, better) |
| Biggest Deboost | predicted_H: 0.9200 -> 0.0000 (deboost -0.9200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4026 -> 0.3916 (deboost -0.0110, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 0.6022 -> 1.0000 (boost 0.3978, worse) | predicted_BB: 0.2388 -> 0.0000 (deboost -0.2388, worse) | AB rounded to 4 (raw=3.88), rates preserved: AVG=0.236 HR/AB=0.041 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.267) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3410 -> 0.0000 (deboost -0.3410, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2375 -> 0.2500 (boost 0.0125, better) | predicted_SLG: 0.3916 -> 0.2500 (deboost -0.1416, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 1 | 4 | 2 | 3 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3916 (boost 0.1416, better) | predicted_AVG: 0.2500 -> 0.2375 (deboost -0.0125, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664761",
"player_name": "Alec Bohm",
"position": "3B",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.13,
"predicted_3B": 0.0,
"predicted_AB": 3.88,
"predicted_AVG": 0.237,
"predicted_BB": 0.261,
"predicted_H": 0.92,
"predicted_HR": 0.15,
"predicted_OBP": 0.293,
"predicted_R": 0.319,
"predicted_RBI": 0.61,
"predicted_SLG": 0.398,
"predicted_SO": 0.58
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1207,
"predicted_3B": 0.0004,
"predicted_AB": 3.848,
"predicted_AVG": 0.2398,
"predicted_BB": 0.2391,
"predicted_H": 0.923,
"predicted_HBP": 0.02,
"predicted_HR": 0.1597,
"predicted_OBP": 0.2896,
"predicted_R": 0.3456,
"predicted_RBI": 0.6425,
"predicted_SLG": 0.4026,
"predicted_SO": 0.6015
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 0.1207,
"delta": -0.0093,
"percent_delta": -0.0715,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.88,
"after": 3.848,
"delta": -0.032,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2398,
"delta": 0.0028,
"percent_delta": 0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.261,
"after": 0.2391,
"delta": -0.0219,
"percent_delta": -0.0839,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 0.923,
"delta": 0.003,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1597,
"delta": 0.0097,
"percent_delta": 0.0647,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2896,
"delta": -0.0034,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.319,
"after": 0.3456,
"delta": 0.0266,
"percent_delta": 0.0834,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 0.6425,
"delta": 0.0325,
"percent_delta": 0.0533,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.4026,
"delta": 0.0046,
"percent_delta": 0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.58,
"after": 0.6015,
"delta": 0.0215,
"percent_delta": 0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1207,
"predicted_3B": 0.0004,
"predicted_AB": 3.848,
"predicted_AVG": 0.2375,
"predicted_BB": 0.2388,
"predicted_H": 0.9139,
"predicted_HBP": 0.02,
"predicted_HR": 0.1572,
"predicted_OBP": 0.2821,
"predicted_R": 0.341,
"predicted_RBI": 0.6339,
"predicted_SLG": 0.3916,
"predicted_SO": 0.6022
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1207,
"after": 0.1207,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.848,
"after": 3.848,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2398,
"after": 0.2375,
"delta": -0.0023,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2391,
"after": 0.2388,
"delta": -0.0003,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.923,
"after": 0.9139,
"delta": -0.0091,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1597,
"after": 0.1572,
"delta": -0.0025,
"percent_delta": -0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2896,
"after": 0.2821,
"delta": -0.0075,
"percent_delta": -0.0259,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3456,
"after": 0.341,
"delta": -0.0046,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6425,
"after": 0.6339,
"delta": -0.0086,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4026,
"after": 0.3916,
"delta": -0.011,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6015,
"after": 0.6022,
"delta": 0.0007,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4026,
"after": 0.3916,
"delta": -0.011,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.88), rates preserved: AVG=0.236 HR/AB=0.041",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1207,
"after": 0.0,
"delta": -0.1207,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.848,
"after": 4.0,
"delta": 0.152,
"percent_delta": 0.0395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2388,
"after": 0.0,
"delta": -0.2388,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9139,
"after": 1.0,
"delta": 0.0861,
"percent_delta": 0.0942,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1572,
"after": 0.0,
"delta": -0.1572,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6339,
"after": 1.0,
"delta": 0.3661,
"percent_delta": 0.5775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6022,
"after": 1.0,
"delta": 0.3978,
"percent_delta": 0.6606,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6022,
"after": 1.0,
"delta": 0.3978,
"percent_delta": 0.6606,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2388,
"after": 0.0,
"delta": -0.2388,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.267)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8667,
"bvp": 0.1333
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.341,
"after": 0.0,
"delta": -0.341,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.341,
"after": 0.0,
"delta": -0.341,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2375,
"after": 0.25,
"delta": 0.0125,
"percent_delta": 0.0526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2821,
"after": 0.25,
"delta": -0.0321,
"percent_delta": -0.1138,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3916,
"after": 0.25,
"delta": -0.1416,
"percent_delta": -0.3616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2375,
"after": 0.25,
"delta": 0.0125,
"percent_delta": 0.0526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3916,
"after": 0.25,
"delta": -0.1416,
"percent_delta": -0.3616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2375,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2821,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3916,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2375,
"delta": -0.0125,
"percent_delta": -0.05,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2821,
"delta": 0.0321,
"percent_delta": 0.1282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3916,
"delta": 0.1416,
"percent_delta": 0.5665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3916,
"delta": 0.1416,
"percent_delta": 0.5665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2375,
"delta": -0.0125,
"percent_delta": -0.05,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.88,
"after": 3.0,
"delta": -0.88,
"percent_delta": -0.2268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2375,
"delta": 0.0005,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.261,
"after": 1.0,
"delta": 0.739,
"percent_delta": 2.8314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 0.0,
"delta": -0.92,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2821,
"delta": -0.0109,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.319,
"after": 0.0,
"delta": -0.319,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 0.0,
"delta": -0.61,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.3916,
"delta": -0.0064,
"percent_delta": -0.0161,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.58,
"after": 0.0,
"delta": -0.58,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.261,
"after": 1.0,
"delta": 0.739,
"percent_delta": 2.8314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.92,
"after": 0.0,
"delta": -0.92,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.130 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.880 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.261 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.319 | - |
| predicted_RBI | 0.610 | - |
| predicted_SLG | 0.398 | - |
| predicted_SO | 0.580 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.121 | -0.009 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.848 | -0.032 |
| predicted_AVG | 0.240 | 0.003 |
| predicted_BB | 0.239 | -0.022 |
| predicted_H | 0.923 | 0.003 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.160 | 0.010 |
| predicted_OBP | 0.290 | -0.003 |
| predicted_R | 0.346 | 0.027 |
| predicted_RBI | 0.642 | 0.032 |
| predicted_SLG | 0.403 | 0.005 |
| predicted_SO | 0.602 | 0.022 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.121 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.848 | 0.000 |
| predicted_AVG | 0.237 | -0.002 |
| predicted_BB | 0.239 | -0.000 |
| predicted_H | 0.914 | -0.009 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.157 | -0.003 |
| predicted_OBP | 0.282 | -0.008 |
| predicted_R | 0.341 | -0.005 |
| predicted_RBI | 0.634 | -0.009 |
| predicted_SLG | 0.392 | -0.011 |
| predicted_SO | 0.602 | 0.001 |
AB rounded to 4 (raw=3.88), rates preserved: AVG=0.236 HR/AB=0.041
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=15.0, weight=0.133, BvP AVG=0.267)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.121 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.152 |
| predicted_AVG | 0.250 | 0.013 |
| predicted_BB | 0.000 | -0.239 |
| predicted_H | 1.000 | 0.086 |
| predicted_HR | 0.000 | -0.157 |
| predicted_OBP | 0.250 | -0.032 |
| predicted_R | 0.000 | -0.341 |
| predicted_RBI | 1.000 | 0.366 |
| predicted_SLG | 0.250 | -0.142 |
| predicted_SO | 1.000 | 0.398 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 5.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 0.000 | 3.000 | 0.2500 | 0.2500 | 0.4000 | 0.2500 | 0.0500 | 0.2000 | 0.0000 | 0.1500 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 1.000 | 0.000 | 3.000 | 11.000 | 5.000 | 2.000 | 7.000 | 0.2821 | 0.3171 | 0.5385 | 0.2821 | 0.0769 | 0.2821 | 0.0513 | 0.1795 |
| season | 0.60 | 69 | - | 255.000 | 58.000 | 9.000 | 0.000 | 9.000 | 38.000 | 22.000 | 18.000 | 40.000 | 0.2275 | 0.2806 | 0.3686 | 0.2275 | 0.0353 | 0.1490 | 0.0706 | 0.1569 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1080 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.8040 |
| predicted_AVG | 0.2437 |
| predicted_BB | 0.2090 |
| predicted_H | 0.9270 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.1730 |
| predicted_OBP | 0.2849 |
| predicted_R | 0.3820 |
| predicted_RBI | 0.6870 |
| predicted_SLG | 0.4089 |
| predicted_SO | 0.6310 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1300 | 0.1080 | 0.1207 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8800 | 3.8040 | 3.8480 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2437 | 0.2398 | model_form_blend |
| predicted_BB | 0.2610 | 0.2090 | 0.2391 | model_form_blend |
| predicted_H | 0.9200 | 0.9270 | 0.9230 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.1500 | 0.1730 | 0.1597 | model_form_blend |
| predicted_OBP | 0.2930 | 0.2849 | 0.2896 | model_form_blend |
| predicted_R | 0.3190 | 0.3820 | 0.3456 | model_form_blend |
| predicted_RBI | 0.6100 | 0.6870 | 0.6425 | model_form_blend |
| predicted_SLG | 0.3980 | 0.4089 | 0.4026 | model_form_blend |
| predicted_SO | 0.5800 | 0.6310 | 0.6015 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 227 |
| Season rows before report date | 227 |
| Report year | 2026 |
| Profile rows used | 69 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.227 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 664761 |
| playerID | 664761 |
| playerName | Alec Bohm |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 14.3 |
| sl_bb_percent | 6.5 |
| sl_woba | 0.286 |
| sl_xwoba | 0.298 |
| sl_xba | 0.248 |
| sl_xslg | 0.367 |
| sl_sweet_spot_percent | 35.6 |
| sl_barrel_batted_rate | 4.6 |
| sl_hard_hit_percent | 40.6 |
| sl_exit_velocity_avg | 89.7 |
| sl_launch_angle_avg | 10.3 |
| sl_whiff_percent | 16.9 |
| sl_swing_percent | 44.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.167 | 0.000 | 0.000 | Hitting_2B | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.750 | 4.000 | 4.000 | Hitting_AB | 3.594 | 3.000 | 0.406 | 1.000 |
| predicted_AVG | 0.229 | 0.500 | 0.250 | Hitting_AVG | 0.272 | 0.333 | 0.228 | 0.167 |
| predicted_BB | 0.653 | 0.000 | 1.000 | Hitting_BB | 0.667 | 1.000 | -0.667 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.036 | 0.000 | -0.036 | 0.000 |
| predicted_H | 0.860 | 2.000 | 1.000 | Hitting_H | 0.976 | 1.000 | 1.024 | 1.000 |
| predicted_HR | 0.160 | 1.000 | 0.000 | Hitting_HR | 0.237 | 0.000 | 0.763 | 1.000 |
| predicted_OBP | 0.326 | 0.500 | 0.400 | Hitting_OBP | 0.381 | 0.500 | 0.119 | 0.000 |
| predicted_R | 0.667 | 1.000 | 1.000 | Hitting_R | 0.651 | 1.000 | 0.349 | 0.000 |
| predicted_RBI | 0.530 | 1.000 | 1.000 | Hitting_RBI | 0.618 | 0.000 | 0.382 | 1.000 |
| predicted_SLG | 0.407 | 1.250 | 0.250 | Hitting_SLG | 0.530 | 0.333 | 0.720 | 0.917 |
| predicted_SO | 0.806 | 0.000 | 1.000 | Hitting_SO | 0.767 | 2.000 | -0.767 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 7 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 0.8600 -> 2.0000 (boost 1.1400, better) |
| Biggest Deboost | predicted_SO: 0.8060 -> 0.0000 (deboost -0.8060, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 0 | 4 | 0 | 4 | - | predicted_AB: 3.7500 -> 3.6085 (deboost -0.1415, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_OBP: 0.3282 -> 0.3405 (boost 0.0123, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 5 | 2 | 4 | 3 | predicted_RBI: 0.5074 -> 1.0000 (boost 0.4926, better) | predicted_2B: 0.1568 -> 0.0000 (deboost -0.1568, worse) | AB rounded to 4 (raw=3.75), rates preserved: AVG=0.209 HR/AB=0.040 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.368) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6747 -> 1.0000 (boost 0.3253, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3405 -> 0.4000 (boost 0.0595, better) | predicted_SLG: 0.3919 -> 0.2500 (deboost -0.1419, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 2 | 2 | 3 | 1 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3919 (boost 0.1419, better) | predicted_OBP: 0.4000 -> 0.3405 (deboost -0.0595, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "547180",
"player_name": "Bryce Harper",
"position": "1B",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.167,
"predicted_3B": 0.014,
"predicted_AB": 3.75,
"predicted_AVG": 0.229,
"predicted_BB": 0.653,
"predicted_H": 0.86,
"predicted_HR": 0.16,
"predicted_OBP": 0.326,
"predicted_R": 0.667,
"predicted_RBI": 0.53,
"predicted_SLG": 0.407,
"predicted_SO": 0.806
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1568,
"predicted_3B": 0.0119,
"predicted_AB": 3.6085,
"predicted_AVG": 0.2189,
"predicted_BB": 0.6742,
"predicted_H": 0.7926,
"predicted_HBP": 0.003,
"predicted_HR": 0.152,
"predicted_OBP": 0.3282,
"predicted_R": 0.6839,
"predicted_RBI": 0.5143,
"predicted_SLG": 0.394,
"predicted_SO": 0.8242
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.1568,
"delta": -0.0102,
"percent_delta": -0.0611,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.75,
"after": 3.6085,
"delta": -0.1415,
"percent_delta": -0.0377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2189,
"delta": -0.0101,
"percent_delta": -0.0441,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.653,
"after": 0.6742,
"delta": 0.0212,
"percent_delta": 0.0325,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.7926,
"delta": -0.0674,
"percent_delta": -0.0784,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.152,
"delta": -0.008,
"percent_delta": -0.05,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3282,
"delta": 0.0022,
"percent_delta": 0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.6839,
"delta": 0.0169,
"percent_delta": 0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.5143,
"delta": -0.0157,
"percent_delta": -0.0296,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.394,
"delta": -0.013,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.806,
"after": 0.8242,
"delta": 0.0182,
"percent_delta": 0.0226,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.75,
"after": 3.6085,
"delta": -0.1415,
"percent_delta": -0.0377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 72
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1568,
"predicted_3B": 0.0119,
"predicted_AB": 3.6085,
"predicted_AVG": 0.2175,
"predicted_BB": 0.6735,
"predicted_H": 0.7848,
"predicted_HBP": 0.003,
"predicted_HR": 0.1496,
"predicted_OBP": 0.3405,
"predicted_R": 0.6747,
"predicted_RBI": 0.5074,
"predicted_SLG": 0.3919,
"predicted_SO": 0.8251
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1568,
"after": 0.1568,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6085,
"after": 3.6085,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2189,
"after": 0.2175,
"delta": -0.0014,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6742,
"after": 0.6735,
"delta": -0.0007,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7926,
"after": 0.7848,
"delta": -0.0078,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.003,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.152,
"after": 0.1496,
"delta": -0.0024,
"percent_delta": -0.0158,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3282,
"after": 0.3405,
"delta": 0.0123,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6839,
"after": 0.6747,
"delta": -0.0092,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5143,
"after": 0.5074,
"delta": -0.0069,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.394,
"after": 0.3919,
"delta": -0.0021,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8242,
"after": 0.8251,
"delta": 0.0009,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3282,
"after": 0.3405,
"delta": 0.0123,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.75), rates preserved: AVG=0.209 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1568,
"after": 0.0,
"delta": -0.1568,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6085,
"after": 4.0,
"delta": 0.3915,
"percent_delta": 0.1085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6735,
"after": 1.0,
"delta": 0.3265,
"percent_delta": 0.4848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7848,
"after": 1.0,
"delta": 0.2152,
"percent_delta": 0.2742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.0,
"delta": -0.003,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1496,
"after": 0.0,
"delta": -0.1496,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5074,
"after": 1.0,
"delta": 0.4926,
"percent_delta": 0.9708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8251,
"after": 1.0,
"delta": 0.1749,
"percent_delta": 0.212,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 5,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5074,
"after": 1.0,
"delta": 0.4926,
"percent_delta": 0.9708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.1568,
"after": 0.0,
"delta": -0.1568,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.368)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8449,
"bvp": 0.1551
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6747,
"after": 1.0,
"delta": 0.3253,
"percent_delta": 0.4821,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6747,
"after": 1.0,
"delta": 0.3253,
"percent_delta": 0.4821,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2175,
"after": 0.25,
"delta": 0.0325,
"percent_delta": 0.1494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3405,
"after": 0.4,
"delta": 0.0595,
"percent_delta": 0.1747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3919,
"after": 0.25,
"delta": -0.1419,
"percent_delta": -0.3621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3405,
"after": 0.4,
"delta": 0.0595,
"percent_delta": 0.1747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3919,
"after": 0.25,
"delta": -0.1419,
"percent_delta": -0.3621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2175,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3405,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3919,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2175,
"delta": -0.0325,
"percent_delta": -0.1301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3405,
"delta": -0.0595,
"percent_delta": -0.1486,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3919,
"delta": 0.1419,
"percent_delta": 0.5677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3919,
"delta": 0.1419,
"percent_delta": 0.5677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3405,
"delta": -0.0595,
"percent_delta": -0.1486,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.75,
"after": 4.0,
"delta": 0.25,
"percent_delta": 0.0667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2175,
"delta": -0.0115,
"percent_delta": -0.0502,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.653,
"after": 0.0,
"delta": -0.653,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 2.0,
"delta": 1.14,
"percent_delta": 1.3256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3405,
"delta": 0.0145,
"percent_delta": 0.0445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 1.0,
"delta": 0.333,
"percent_delta": 0.4993,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 1.0,
"delta": 0.47,
"percent_delta": 0.8868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.407,
"after": 0.3919,
"delta": -0.0151,
"percent_delta": -0.0371,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.806,
"after": 0.0,
"delta": -0.806,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.86,
"after": 2.0,
"delta": 1.14,
"percent_delta": 1.3256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.806,
"after": 0.0,
"delta": -0.806,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.167 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.750 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.653 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.407 | - |
| predicted_SO | 0.806 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.157 | -0.010 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 3.608 | -0.142 |
| predicted_AVG | 0.219 | -0.010 |
| predicted_BB | 0.674 | 0.021 |
| predicted_H | 0.793 | -0.067 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.152 | -0.008 |
| predicted_OBP | 0.328 | 0.002 |
| predicted_R | 0.684 | 0.017 |
| predicted_RBI | 0.514 | -0.016 |
| predicted_SLG | 0.394 | -0.013 |
| predicted_SO | 0.824 | 0.018 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.157 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 3.608 | 0.000 |
| predicted_AVG | 0.217 | -0.001 |
| predicted_BB | 0.673 | -0.001 |
| predicted_H | 0.785 | -0.008 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.150 | -0.002 |
| predicted_OBP | 0.341 | 0.012 |
| predicted_R | 0.675 | -0.009 |
| predicted_RBI | 0.507 | -0.007 |
| predicted_SLG | 0.392 | -0.002 |
| predicted_SO | 0.825 | 0.001 |
AB rounded to 4 (raw=3.75), rates preserved: AVG=0.209 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.368)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.157 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | 0.392 |
| predicted_AVG | 0.250 | 0.033 |
| predicted_BB | 1.000 | 0.327 |
| predicted_H | 1.000 | 0.215 |
| predicted_HR | 0.000 | -0.150 |
| predicted_OBP | 0.400 | 0.059 |
| predicted_R | 1.000 | 0.325 |
| predicted_RBI | 1.000 | 0.493 |
| predicted_SLG | 0.250 | -0.142 |
| predicted_SO | 1.000 | 0.175 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 5.000 | 0.0625 | 0.2273 | 0.0625 | 0.0625 | 0.0000 | 0.1250 | 0.2500 | 0.3125 |
| last_10 | 0.20 | 10 | - | 32.000 | 6.000 | 2.000 | 0.000 | 1.000 | 4.000 | 10.000 | 9.000 | 8.000 | 0.1875 | 0.3488 | 0.3438 | 0.1875 | 0.0312 | 0.1250 | 0.2812 | 0.2500 |
| season | 0.60 | 72 | - | 251.000 | 63.000 | 12.000 | 1.000 | 15.000 | 40.000 | 48.000 | 47.000 | 58.000 | 0.2510 | 0.3630 | 0.4861 | 0.2510 | 0.0598 | 0.1594 | 0.1872 | 0.2311 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1430 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.4160 |
| predicted_AVG | 0.2051 |
| predicted_BB | 0.7030 |
| predicted_H | 0.7010 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.1410 |
| predicted_OBP | 0.3313 |
| predicted_R | 0.7070 |
| predicted_RBI | 0.4930 |
| predicted_SLG | 0.3762 |
| predicted_SO | 0.8490 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.1430 | 0.1568 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 3.7500 | 3.4160 | 3.6085 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2051 | 0.2189 | model_form_blend |
| predicted_BB | 0.6530 | 0.7030 | 0.6742 | model_form_blend |
| predicted_H | 0.8600 | 0.7010 | 0.7926 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1600 | 0.1410 | 0.1520 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3313 | 0.3282 | model_form_blend |
| predicted_R | 0.6670 | 0.7070 | 0.6839 | model_form_blend |
| predicted_RBI | 0.5300 | 0.4930 | 0.5143 | model_form_blend |
| predicted_SLG | 0.4070 | 0.3762 | 0.3940 | model_form_blend |
| predicted_SO | 0.8060 | 0.8490 | 0.8242 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 249 |
| Season rows before report date | 249 |
| Report year | 2026 |
| Profile rows used | 72 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.251 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 547180 |
| playerID | 547180 |
| playerName | Bryce Harper |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.9 |
| sl_bb_percent | 15.3 |
| sl_woba | 0.365 |
| sl_xwoba | 0.405 |
| sl_xba | 0.284 |
| sl_xslg | 0.544 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 12.9 |
| sl_hard_hit_percent | 44.6 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 30.1 |
| sl_swing_percent | 50.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.129 | 0.000 | 0.000 | Hitting_2B | 0.195 | 0.000 | -0.195 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.170 | 4.000 | 4.000 | Hitting_AB | 3.887 | 4.000 | 0.113 | 0.000 |
| predicted_AVG | 0.240 | 0.000 | 0.250 | Hitting_AVG | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_BB | 0.629 | 0.000 | 1.000 | Hitting_BB | 0.615 | 0.000 | -0.615 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.000 | 0.000 | 1.000 | Hitting_H | 0.965 | 0.000 | -0.965 | 0.000 |
| predicted_HR | 0.260 | 0.000 | 0.000 | Hitting_HR | 0.393 | 0.000 | -0.393 | 0.000 |
| predicted_OBP | 0.358 | 0.000 | 0.400 | Hitting_OBP | 0.362 | 0.000 | -0.362 | 0.000 |
| predicted_R | 0.614 | 0.000 | 1.000 | Hitting_R | 0.685 | 0.000 | -0.685 | 0.000 |
| predicted_RBI | 0.500 | 0.000 | 0.000 | Hitting_RBI | 0.735 | 0.000 | -0.735 | 0.000 |
| predicted_SLG | 0.473 | 0.000 | 0.250 | Hitting_SLG | 0.612 | 0.000 | -0.612 | 0.000 |
| predicted_SO | 1.571 | 1.000 | 1.000 | Hitting_SO | 1.541 | 3.000 | -0.541 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AVG: 0.2400 -> 0.2463 (boost 0.0063, better) |
| Biggest Deboost | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_SLG: 0.4730 -> 0.4865 (boost 0.0135, better) | predicted_AB: 4.1700 -> 4.0108 (deboost -0.1592, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3657 -> 0.3505 (deboost -0.0152, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 2 | 3 | predicted_BB: 0.6432 -> 1.0000 (boost 0.3568, better) | predicted_SO: 1.5515 -> 1.0000 (deboost -0.5515, better) | AB rounded to 4 (raw=4.17), rates preserved: AVG=0.237 HR/AB=0.063 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.154) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5765 -> 1.0000 (boost 0.4235, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3505 -> 0.4000 (boost 0.0495, better) | predicted_SLG: 0.4751 -> 0.2500 (deboost -0.2251, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 0 | 3 | 0 | 3 | - | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4751 (boost 0.2251, better) | predicted_OBP: 0.4000 -> 0.3505 (deboost -0.0495, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656941",
"player_name": "Kyle Schwarber",
"position": "DH",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.129,
"predicted_3B": 0.014,
"predicted_AB": 4.17,
"predicted_AVG": 0.24,
"predicted_BB": 0.629,
"predicted_H": 1.0,
"predicted_HR": 0.26,
"predicted_OBP": 0.358,
"predicted_R": 0.614,
"predicted_RBI": 0.5,
"predicted_SLG": 0.473,
"predicted_SO": 1.571
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1107,
"predicted_3B": 0.0119,
"predicted_AB": 4.0108,
"predicted_AVG": 0.2494,
"predicted_BB": 0.6439,
"predicted_H": 0.9979,
"predicted_HBP": 0.034,
"predicted_HR": 0.2651,
"predicted_OBP": 0.3657,
"predicted_R": 0.5843,
"predicted_RBI": 0.4843,
"predicted_SLG": 0.4865,
"predicted_SO": 1.5498
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.129,
"after": 0.1107,
"delta": -0.0183,
"percent_delta": -0.1419,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.17,
"after": 4.0108,
"delta": -0.1592,
"percent_delta": -0.0382,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2494,
"delta": 0.0094,
"percent_delta": 0.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.629,
"after": 0.6439,
"delta": 0.0149,
"percent_delta": 0.0237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.9979,
"delta": -0.0021,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.26,
"after": 0.2651,
"delta": 0.0051,
"percent_delta": 0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3657,
"delta": 0.0077,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.614,
"after": 0.5843,
"delta": -0.0297,
"percent_delta": -0.0484,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.4843,
"delta": -0.0157,
"percent_delta": -0.0314,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4865,
"delta": 0.0135,
"percent_delta": 0.0285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.571,
"after": 1.5498,
"delta": -0.0212,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4865,
"delta": 0.0135,
"percent_delta": 0.0285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.17,
"after": 4.0108,
"delta": -0.1592,
"percent_delta": -0.0382,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1107,
"predicted_3B": 0.0119,
"predicted_AB": 4.0108,
"predicted_AVG": 0.2463,
"predicted_BB": 0.6432,
"predicted_H": 0.988,
"predicted_HBP": 0.034,
"predicted_HR": 0.261,
"predicted_OBP": 0.3505,
"predicted_R": 0.5765,
"predicted_RBI": 0.4778,
"predicted_SLG": 0.4751,
"predicted_SO": 1.5515
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1107,
"after": 0.1107,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0108,
"after": 4.0108,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2494,
"after": 0.2463,
"delta": -0.0031,
"percent_delta": -0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6439,
"after": 0.6432,
"delta": -0.0007,
"percent_delta": -0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9979,
"after": 0.988,
"delta": -0.0099,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.034,
"after": 0.034,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2651,
"after": 0.261,
"delta": -0.0041,
"percent_delta": -0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3657,
"after": 0.3505,
"delta": -0.0152,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5843,
"after": 0.5765,
"delta": -0.0078,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4843,
"after": 0.4778,
"delta": -0.0065,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4865,
"after": 0.4751,
"delta": -0.0114,
"percent_delta": -0.0234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5498,
"after": 1.5515,
"delta": 0.0017,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3657,
"after": 0.3505,
"delta": -0.0152,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.17), rates preserved: AVG=0.237 HR/AB=0.063",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1107,
"after": 0.0,
"delta": -0.1107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0108,
"after": 4.0,
"delta": -0.0108,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6432,
"after": 1.0,
"delta": 0.3568,
"percent_delta": 0.5547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.988,
"after": 1.0,
"delta": 0.012,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.034,
"after": 0.0,
"delta": -0.034,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.261,
"after": 0.0,
"delta": -0.261,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4778,
"after": 0.0,
"delta": -0.4778,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5515,
"after": 1.0,
"delta": -0.5515,
"percent_delta": -0.3555,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6432,
"after": 1.0,
"delta": 0.3568,
"percent_delta": 0.5547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5515,
"after": 1.0,
"delta": -0.5515,
"percent_delta": -0.3555,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.154)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8791,
"bvp": 0.1209
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5765,
"after": 1.0,
"delta": 0.4235,
"percent_delta": 0.7346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5765,
"after": 1.0,
"delta": 0.4235,
"percent_delta": 0.7346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2463,
"after": 0.25,
"delta": 0.0037,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3505,
"after": 0.4,
"delta": 0.0495,
"percent_delta": 0.1412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4751,
"after": 0.25,
"delta": -0.2251,
"percent_delta": -0.4738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3505,
"after": 0.4,
"delta": 0.0495,
"percent_delta": 0.1412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4751,
"after": 0.25,
"delta": -0.2251,
"percent_delta": -0.4738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2463,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3505,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4751,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2463,
"delta": -0.0037,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3505,
"delta": -0.0495,
"percent_delta": -0.1238,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4751,
"delta": 0.2251,
"percent_delta": 0.9003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4751,
"delta": 0.2251,
"percent_delta": 0.9003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3505,
"delta": -0.0495,
"percent_delta": -0.1238,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.129,
"after": 0.0,
"delta": -0.129,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.17,
"after": 4.0,
"delta": -0.17,
"percent_delta": -0.0408,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2463,
"delta": 0.0063,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.629,
"after": 0.0,
"delta": -0.629,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3505,
"delta": -0.0075,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.614,
"after": 0.0,
"delta": -0.614,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4751,
"delta": 0.0021,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.571,
"after": 1.0,
"delta": -0.571,
"percent_delta": -0.3635,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2463,
"delta": 0.0063,
"percent_delta": 0.0263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.170 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.629 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.260 | - |
| predicted_OBP | 0.358 | - |
| predicted_R | 0.614 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.473 | - |
| predicted_SO | 1.571 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | -0.018 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 4.011 | -0.159 |
| predicted_AVG | 0.249 | 0.009 |
| predicted_BB | 0.644 | 0.015 |
| predicted_H | 0.998 | -0.002 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.265 | 0.005 |
| predicted_OBP | 0.366 | 0.008 |
| predicted_R | 0.584 | -0.030 |
| predicted_RBI | 0.484 | -0.016 |
| predicted_SLG | 0.486 | 0.014 |
| predicted_SO | 1.550 | -0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 4.011 | 0.000 |
| predicted_AVG | 0.246 | -0.003 |
| predicted_BB | 0.643 | -0.001 |
| predicted_H | 0.988 | -0.010 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.261 | -0.004 |
| predicted_OBP | 0.350 | -0.015 |
| predicted_R | 0.577 | -0.008 |
| predicted_RBI | 0.478 | -0.007 |
| predicted_SLG | 0.475 | -0.011 |
| predicted_SO | 1.552 | 0.002 |
AB rounded to 4 (raw=4.17), rates preserved: AVG=0.237 HR/AB=0.063
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.154)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.111 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | -0.011 |
| predicted_AVG | 0.250 | 0.004 |
| predicted_BB | 1.000 | 0.357 |
| predicted_H | 1.000 | 0.012 |
| predicted_HR | 0.000 | -0.261 |
| predicted_OBP | 0.400 | 0.050 |
| predicted_R | 1.000 | 0.423 |
| predicted_RBI | 0.000 | -0.478 |
| predicted_SLG | 0.250 | -0.225 |
| predicted_SO | 1.000 | -0.552 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 6.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 4.000 | 8.000 | 0.3158 | 0.4348 | 0.4737 | 0.3158 | 0.0526 | 0.0526 | 0.2105 | 0.4210 |
| last_10 | 0.20 | 10 | - | 37.000 | 10.000 | 0.000 | 0.000 | 2.000 | 3.000 | 5.000 | 8.000 | 16.000 | 0.2703 | 0.4000 | 0.4324 | 0.2703 | 0.0541 | 0.0811 | 0.2162 | 0.4324 |
| season | 0.60 | 70 | - | 267.000 | 65.000 | 9.000 | 1.000 | 24.000 | 42.000 | 43.000 | 44.000 | 110.000 | 0.2434 | 0.3587 | 0.5543 | 0.2434 | 0.0899 | 0.1573 | 0.1648 | 0.4120 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0860 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.7950 |
| predicted_AVG | 0.2621 |
| predicted_BB | 0.6640 |
| predicted_H | 0.9950 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.2720 |
| predicted_OBP | 0.3762 |
| predicted_R | 0.5440 |
| predicted_RBI | 0.4630 |
| predicted_SLG | 0.5047 |
| predicted_SO | 1.5210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1290 | 0.0860 | 0.1107 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 4.1700 | 3.7950 | 4.0108 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2621 | 0.2494 | model_form_blend |
| predicted_BB | 0.6290 | 0.6640 | 0.6439 | model_form_blend |
| predicted_H | 1.0000 | 0.9950 | 0.9979 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.2600 | 0.2720 | 0.2651 | model_form_blend |
| predicted_OBP | 0.3580 | 0.3762 | 0.3657 | model_form_blend |
| predicted_R | 0.6140 | 0.5440 | 0.5843 | model_form_blend |
| predicted_RBI | 0.5000 | 0.4630 | 0.4843 | model_form_blend |
| predicted_SLG | 0.4730 | 0.5047 | 0.4865 | model_form_blend |
| predicted_SO | 1.5710 | 1.5210 | 1.5498 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 257 |
| Season rows before report date | 257 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.243 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 656941 |
| playerID | 656941 |
| playerName | Kyle Schwarber |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 34.5 |
| sl_bb_percent | 14.4 |
| sl_woba | 0.396 |
| sl_xwoba | 0.377 |
| sl_xba | 0.24 |
| sl_xslg | 0.522 |
| sl_sweet_spot_percent | 39.6 |
| sl_barrel_batted_rate | 20.9 |
| sl_hard_hit_percent | 50.9 |
| sl_exit_velocity_avg | 93.0 |
| sl_launch_angle_avg | 21.9 |
| sl_whiff_percent | 34.4 |
| sl_swing_percent | 43.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.171 | 0.000 | 0.000 | Hitting_2B | 0.171 | 1.000 | -0.171 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.670 | 4.000 | 5.000 | Hitting_AB | 4.279 | 5.000 | -0.279 | -1.000 |
| predicted_AVG | 0.219 | 0.250 | 0.200 | Hitting_AVG | 0.231 | 0.600 | 0.019 | -0.350 |
| predicted_BB | 0.271 | 0.000 | 0.000 | Hitting_BB | 0.283 | 0.000 | -0.283 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_H | 1.020 | 1.000 | 1.000 | Hitting_H | 0.988 | 3.000 | 0.012 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.132 | 0.000 | -0.132 | 0.000 |
| predicted_OBP | 0.281 | 0.250 | 0.200 | Hitting_OBP | 0.278 | 0.600 | -0.028 | -0.350 |
| predicted_R | 0.600 | 0.000 | 1.000 | Hitting_R | 0.671 | 1.000 | -0.671 | -1.000 |
| predicted_RBI | 0.310 | 0.000 | 0.000 | Hitting_RBI | 0.353 | 0.000 | -0.353 | 0.000 |
| predicted_SLG | 0.344 | 0.250 | 0.200 | Hitting_SLG | 0.363 | 0.800 | -0.113 | -0.550 |
| predicted_SO | 0.986 | 1.000 | 1.000 | Hitting_SO | 0.992 | 1.000 | 0.008 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 8 |
| Better Metrics | 0 |
| Worse Metrics | 8 |
| Biggest Boost | - |
| Biggest Deboost | predicted_AB: 4.6700 -> 4.0000 (deboost -0.6700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 0 | 4 | predicted_SO: 0.9860 -> 1.0365 (boost 0.0505, worse) | predicted_AB: 4.6700 -> 4.4514 (deboost -0.2186, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.2755 -> 0.2577 (deboost -0.0178, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 1 | 5 | predicted_AB: 4.4514 -> 5.0000 (boost 0.5486, better) | predicted_RBI: 0.2644 -> 0.0000 (deboost -0.2644, worse) | AB rounded to 5 (raw=4.67), rates preserved: AVG=0.207 HR/AB=0.018 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5429 -> 1.0000 (boost 0.4571, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3153 -> 0.2000 (deboost -0.1153, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 0 | 2 | 0 | 2 | - | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3153 (boost 0.1153, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "607208",
"player_name": "Trea Turner",
"position": "SS",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.171,
"predicted_3B": 0.0,
"predicted_AB": 4.67,
"predicted_AVG": 0.219,
"predicted_BB": 0.271,
"predicted_H": 1.02,
"predicted_HR": 0.1,
"predicted_OBP": 0.281,
"predicted_R": 0.6,
"predicted_RBI": 0.31,
"predicted_SLG": 0.344,
"predicted_SO": 0.986
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1842,
"predicted_3B": 0.0004,
"predicted_AB": 4.4514,
"predicted_AVG": 0.2192,
"predicted_BB": 0.246,
"predicted_H": 0.9742,
"predicted_HBP": 0.065,
"predicted_HR": 0.086,
"predicted_OBP": 0.2755,
"predicted_R": 0.5503,
"predicted_RBI": 0.268,
"predicted_SLG": 0.3325,
"predicted_SO": 1.0365
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.171,
"after": 0.1842,
"delta": 0.0132,
"percent_delta": 0.0772,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.67,
"after": 4.4514,
"delta": -0.2186,
"percent_delta": -0.0468,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.2192,
"delta": 0.0002,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.271,
"after": 0.246,
"delta": -0.025,
"percent_delta": -0.0923,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 0.9742,
"delta": -0.0458,
"percent_delta": -0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.086,
"delta": -0.014,
"percent_delta": -0.14,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2755,
"delta": -0.0055,
"percent_delta": -0.0196,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6,
"after": 0.5503,
"delta": -0.0497,
"percent_delta": -0.0828,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 0.268,
"delta": -0.042,
"percent_delta": -0.1355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.344,
"after": 0.3325,
"delta": -0.0115,
"percent_delta": -0.0334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.986,
"after": 1.0365,
"delta": 0.0505,
"percent_delta": 0.0512,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.986,
"after": 1.0365,
"delta": 0.0505,
"percent_delta": 0.0512,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.67,
"after": 4.4514,
"delta": -0.2186,
"percent_delta": -0.0468,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1842,
"predicted_3B": 0.0004,
"predicted_AB": 4.4514,
"predicted_AVG": 0.2167,
"predicted_BB": 0.2457,
"predicted_H": 0.9646,
"predicted_HBP": 0.065,
"predicted_HR": 0.0847,
"predicted_OBP": 0.2577,
"predicted_R": 0.5429,
"predicted_RBI": 0.2644,
"predicted_SLG": 0.3153,
"predicted_SO": 1.0376
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1842,
"after": 0.1842,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4514,
"after": 4.4514,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2192,
"after": 0.2167,
"delta": -0.0025,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.246,
"after": 0.2457,
"delta": -0.0003,
"percent_delta": -0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9742,
"after": 0.9646,
"delta": -0.0096,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.065,
"after": 0.065,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.086,
"after": 0.0847,
"delta": -0.0013,
"percent_delta": -0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2755,
"after": 0.2577,
"delta": -0.0178,
"percent_delta": -0.0646,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5503,
"after": 0.5429,
"delta": -0.0074,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.268,
"after": 0.2644,
"delta": -0.0036,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3325,
"after": 0.3153,
"delta": -0.0172,
"percent_delta": -0.0517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0365,
"after": 1.0376,
"delta": 0.0011,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2755,
"after": 0.2577,
"delta": -0.0178,
"percent_delta": -0.0646,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.67), rates preserved: AVG=0.207 HR/AB=0.018",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1842,
"after": 0.0,
"delta": -0.1842,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4514,
"after": 5.0,
"delta": 0.5486,
"percent_delta": 0.1232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2457,
"after": 0.0,
"delta": -0.2457,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9646,
"after": 1.0,
"delta": 0.0354,
"percent_delta": 0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.065,
"after": 0.0,
"delta": -0.065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0847,
"after": 0.0,
"delta": -0.0847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2644,
"after": 0.0,
"delta": -0.2644,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0376,
"after": 1.0,
"delta": -0.0376,
"percent_delta": -0.0362,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.4514,
"after": 5.0,
"delta": 0.5486,
"percent_delta": 0.1232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2644,
"after": 0.0,
"delta": -0.2644,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.333)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8353,
"bvp": 0.1647
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5429,
"after": 1.0,
"delta": 0.4571,
"percent_delta": 0.842,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5429,
"after": 1.0,
"delta": 0.4571,
"percent_delta": 0.842,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.2,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2167,
"after": 0.2,
"delta": -0.0167,
"percent_delta": -0.0771,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2577,
"after": 0.2,
"delta": -0.0577,
"percent_delta": -0.2239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3153,
"after": 0.2,
"delta": -0.1153,
"percent_delta": -0.3657,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3153,
"after": 0.2,
"delta": -0.1153,
"percent_delta": -0.3657,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2167,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2577,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3153,
"predicted_SO": 1.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2167,
"delta": 0.0167,
"percent_delta": 0.0834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2,
"after": 0.2577,
"delta": 0.0577,
"percent_delta": 0.2883,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.3153,
"delta": 0.1153,
"percent_delta": 0.5765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.2,
"after": 0.3153,
"delta": 0.1153,
"percent_delta": 0.5765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.171,
"after": 0.0,
"delta": -0.171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.67,
"after": 4.0,
"delta": -0.67,
"percent_delta": -0.1435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.219,
"after": 0.2167,
"delta": -0.0023,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.271,
"after": 0.0,
"delta": -0.271,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0,
"delta": -0.02,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2577,
"delta": -0.0233,
"percent_delta": -0.0829,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.31,
"after": 0.0,
"delta": -0.31,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.344,
"after": 0.3153,
"delta": -0.0287,
"percent_delta": -0.0834,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.986,
"after": 1.0,
"delta": 0.014,
"percent_delta": 0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 0,
"deboosted_metrics": 8,
"better_metrics": 0,
"worse_metrics": 8,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.67,
"after": 4.0,
"delta": -0.67,
"percent_delta": -0.1435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.171 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.670 | - |
| predicted_AVG | 0.219 | - |
| predicted_BB | 0.271 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.281 | - |
| predicted_R | 0.600 | - |
| predicted_RBI | 0.310 | - |
| predicted_SLG | 0.344 | - |
| predicted_SO | 0.986 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.184 | 0.013 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.451 | -0.219 |
| predicted_AVG | 0.219 | 0.000 |
| predicted_BB | 0.246 | -0.025 |
| predicted_H | 0.974 | -0.046 |
| predicted_HBP | 0.065 | - |
| predicted_HR | 0.086 | -0.014 |
| predicted_OBP | 0.276 | -0.006 |
| predicted_R | 0.550 | -0.050 |
| predicted_RBI | 0.268 | -0.042 |
| predicted_SLG | 0.333 | -0.011 |
| predicted_SO | 1.036 | 0.050 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.184 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.451 | 0.000 |
| predicted_AVG | 0.217 | -0.003 |
| predicted_BB | 0.246 | -0.000 |
| predicted_H | 0.965 | -0.010 |
| predicted_HBP | 0.065 | 0.000 |
| predicted_HR | 0.085 | -0.001 |
| predicted_OBP | 0.258 | -0.018 |
| predicted_R | 0.543 | -0.007 |
| predicted_RBI | 0.264 | -0.004 |
| predicted_SLG | 0.315 | -0.017 |
| predicted_SO | 1.038 | 0.001 |
AB rounded to 5 (raw=4.67), rates preserved: AVG=0.207 HR/AB=0.018
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 5.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=21.0, weight=0.165, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.184 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | 0.549 |
| predicted_AVG | 0.200 | -0.017 |
| predicted_BB | 0.000 | -0.246 |
| predicted_H | 1.000 | 0.035 |
| predicted_HR | 0.000 | -0.085 |
| predicted_OBP | 0.200 | -0.058 |
| predicted_R | 1.000 | 0.457 |
| predicted_RBI | 0.000 | -0.264 |
| predicted_SLG | 0.200 | -0.115 |
| predicted_SO | 1.000 | -0.038 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 7.000 | 0.1905 | 0.2273 | 0.2381 | 0.1905 | 0.0000 | 0.0000 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 10 | - | 42.000 | 9.000 | 3.000 | 0.000 | 0.000 | 0.000 | 4.000 | 2.000 | 13.000 | 0.2143 | 0.2667 | 0.2857 | 0.2143 | 0.0000 | 0.0000 | 0.0476 | 0.3095 |
| season | 0.60 | 70 | - | 292.000 | 66.000 | 12.000 | 0.000 | 7.000 | 21.000 | 42.000 | 19.000 | 69.000 | 0.2260 | 0.2748 | 0.3390 | 0.2260 | 0.0240 | 0.0719 | 0.0651 | 0.2363 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2020 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.1550 |
| predicted_AVG | 0.2195 |
| predicted_BB | 0.2120 |
| predicted_H | 0.9120 |
| predicted_HBP | 0.0650 |
| predicted_HR | 0.0670 |
| predicted_OBP | 0.2680 |
| predicted_R | 0.4830 |
| predicted_RBI | 0.2110 |
| predicted_SLG | 0.3170 |
| predicted_SO | 1.1050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1710 | 0.2020 | 0.1842 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.6700 | 4.1550 | 4.4514 | model_form_blend |
| predicted_AVG | 0.2190 | 0.2195 | 0.2192 | model_form_blend |
| predicted_BB | 0.2710 | 0.2120 | 0.2460 | model_form_blend |
| predicted_H | 1.0200 | 0.9120 | 0.9742 | model_form_blend |
| predicted_HBP | - | 0.0650 | 0.0650 | form_only |
| predicted_HR | 0.1000 | 0.0670 | 0.0860 | model_form_blend |
| predicted_OBP | 0.2810 | 0.2680 | 0.2755 | model_form_blend |
| predicted_R | 0.6000 | 0.4830 | 0.5503 | model_form_blend |
| predicted_RBI | 0.3100 | 0.2110 | 0.2680 | model_form_blend |
| predicted_SLG | 0.3440 | 0.3170 | 0.3325 | model_form_blend |
| predicted_SO | 0.9860 | 1.1050 | 1.0365 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 258 |
| Season rows before report date | 258 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.6 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 607208 |
| playerID | 607208 |
| playerName | Trea Turner |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.6 |
| sl_bb_percent | 6.3 |
| sl_woba | 0.271 |
| sl_xwoba | 0.28 |
| sl_xba | 0.233 |
| sl_xslg | 0.347 |
| sl_sweet_spot_percent | 32.9 |
| sl_barrel_batted_rate | 4.9 |
| sl_hard_hit_percent | 38.2 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 9.9 |
| sl_whiff_percent | 27.9 |
| sl_swing_percent | 51.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.176 | 0.000 | 0.000 | Hitting_2B | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_AB | 3.760 | 4.000 | 4.000 | Hitting_AB | 3.738 | 4.000 | 0.262 | 0.000 |
| predicted_AVG | 0.265 | 0.000 | 0.250 | Hitting_AVG | 0.336 | 0.250 | -0.336 | -0.250 |
| predicted_BB | 0.191 | 0.000 | 0.000 | Hitting_BB | 0.205 | 0.000 | -0.205 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 1.000 | 0.000 | 1.000 | Hitting_H | 1.257 | 1.000 | -1.257 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.129 | 0.000 | -0.129 | 0.000 |
| predicted_OBP | 0.337 | 0.000 | 0.250 | Hitting_OBP | 0.369 | 0.250 | -0.369 | -0.250 |
| predicted_R | 0.574 | 0.000 | 1.000 | Hitting_R | 0.633 | 0.000 | -0.633 | 0.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.581 | 1.000 | -0.581 | -1.000 |
| predicted_SLG | 0.454 | 0.000 | 0.250 | Hitting_SLG | 0.513 | 0.250 | -0.513 | -0.250 |
| predicted_SO | 0.912 | 2.000 | 1.000 | Hitting_SO | 0.805 | 2.000 | 1.195 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.9120 -> 2.0000 (boost 1.0880, worse) |
| Biggest Deboost | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 4 | 1 | predicted_H: 1.0000 -> 1.0659 (boost 0.0659, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3420 -> 0.3170 (deboost -0.0250, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_RBI: 0.5609 -> 1.0000 (boost 0.4391, better) | predicted_BB: 0.2042 -> 0.0000 (deboost -0.2042, worse) | AB rounded to 4 (raw=3.77), rates preserved: AVG=0.280 HR/AB=0.038 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6090 -> 1.0000 (boost 0.3910, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4557 -> 0.2500 (deboost -0.2057, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 0 | 4 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4557 (boost 0.2057, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669016",
"player_name": "Brandon Marsh",
"position": "RF",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.029,
"predicted_AB": 3.76,
"predicted_AVG": 0.265,
"predicted_BB": 0.191,
"predicted_H": 1.0,
"predicted_HR": 0.14,
"predicted_OBP": 0.337,
"predicted_R": 0.574,
"predicted_RBI": 0.55,
"predicted_SLG": 0.454,
"predicted_SO": 0.912
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1802,
"predicted_3B": 0.0244,
"predicted_AB": 3.7692,
"predicted_AVG": 0.2822,
"predicted_BB": 0.2044,
"predicted_H": 1.0659,
"predicted_HBP": 0.038,
"predicted_HR": 0.1467,
"predicted_OBP": 0.342,
"predicted_R": 0.6173,
"predicted_RBI": 0.5685,
"predicted_SLG": 0.4683,
"predicted_SO": 0.9662
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.1802,
"delta": 0.0042,
"percent_delta": 0.0239,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0244,
"delta": -0.0046,
"percent_delta": -0.1586,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.76,
"after": 3.7692,
"delta": 0.0092,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2822,
"delta": 0.0172,
"percent_delta": 0.0649,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.191,
"after": 0.2044,
"delta": 0.0134,
"percent_delta": 0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0659,
"delta": 0.0659,
"percent_delta": 0.0659,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1467,
"delta": 0.0067,
"percent_delta": 0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.342,
"delta": 0.005,
"percent_delta": 0.0148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.574,
"after": 0.6173,
"delta": 0.0433,
"percent_delta": 0.0754,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5685,
"delta": 0.0185,
"percent_delta": 0.0336,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4683,
"delta": 0.0143,
"percent_delta": 0.0315,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.912,
"after": 0.9662,
"delta": 0.0542,
"percent_delta": 0.0594,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 1.0659,
"delta": 0.0659,
"percent_delta": 0.0659,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1802,
"predicted_3B": 0.0244,
"predicted_AB": 3.7692,
"predicted_AVG": 0.28,
"predicted_BB": 0.2042,
"predicted_H": 1.0553,
"predicted_HBP": 0.038,
"predicted_HR": 0.1444,
"predicted_OBP": 0.317,
"predicted_R": 0.609,
"predicted_RBI": 0.5609,
"predicted_SLG": 0.4557,
"predicted_SO": 0.9673
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1802,
"after": 0.1802,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0244,
"after": 0.0244,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7692,
"after": 3.7692,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2822,
"after": 0.28,
"delta": -0.0022,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2044,
"after": 0.2042,
"delta": -0.0002,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0659,
"after": 1.0553,
"delta": -0.0106,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.038,
"after": 0.038,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1467,
"after": 0.1444,
"delta": -0.0023,
"percent_delta": -0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.317,
"delta": -0.025,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6173,
"after": 0.609,
"delta": -0.0083,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5685,
"after": 0.5609,
"delta": -0.0076,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4683,
"after": 0.4557,
"delta": -0.0126,
"percent_delta": -0.0269,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9662,
"after": 0.9673,
"delta": 0.0011,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.317,
"delta": -0.025,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.77), rates preserved: AVG=0.280 HR/AB=0.038",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1802,
"after": 0.0,
"delta": -0.1802,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0244,
"after": 0.0,
"delta": -0.0244,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7692,
"after": 4.0,
"delta": 0.2308,
"percent_delta": 0.0612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2042,
"after": 0.0,
"delta": -0.2042,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0553,
"after": 1.0,
"delta": -0.0553,
"percent_delta": -0.0524,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.038,
"after": 0.0,
"delta": -0.038,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1444,
"after": 0.0,
"delta": -0.1444,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5609,
"after": 1.0,
"delta": 0.4391,
"percent_delta": 0.7828,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9673,
"after": 1.0,
"delta": 0.0327,
"percent_delta": 0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5609,
"after": 1.0,
"delta": 0.4391,
"percent_delta": 0.7828,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2042,
"after": 0.0,
"delta": -0.2042,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.609,
"after": 1.0,
"delta": 0.391,
"percent_delta": 0.642,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.609,
"after": 1.0,
"delta": 0.391,
"percent_delta": 0.642,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.28,
"after": 0.25,
"delta": -0.03,
"percent_delta": -0.1071,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.25,
"delta": -0.067,
"percent_delta": -0.2114,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4557,
"after": 0.25,
"delta": -0.2057,
"percent_delta": -0.4514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4557,
"after": 0.25,
"delta": -0.2057,
"percent_delta": -0.4514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.28,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.317,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4557,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.28,
"delta": 0.03,
"percent_delta": 0.12,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.317,
"delta": 0.067,
"percent_delta": 0.268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4557,
"delta": 0.2057,
"percent_delta": 0.8228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4557,
"delta": 0.2057,
"percent_delta": 0.8228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.76,
"after": 4.0,
"delta": 0.24,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.28,
"delta": 0.015,
"percent_delta": 0.0566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.191,
"after": 0.0,
"delta": -0.191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.317,
"delta": -0.02,
"percent_delta": -0.0593,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.574,
"after": 0.0,
"delta": -0.574,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4557,
"delta": 0.0017,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.912,
"after": 2.0,
"delta": 1.088,
"percent_delta": 1.193,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.912,
"after": 2.0,
"delta": 1.088,
"percent_delta": 1.193,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.760 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.191 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.337 | - |
| predicted_R | 0.574 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.454 | - |
| predicted_SO | 0.912 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.180 | 0.004 |
| predicted_3B | 0.024 | -0.005 |
| predicted_AB | 3.769 | 0.009 |
| predicted_AVG | 0.282 | 0.017 |
| predicted_BB | 0.204 | 0.013 |
| predicted_H | 1.066 | 0.066 |
| predicted_HBP | 0.038 | - |
| predicted_HR | 0.147 | 0.007 |
| predicted_OBP | 0.342 | 0.005 |
| predicted_R | 0.617 | 0.043 |
| predicted_RBI | 0.569 | 0.018 |
| predicted_SLG | 0.468 | 0.014 |
| predicted_SO | 0.966 | 0.054 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.180 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 3.769 | 0.000 |
| predicted_AVG | 0.280 | -0.002 |
| predicted_BB | 0.204 | -0.000 |
| predicted_H | 1.055 | -0.011 |
| predicted_HBP | 0.038 | 0.000 |
| predicted_HR | 0.144 | -0.002 |
| predicted_OBP | 0.317 | -0.025 |
| predicted_R | 0.609 | -0.008 |
| predicted_RBI | 0.561 | -0.008 |
| predicted_SLG | 0.456 | -0.013 |
| predicted_SO | 0.967 | 0.001 |
AB rounded to 4 (raw=3.77), rates preserved: AVG=0.280 HR/AB=0.038
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.180 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 4.000 | 0.231 |
| predicted_AVG | 0.250 | -0.030 |
| predicted_BB | 0.000 | -0.204 |
| predicted_H | 1.000 | -0.055 |
| predicted_HR | 0.000 | -0.144 |
| predicted_OBP | 0.250 | -0.067 |
| predicted_R | 1.000 | 0.391 |
| predicted_RBI | 1.000 | 0.439 |
| predicted_SLG | 0.250 | -0.206 |
| predicted_SO | 1.000 | 0.033 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 7.000 | 1.000 | 0.000 | 1.000 | 4.000 | 5.000 | 1.000 | 6.000 | 0.3333 | 0.3636 | 0.5238 | 0.3333 | 0.0476 | 0.1905 | 0.0476 | 0.2857 |
| last_10 | 0.20 | 10 | - | 39.000 | 10.000 | 2.000 | 0.000 | 2.000 | 7.000 | 8.000 | 3.000 | 14.000 | 0.2564 | 0.3256 | 0.4615 | 0.2564 | 0.0513 | 0.1795 | 0.0769 | 0.3590 |
| season | 0.60 | 68 | - | 244.000 | 79.000 | 12.000 | 2.000 | 9.000 | 35.000 | 39.000 | 13.000 | 62.000 | 0.3238 | 0.3588 | 0.5000 | 0.3238 | 0.0369 | 0.1434 | 0.0533 | 0.2541 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1860 |
| predicted_3B | 0.0180 |
| predicted_AB | 3.7820 |
| predicted_AVG | 0.3059 |
| predicted_BB | 0.2230 |
| predicted_H | 1.1570 |
| predicted_HBP | 0.0380 |
| predicted_HR | 0.1560 |
| predicted_OBP | 0.3490 |
| predicted_R | 0.6770 |
| predicted_RBI | 0.5940 |
| predicted_SLG | 0.4881 |
| predicted_SO | 1.0410 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.1860 | 0.1802 | model_form_blend |
| predicted_3B | 0.0290 | 0.0180 | 0.0244 | model_form_blend |
| predicted_AB | 3.7600 | 3.7820 | 3.7692 | model_form_blend |
| predicted_AVG | 0.2650 | 0.3059 | 0.2822 | model_form_blend |
| predicted_BB | 0.1910 | 0.2230 | 0.2044 | model_form_blend |
| predicted_H | 1.0000 | 1.1570 | 1.0659 | model_form_blend |
| predicted_HBP | - | 0.0380 | 0.0380 | form_only |
| predicted_HR | 0.1400 | 0.1560 | 0.1467 | model_form_blend |
| predicted_OBP | 0.3370 | 0.3490 | 0.3420 | model_form_blend |
| predicted_R | 0.5740 | 0.6770 | 0.6173 | model_form_blend |
| predicted_RBI | 0.5500 | 0.5940 | 0.5685 | model_form_blend |
| predicted_SLG | 0.4540 | 0.4881 | 0.4683 | model_form_blend |
| predicted_SO | 0.9120 | 1.0410 | 0.9662 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 210 |
| Season rows before report date | 210 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.324 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 669016 |
| playerID | 669016 |
| playerName | Brandon Marsh |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.4 |
| sl_bb_percent | 4.9 |
| sl_woba | 0.37 |
| sl_xwoba | 0.333 |
| sl_xba | 0.289 |
| sl_xslg | 0.448 |
| sl_sweet_spot_percent | 46.2 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 46.8 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 13.0 |
| sl_whiff_percent | 24.9 |
| sl_swing_percent | 53.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.109 | 0.000 | -0.109 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.775 | 4.000 | 3.000 | Hitting_AB | 3.119 | 3.000 | 0.881 | 1.000 |
| predicted_AVG | 0.266 | 0.250 | 0.333 | Hitting_AVG | 0.200 | 0.333 | 0.050 | -0.083 |
| predicted_BB | 0.050 | 0.000 | 0.000 | Hitting_BB | 0.089 | 0.000 | -0.089 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.300 | 1.000 | 1.000 | Hitting_H | 0.624 | 1.000 | 0.376 | 0.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.069 | 0.000 | -0.069 | 0.000 |
| predicted_OBP | 0.297 | 0.250 | 0.333 | Hitting_OBP | 0.237 | 0.333 | 0.013 | -0.083 |
| predicted_R | 0.350 | 0.000 | 0.000 | Hitting_R | 0.347 | 1.000 | -0.347 | -1.000 |
| predicted_RBI | 0.190 | 0.000 | 0.000 | Hitting_RBI | 0.446 | 0.000 | -0.446 | 0.000 |
| predicted_SLG | 0.439 | 0.250 | 0.333 | Hitting_SLG | 0.302 | 0.333 | -0.052 | -0.083 |
| predicted_SO | 0.650 | 1.000 | 1.000 | Hitting_SO | 0.733 | 0.000 | 0.267 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 2.7750 -> 4.0000 (boost 1.2250, better) |
| Biggest Deboost | predicted_R: 0.3500 -> 0.0000 (deboost -0.3500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 7 | 0 | 7 | 0 | predicted_H: 0.3000 -> 0.5118 (boost 0.2118, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4527 -> 0.3059 (deboost -0.1468, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_H: 0.5067 -> 1.0000 (boost 0.4933, better) | predicted_RBI: 0.2746 -> 0.0000 (deboost -0.2746, worse) | AB rounded to 3 (raw=2.83), rates preserved: AVG=0.179 HR/AB=0.030 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.429) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3997 -> 0.0000 (deboost -0.3997, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1792 -> 0.3330 (boost 0.1538, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1792 (deboost -0.1538, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "624641",
"player_name": "Edmundo Sosa",
"position": "LF",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.0,
"predicted_AB": 2.775,
"predicted_AVG": 0.266,
"predicted_BB": 0.05,
"predicted_H": 0.3,
"predicted_HR": 0.05,
"predicted_OBP": 0.297,
"predicted_R": 0.35,
"predicted_RBI": 0.19,
"predicted_SLG": 0.439,
"predicted_SO": 0.65
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0992,
"predicted_3B": 0.0008,
"predicted_AB": 2.827,
"predicted_AVG": 0.2752,
"predicted_BB": 0.0578,
"predicted_H": 0.5118,
"predicted_HBP": 0.098,
"predicted_HR": 0.0871,
"predicted_OBP": 0.3076,
"predicted_R": 0.4051,
"predicted_RBI": 0.2783,
"predicted_SLG": 0.4527,
"predicted_SO": 0.6332
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0992,
"delta": -0.0008,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.775,
"after": 2.827,
"delta": 0.052,
"percent_delta": 0.0187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2752,
"delta": 0.0092,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.05,
"after": 0.0578,
"delta": 0.0078,
"percent_delta": 0.156,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.5118,
"delta": 0.2118,
"percent_delta": 0.706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0871,
"delta": 0.0371,
"percent_delta": 0.742,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.3076,
"delta": 0.0106,
"percent_delta": 0.0357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.35,
"after": 0.4051,
"delta": 0.0551,
"percent_delta": 0.1574,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.2783,
"delta": 0.0883,
"percent_delta": 0.4647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.439,
"after": 0.4527,
"delta": 0.0137,
"percent_delta": 0.0312,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.65,
"after": 0.6332,
"delta": -0.0168,
"percent_delta": -0.0258,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 7,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.3,
"after": 0.5118,
"delta": 0.2118,
"percent_delta": 0.706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0992,
"predicted_3B": 0.0008,
"predicted_AB": 2.827,
"predicted_AVG": 0.1792,
"predicted_BB": 0.0577,
"predicted_H": 0.5067,
"predicted_HBP": 0.098,
"predicted_HR": 0.0857,
"predicted_OBP": 0.1957,
"predicted_R": 0.3997,
"predicted_RBI": 0.2746,
"predicted_SLG": 0.3059,
"predicted_SO": 0.6339
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0992,
"after": 0.0992,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.827,
"after": 2.827,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2752,
"after": 0.1792,
"delta": -0.096,
"percent_delta": -0.3488,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0578,
"after": 0.0577,
"delta": -0.0001,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5118,
"after": 0.5067,
"delta": -0.0051,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.098,
"after": 0.098,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0871,
"after": 0.0857,
"delta": -0.0014,
"percent_delta": -0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3076,
"after": 0.1957,
"delta": -0.1119,
"percent_delta": -0.3638,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4051,
"after": 0.3997,
"delta": -0.0054,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2783,
"after": 0.2746,
"delta": -0.0037,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4527,
"after": 0.3059,
"delta": -0.1468,
"percent_delta": -0.3243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6332,
"after": 0.6339,
"delta": 0.0007,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4527,
"after": 0.3059,
"delta": -0.1468,
"percent_delta": -0.3243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.83), rates preserved: AVG=0.179 HR/AB=0.030",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0992,
"after": 0.0,
"delta": -0.0992,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.827,
"after": 3.0,
"delta": 0.173,
"percent_delta": 0.0612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0577,
"after": 0.0,
"delta": -0.0577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5067,
"after": 1.0,
"delta": 0.4933,
"percent_delta": 0.9736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.098,
"after": 0.0,
"delta": -0.098,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0857,
"after": 0.0,
"delta": -0.0857,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2746,
"after": 0.0,
"delta": -0.2746,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6339,
"after": 1.0,
"delta": 0.3661,
"percent_delta": 0.5775,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5067,
"after": 1.0,
"delta": 0.4933,
"percent_delta": 0.9736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2746,
"after": 0.0,
"delta": -0.2746,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.429)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8727,
"bvp": 0.1273
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3997,
"after": 0.0,
"delta": -0.3997,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3997,
"after": 0.0,
"delta": -0.3997,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1792,
"after": 0.333,
"delta": 0.1538,
"percent_delta": 0.8583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.1957,
"after": 0.333,
"delta": 0.1373,
"percent_delta": 0.7016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3059,
"after": 0.333,
"delta": 0.0271,
"percent_delta": 0.0886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1792,
"after": 0.333,
"delta": 0.1538,
"percent_delta": 0.8583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1792,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.1957,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3059,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1792,
"delta": -0.1538,
"percent_delta": -0.4617,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.1957,
"delta": -0.1373,
"percent_delta": -0.4124,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3059,
"delta": -0.0271,
"percent_delta": -0.0814,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1792,
"delta": -0.1538,
"percent_delta": -0.4617,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.775,
"after": 4.0,
"delta": 1.225,
"percent_delta": 0.4414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.1792,
"delta": -0.0868,
"percent_delta": -0.3263,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.1957,
"delta": -0.1013,
"percent_delta": -0.3411,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.439,
"after": 0.3059,
"delta": -0.1331,
"percent_delta": -0.3032,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.65,
"after": 1.0,
"delta": 0.35,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.775,
"after": 4.0,
"delta": 1.225,
"percent_delta": 0.4414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.775 | - |
| predicted_AVG | 0.266 | - |
| predicted_BB | 0.050 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.297 | - |
| predicted_R | 0.350 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.439 | - |
| predicted_SO | 0.650 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.099 | -0.001 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.827 | 0.052 |
| predicted_AVG | 0.275 | 0.009 |
| predicted_BB | 0.058 | 0.008 |
| predicted_H | 0.512 | 0.212 |
| predicted_HBP | 0.098 | - |
| predicted_HR | 0.087 | 0.037 |
| predicted_OBP | 0.308 | 0.011 |
| predicted_R | 0.405 | 0.055 |
| predicted_RBI | 0.278 | 0.088 |
| predicted_SLG | 0.453 | 0.014 |
| predicted_SO | 0.633 | -0.017 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.099 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.827 | 0.000 |
| predicted_AVG | 0.179 | -0.096 |
| predicted_BB | 0.058 | -0.000 |
| predicted_H | 0.507 | -0.005 |
| predicted_HBP | 0.098 | 0.000 |
| predicted_HR | 0.086 | -0.001 |
| predicted_OBP | 0.196 | -0.112 |
| predicted_R | 0.400 | -0.005 |
| predicted_RBI | 0.275 | -0.004 |
| predicted_SLG | 0.306 | -0.147 |
| predicted_SO | 0.634 | 0.001 |
AB rounded to 3 (raw=2.83), rates preserved: AVG=0.179 HR/AB=0.030
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.429)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.099 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.173 |
| predicted_AVG | 0.333 | 0.154 |
| predicted_BB | 0.000 | -0.058 |
| predicted_H | 1.000 | 0.493 |
| predicted_HR | 0.000 | -0.086 |
| predicted_OBP | 0.333 | 0.137 |
| predicted_R | 0.000 | -0.400 |
| predicted_RBI | 0.000 | -0.275 |
| predicted_SLG | 0.333 | 0.027 |
| predicted_SO | 1.000 | 0.366 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 6.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 0.000 | 1.000 | 0.4615 | 0.5000 | 0.6923 | 0.4615 | 0.0769 | 0.0769 | 0.0000 | 0.0769 |
| last_10 | 0.20 | 10 | - | 24.000 | 8.000 | 1.000 | 0.000 | 2.000 | 4.000 | 5.000 | 0.000 | 6.000 | 0.3333 | 0.3462 | 0.6250 | 0.3333 | 0.0833 | 0.1667 | 0.0000 | 0.2500 |
| season | 0.60 | 40 | - | 111.000 | 26.000 | 4.000 | 0.000 | 4.000 | 18.000 | 14.000 | 2.000 | 26.000 | 0.2342 | 0.2627 | 0.3784 | 0.2342 | 0.0360 | 0.1622 | 0.0180 | 0.2342 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0980 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.9080 |
| predicted_AVG | 0.2896 |
| predicted_BB | 0.0700 |
| predicted_H | 0.8420 |
| predicted_HBP | 0.0980 |
| predicted_HR | 0.1450 |
| predicted_OBP | 0.3241 |
| predicted_R | 0.4910 |
| predicted_RBI | 0.4160 |
| predicted_SLG | 0.4741 |
| predicted_SO | 0.6070 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.0980 | 0.0992 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.7750 | 2.9080 | 2.8270 | model_form_blend |
| predicted_AVG | 0.2660 | 0.2896 | 0.2752 | model_form_blend |
| predicted_BB | 0.0500 | 0.0700 | 0.0578 | model_form_blend |
| predicted_H | 0.3000 | 0.8420 | 0.5118 | model_form_blend |
| predicted_HBP | - | 0.0980 | 0.0980 | form_only |
| predicted_HR | 0.0500 | 0.1450 | 0.0871 | model_form_blend |
| predicted_OBP | 0.2970 | 0.3241 | 0.3076 | model_form_blend |
| predicted_R | 0.3500 | 0.4910 | 0.4051 | model_form_blend |
| predicted_RBI | 0.1900 | 0.4160 | 0.2783 | model_form_blend |
| predicted_SLG | 0.4390 | 0.4741 | 0.4527 | model_form_blend |
| predicted_SO | 0.6500 | 0.6070 | 0.6332 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 101 |
| Season rows before report date | 101 |
| Report year | 2026 |
| Profile rows used | 40 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.234 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260616_MIA@PHI |
| game_type | full |
| mlbID | 624641 |
| playerID | 624641 |
| playerName | Edmundo Sosa |
| pos | 2B |
| started | True |
| startingPosition | SS |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-16 |
| sl_k_percent | 21.7 |
| sl_bb_percent | 2.5 |
| sl_woba | 0.283 |
| sl_xwoba | 0.329 |
| sl_xba | 0.282 |
| sl_xslg | 0.446 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 39.1 |
| sl_exit_velocity_avg | 86.7 |
| sl_launch_angle_avg | 9.6 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 60.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.083 | 0.000 | 0.000 | Hitting_2B | 0.116 | 0.000 | -0.116 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.438 | 4.000 | 3.000 | Hitting_AB | 3.445 | 4.000 | 0.555 | 0.000 |
| predicted_AVG | 0.229 | 0.000 | 0.333 | Hitting_AVG | 0.243 | 0.000 | -0.243 | 0.000 |
| predicted_BB | 0.292 | 0.000 | 0.000 | Hitting_BB | 0.288 | 0.000 | -0.288 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.710 | 0.000 | 1.000 | Hitting_H | 0.836 | 0.000 | -0.836 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.082 | 0.000 | -0.082 | 0.000 |
| predicted_OBP | 0.286 | 0.000 | 0.333 | Hitting_OBP | 0.321 | 0.000 | -0.321 | 0.000 |
| predicted_R | 0.333 | 0.000 | 0.000 | Hitting_R | 0.342 | 0.000 | -0.342 | 0.000 |
| predicted_RBI | 0.470 | 0.000 | 0.000 | Hitting_RBI | 0.336 | 0.000 | -0.336 | 0.000 |
| predicted_SLG | 0.375 | 0.000 | 0.333 | Hitting_SLG | 0.348 | 0.000 | -0.348 | 0.000 |
| predicted_SO | 0.771 | 1.000 | 1.000 | Hitting_SO | 0.658 | 3.000 | 0.342 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_AB: 3.4380 -> 4.0000 (boost 0.5620, better) |
| Biggest Deboost | predicted_H: 0.7100 -> 0.0000 (deboost -0.7100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 1 | 2 | predicted_AB: 3.4380 -> 3.4924 (boost 0.0544, better) | predicted_AVG: 0.2290 -> 0.2180 (deboost -0.0110, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3720 -> 0.3501 (deboost -0.0219, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.7078 -> 1.0000 (boost 0.2922, better) | predicted_RBI: 0.5048 -> 0.0000 (deboost -0.5048, worse) | AB rounded to 3 (raw=3.49), rates preserved: AVG=0.203 HR/AB=0.042 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.083) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3467 -> 0.0000 (deboost -0.3467, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2027 -> 0.3330 (boost 0.1303, better) | predicted_SLG: 0.3501 -> 0.3330 (deboost -0.0171, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3501 (boost 0.0171, better) | predicted_AVG: 0.3330 -> 0.2027 (deboost -0.1303, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "592663",
"player_name": "J.T. Realmuto",
"position": "C",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.083,
"predicted_3B": 0.0,
"predicted_AB": 3.438,
"predicted_AVG": 0.229,
"predicted_BB": 0.292,
"predicted_H": 0.71,
"predicted_HR": 0.13,
"predicted_OBP": 0.286,
"predicted_R": 0.333,
"predicted_RBI": 0.47,
"predicted_SLG": 0.375,
"predicted_SO": 0.771
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0773,
"predicted_3B": 0.0008,
"predicted_AB": 3.4924,
"predicted_AVG": 0.218,
"predicted_BB": 0.3014,
"predicted_H": 0.7149,
"predicted_HBP": 0.049,
"predicted_HR": 0.1476,
"predicted_OBP": 0.2818,
"predicted_R": 0.3514,
"predicted_RBI": 0.5117,
"predicted_SLG": 0.372,
"predicted_SO": 0.8217
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.083,
"after": 0.0773,
"delta": -0.0057,
"percent_delta": -0.0687,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.438,
"after": 3.4924,
"delta": 0.0544,
"percent_delta": 0.0158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.218,
"delta": -0.011,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.292,
"after": 0.3014,
"delta": 0.0094,
"percent_delta": 0.0322,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 0.7149,
"delta": 0.0049,
"percent_delta": 0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1476,
"delta": 0.0176,
"percent_delta": 0.1354,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2818,
"delta": -0.0042,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.3514,
"delta": 0.0184,
"percent_delta": 0.0553,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.5117,
"delta": 0.0417,
"percent_delta": 0.0887,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.372,
"delta": -0.003,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.771,
"after": 0.8217,
"delta": 0.0507,
"percent_delta": 0.0658,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.438,
"after": 3.4924,
"delta": 0.0544,
"percent_delta": 0.0158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.218,
"delta": -0.011,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 48
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0773,
"predicted_3B": 0.0008,
"predicted_AB": 3.4924,
"predicted_AVG": 0.2027,
"predicted_BB": 0.3011,
"predicted_H": 0.7078,
"predicted_HBP": 0.049,
"predicted_HR": 0.1453,
"predicted_OBP": 0.266,
"predicted_R": 0.3467,
"predicted_RBI": 0.5048,
"predicted_SLG": 0.3501,
"predicted_SO": 0.8226
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0773,
"after": 0.0773,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4924,
"after": 3.4924,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2027,
"delta": -0.0153,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3014,
"after": 0.3011,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7149,
"after": 0.7078,
"delta": -0.0071,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.049,
"after": 0.049,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1476,
"after": 0.1453,
"delta": -0.0023,
"percent_delta": -0.0156,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2818,
"after": 0.266,
"delta": -0.0158,
"percent_delta": -0.0561,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3514,
"after": 0.3467,
"delta": -0.0047,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5117,
"after": 0.5048,
"delta": -0.0069,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3501,
"delta": -0.0219,
"percent_delta": -0.0589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8217,
"after": 0.8226,
"delta": 0.0009,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3501,
"delta": -0.0219,
"percent_delta": -0.0589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.49), rates preserved: AVG=0.203 HR/AB=0.042",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0773,
"after": 0.0,
"delta": -0.0773,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4924,
"after": 3.0,
"delta": -0.4924,
"percent_delta": -0.141,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3011,
"after": 0.0,
"delta": -0.3011,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7078,
"after": 1.0,
"delta": 0.2922,
"percent_delta": 0.4128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.049,
"after": 0.0,
"delta": -0.049,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1453,
"after": 0.0,
"delta": -0.1453,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5048,
"after": 0.0,
"delta": -0.5048,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8226,
"after": 1.0,
"delta": 0.1774,
"percent_delta": 0.2157,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7078,
"after": 1.0,
"delta": 0.2922,
"percent_delta": 0.4128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5048,
"after": 0.0,
"delta": -0.5048,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.083)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8857,
"bvp": 0.1143
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3467,
"after": 0.0,
"delta": -0.3467,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3467,
"after": 0.0,
"delta": -0.3467,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2027,
"after": 0.333,
"delta": 0.1303,
"percent_delta": 0.6428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.266,
"after": 0.333,
"delta": 0.067,
"percent_delta": 0.2519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3501,
"after": 0.333,
"delta": -0.0171,
"percent_delta": -0.0488,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2027,
"after": 0.333,
"delta": 0.1303,
"percent_delta": 0.6428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3501,
"after": 0.333,
"delta": -0.0171,
"percent_delta": -0.0488,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2027,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.266,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3501,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2027,
"delta": -0.1303,
"percent_delta": -0.3914,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.266,
"delta": -0.067,
"percent_delta": -0.2013,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3501,
"delta": 0.0171,
"percent_delta": 0.0513,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3501,
"delta": 0.0171,
"percent_delta": 0.0513,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2027,
"delta": -0.1303,
"percent_delta": -0.3914,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.083,
"after": 0.0,
"delta": -0.083,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.438,
"after": 4.0,
"delta": 0.562,
"percent_delta": 0.1635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2027,
"delta": -0.0263,
"percent_delta": -0.1148,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.292,
"after": 0.0,
"delta": -0.292,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 0.0,
"delta": -0.71,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.266,
"delta": -0.02,
"percent_delta": -0.0699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3501,
"delta": -0.0249,
"percent_delta": -0.0664,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.771,
"after": 1.0,
"delta": 0.229,
"percent_delta": 0.297,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.438,
"after": 4.0,
"delta": 0.562,
"percent_delta": 0.1635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.71,
"after": 0.0,
"delta": -0.71,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.083 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.438 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.292 | - |
| predicted_H | 0.710 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.286 | - |
| predicted_R | 0.333 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.375 | - |
| predicted_SO | 0.771 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.077 | -0.006 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.492 | 0.054 |
| predicted_AVG | 0.218 | -0.011 |
| predicted_BB | 0.301 | 0.009 |
| predicted_H | 0.715 | 0.005 |
| predicted_HBP | 0.049 | - |
| predicted_HR | 0.148 | 0.018 |
| predicted_OBP | 0.282 | -0.004 |
| predicted_R | 0.351 | 0.018 |
| predicted_RBI | 0.512 | 0.042 |
| predicted_SLG | 0.372 | -0.003 |
| predicted_SO | 0.822 | 0.051 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.077 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.492 | 0.000 |
| predicted_AVG | 0.203 | -0.015 |
| predicted_BB | 0.301 | -0.000 |
| predicted_H | 0.708 | -0.007 |
| predicted_HBP | 0.049 | 0.000 |
| predicted_HR | 0.145 | -0.002 |
| predicted_OBP | 0.266 | -0.016 |
| predicted_R | 0.347 | -0.005 |
| predicted_RBI | 0.505 | -0.007 |
| predicted_SLG | 0.350 | -0.022 |
| predicted_SO | 0.823 | 0.001 |
AB rounded to 3 (raw=3.49), rates preserved: AVG=0.203 HR/AB=0.042
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.083)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.077 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.492 |
| predicted_AVG | 0.333 | 0.130 |
| predicted_BB | 0.000 | -0.301 |
| predicted_H | 1.000 | 0.292 |
| predicted_HR | 0.000 | -0.145 |
| predicted_OBP | 0.333 | 0.067 |
| predicted_R | 0.000 | -0.347 |
| predicted_RBI | 0.000 | -0.505 |
| predicted_SLG | 0.333 | -0.017 |
| predicted_SO | 1.000 | 0.177 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 4.000 | 0.000 | 0.000 | 2.000 | 6.000 | 2.000 | 1.000 | 5.000 | 0.2105 | 0.2500 | 0.5263 | 0.2105 | 0.1053 | 0.3158 | 0.0526 | 0.2632 |
| last_10 | 0.20 | 10 | - | 35.000 | 5.000 | 0.000 | 0.000 | 2.000 | 7.000 | 4.000 | 5.000 | 12.000 | 0.1429 | 0.2500 | 0.3143 | 0.1429 | 0.0571 | 0.2000 | 0.1429 | 0.3429 |
| season | 0.60 | 48 | - | 165.000 | 34.000 | 4.000 | 0.000 | 5.000 | 17.000 | 16.000 | 14.000 | 37.000 | 0.2061 | 0.2826 | 0.3212 | 0.2061 | 0.0303 | 0.1030 | 0.0848 | 0.2242 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0690 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.5710 |
| predicted_AVG | 0.2022 |
| predicted_BB | 0.3150 |
| predicted_H | 0.7220 |
| predicted_HBP | 0.0490 |
| predicted_HR | 0.1730 |
| predicted_OBP | 0.2757 |
| predicted_R | 0.3780 |
| predicted_RBI | 0.5720 |
| predicted_SLG | 0.3677 |
| predicted_SO | 0.8950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0830 | 0.0690 | 0.0773 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.4380 | 3.5710 | 3.4924 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2022 | 0.2180 | model_form_blend |
| predicted_BB | 0.2920 | 0.3150 | 0.3014 | model_form_blend |
| predicted_H | 0.7100 | 0.7220 | 0.7149 | model_form_blend |
| predicted_HBP | - | 0.0490 | 0.0490 | form_only |
| predicted_HR | 0.1300 | 0.1730 | 0.1476 | model_form_blend |
| predicted_OBP | 0.2860 | 0.2757 | 0.2818 | model_form_blend |
| predicted_R | 0.3330 | 0.3780 | 0.3514 | model_form_blend |
| predicted_RBI | 0.4700 | 0.5720 | 0.5117 | model_form_blend |
| predicted_SLG | 0.3750 | 0.3677 | 0.3720 | model_form_blend |
| predicted_SO | 0.7710 | 0.8950 | 0.8217 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 146 |
| Season rows before report date | 146 |
| Report year | 2026 |
| Profile rows used | 48 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.206 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260616_MIA@PHI |
| game_type | full |
| mlbID | 592663 |
| playerID | 592663 |
| playerName | J.T. Realmuto |
| pos | C |
| started | True |
| startingPosition | C |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-16 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.276 |
| sl_xwoba | 0.321 |
| sl_xba | 0.251 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 34.1 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 39.5 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 10.2 |
| sl_whiff_percent | 24.3 |
| sl_swing_percent | 47.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.194 | 0.000 | 0.000 | Hitting_2B | 0.177 | 0.000 | -0.177 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_AB | 3.433 | 4.000 | 3.000 | Hitting_AB | 3.581 | 4.000 | 0.419 | 0.000 |
| predicted_AVG | 0.255 | 0.250 | 0.333 | Hitting_AVG | 0.224 | 0.500 | 0.026 | -0.250 |
| predicted_BB | 0.269 | 0.000 | 0.000 | Hitting_BB | 0.256 | 0.000 | -0.256 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.870 | 1.000 | 1.000 | Hitting_H | 0.803 | 2.000 | 0.197 | -1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.103 | 0.000 | -0.103 | 0.000 |
| predicted_OBP | 0.329 | 0.250 | 0.333 | Hitting_OBP | 0.278 | 0.500 | -0.028 | -0.250 |
| predicted_R | 0.313 | 0.000 | 0.000 | Hitting_R | 0.325 | 0.000 | -0.325 | 0.000 |
| predicted_RBI | 0.540 | 0.000 | 0.000 | Hitting_RBI | 0.532 | 0.000 | -0.532 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.212 | 1.000 | -0.212 | -1.000 |
| predicted_SLG | 0.421 | 0.250 | 0.333 | Hitting_SLG | 0.377 | 0.500 | -0.127 | -0.250 |
| predicted_SO | 0.612 | 1.000 | 1.000 | Hitting_SO | 0.581 | 0.000 | 0.419 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.4330 -> 4.0000 (boost 0.5670, better) |
| Biggest Deboost | predicted_RBI: 0.5400 -> 0.0000 (deboost -0.5400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 3 | 0 | predicted_R: 0.3130 -> 0.3708 (boost 0.0578, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3325 -> 0.3177 (deboost -0.0148, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.6140 -> 1.0000 (boost 0.3860, worse) | predicted_RBI: 0.5625 -> 0.0000 (deboost -0.5625, worse) | AB rounded to 3 (raw=3.47), rates preserved: AVG=0.259 HR/AB=0.022 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.444) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3658 -> 0.0000 (deboost -0.3658, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2594 -> 0.3330 (boost 0.0736, better) | predicted_SLG: 0.4179 -> 0.3330 (deboost -0.0849, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4179 (boost 0.0849, better) | predicted_AVG: 0.3330 -> 0.2594 (deboost -0.0736, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681082",
"player_name": "Bryson Stott",
"position": "2B",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.194,
"predicted_3B": 0.03,
"predicted_AB": 3.433,
"predicted_AVG": 0.255,
"predicted_BB": 0.269,
"predicted_H": 0.87,
"predicted_HR": 0.09,
"predicted_OBP": 0.329,
"predicted_R": 0.313,
"predicted_RBI": 0.54,
"predicted_SLG": 0.421,
"predicted_SO": 0.612
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2246,
"predicted_3B": 0.0472,
"predicted_AB": 3.4698,
"predicted_AVG": 0.2627,
"predicted_BB": 0.2971,
"predicted_H": 0.9089,
"predicted_HBP": 0.012,
"predicted_HR": 0.0783,
"predicted_OBP": 0.3325,
"predicted_R": 0.3708,
"predicted_RBI": 0.5701,
"predicted_SLG": 0.4299,
"predicted_SO": 0.6133
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.2246,
"delta": 0.0306,
"percent_delta": 0.1577,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0472,
"delta": 0.0172,
"percent_delta": 0.5733,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.433,
"after": 3.4698,
"delta": 0.0368,
"percent_delta": 0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2627,
"delta": 0.0077,
"percent_delta": 0.0302,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.269,
"after": 0.2971,
"delta": 0.0281,
"percent_delta": 0.1045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.9089,
"delta": 0.0389,
"percent_delta": 0.0447,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0783,
"delta": -0.0117,
"percent_delta": -0.13,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.329,
"after": 0.3325,
"delta": 0.0035,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.313,
"after": 0.3708,
"delta": 0.0578,
"percent_delta": 0.1847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.5701,
"delta": 0.0301,
"percent_delta": 0.0557,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.4299,
"delta": 0.0089,
"percent_delta": 0.0211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.612,
"after": 0.6133,
"delta": 0.0013,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.313,
"after": 0.3708,
"delta": 0.0578,
"percent_delta": 0.1847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2246,
"predicted_3B": 0.0472,
"predicted_AB": 3.4698,
"predicted_AVG": 0.2594,
"predicted_BB": 0.2968,
"predicted_H": 0.8999,
"predicted_HBP": 0.012,
"predicted_HR": 0.0771,
"predicted_OBP": 0.3177,
"predicted_R": 0.3658,
"predicted_RBI": 0.5625,
"predicted_SLG": 0.4179,
"predicted_SO": 0.614
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2246,
"after": 0.2246,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0472,
"after": 0.0472,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4698,
"after": 3.4698,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2627,
"after": 0.2594,
"delta": -0.0033,
"percent_delta": -0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2971,
"after": 0.2968,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9089,
"after": 0.8999,
"delta": -0.009,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.012,
"after": 0.012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0783,
"after": 0.0771,
"delta": -0.0012,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3325,
"after": 0.3177,
"delta": -0.0148,
"percent_delta": -0.0445,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3708,
"after": 0.3658,
"delta": -0.005,
"percent_delta": -0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5701,
"after": 0.5625,
"delta": -0.0076,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4299,
"after": 0.4179,
"delta": -0.012,
"percent_delta": -0.0279,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6133,
"after": 0.614,
"delta": 0.0007,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3325,
"after": 0.3177,
"delta": -0.0148,
"percent_delta": -0.0445,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.47), rates preserved: AVG=0.259 HR/AB=0.022",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2246,
"after": 0.0,
"delta": -0.2246,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0472,
"after": 0.0,
"delta": -0.0472,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4698,
"after": 3.0,
"delta": -0.4698,
"percent_delta": -0.1354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2968,
"after": 0.0,
"delta": -0.2968,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8999,
"after": 1.0,
"delta": 0.1001,
"percent_delta": 0.1112,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.012,
"after": 0.0,
"delta": -0.012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0771,
"after": 0.0,
"delta": -0.0771,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5625,
"after": 0.0,
"delta": -0.5625,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.614,
"after": 1.0,
"delta": 0.386,
"percent_delta": 0.6287,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.614,
"after": 1.0,
"delta": 0.386,
"percent_delta": 0.6287,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5625,
"after": 0.0,
"delta": -0.5625,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.444)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9077,
"bvp": 0.0923
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3658,
"after": 0.0,
"delta": -0.3658,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3658,
"after": 0.0,
"delta": -0.3658,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2594,
"after": 0.333,
"delta": 0.0736,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3177,
"after": 0.333,
"delta": 0.0153,
"percent_delta": 0.0482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4179,
"after": 0.333,
"delta": -0.0849,
"percent_delta": -0.2032,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2594,
"after": 0.333,
"delta": 0.0736,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4179,
"after": 0.333,
"delta": -0.0849,
"percent_delta": -0.2032,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2594,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3177,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4179,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2594,
"delta": -0.0736,
"percent_delta": -0.2212,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3177,
"delta": -0.0153,
"percent_delta": -0.0459,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4179,
"delta": 0.0849,
"percent_delta": 0.255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4179,
"delta": 0.0849,
"percent_delta": 0.255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2594,
"delta": -0.0736,
"percent_delta": -0.2212,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.433,
"after": 4.0,
"delta": 0.567,
"percent_delta": 0.1652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2594,
"delta": 0.0044,
"percent_delta": 0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.269,
"after": 0.0,
"delta": -0.269,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 1.0,
"delta": 0.13,
"percent_delta": 0.1494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.329,
"after": 0.3177,
"delta": -0.0113,
"percent_delta": -0.0343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.313,
"after": 0.0,
"delta": -0.313,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.0,
"delta": -0.54,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.421,
"after": 0.4179,
"delta": -0.0031,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.612,
"after": 1.0,
"delta": 0.388,
"percent_delta": 0.634,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.433,
"after": 4.0,
"delta": 0.567,
"percent_delta": 0.1652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.0,
"delta": -0.54,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.194 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.433 | - |
| predicted_AVG | 0.255 | - |
| predicted_BB | 0.269 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.329 | - |
| predicted_R | 0.313 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.421 | - |
| predicted_SO | 0.612 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.225 | 0.031 |
| predicted_3B | 0.047 | 0.017 |
| predicted_AB | 3.470 | 0.037 |
| predicted_AVG | 0.263 | 0.008 |
| predicted_BB | 0.297 | 0.028 |
| predicted_H | 0.909 | 0.039 |
| predicted_HBP | 0.012 | - |
| predicted_HR | 0.078 | -0.012 |
| predicted_OBP | 0.333 | 0.004 |
| predicted_R | 0.371 | 0.058 |
| predicted_RBI | 0.570 | 0.030 |
| predicted_SLG | 0.430 | 0.009 |
| predicted_SO | 0.613 | 0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.225 | 0.000 |
| predicted_3B | 0.047 | 0.000 |
| predicted_AB | 3.470 | 0.000 |
| predicted_AVG | 0.259 | -0.003 |
| predicted_BB | 0.297 | -0.000 |
| predicted_H | 0.900 | -0.009 |
| predicted_HBP | 0.012 | 0.000 |
| predicted_HR | 0.077 | -0.001 |
| predicted_OBP | 0.318 | -0.015 |
| predicted_R | 0.366 | -0.005 |
| predicted_RBI | 0.562 | -0.008 |
| predicted_SLG | 0.418 | -0.012 |
| predicted_SO | 0.614 | 0.001 |
AB rounded to 3 (raw=3.47), rates preserved: AVG=0.259 HR/AB=0.022
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.444)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.225 |
| predicted_3B | 0.000 | -0.047 |
| predicted_AB | 3.000 | -0.470 |
| predicted_AVG | 0.333 | 0.074 |
| predicted_BB | 0.000 | -0.297 |
| predicted_H | 1.000 | 0.100 |
| predicted_HR | 0.000 | -0.077 |
| predicted_OBP | 0.333 | 0.015 |
| predicted_R | 0.000 | -0.366 |
| predicted_RBI | 0.000 | -0.562 |
| predicted_SLG | 0.333 | -0.085 |
| predicted_SO | 1.000 | 0.386 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 2.000 | 1.000 | 0.000 | 4.000 | 4.000 | 2.000 | 2.000 | 0.3333 | 0.4000 | 0.5556 | 0.3333 | 0.0000 | 0.2222 | 0.1111 | 0.1111 |
| last_10 | 0.20 | 10 | - | 35.000 | 12.000 | 4.000 | 1.000 | 0.000 | 8.000 | 5.000 | 5.000 | 7.000 | 0.3429 | 0.4250 | 0.5143 | 0.3429 | 0.0000 | 0.2286 | 0.1429 | 0.2000 |
| season | 0.60 | 67 | - | 230.000 | 54.000 | 13.000 | 2.000 | 6.000 | 34.000 | 21.000 | 18.000 | 41.000 | 0.2348 | 0.2920 | 0.3870 | 0.2348 | 0.0261 | 0.1478 | 0.0783 | 0.1783 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2670 |
| predicted_3B | 0.0710 |
| predicted_AB | 3.5210 |
| predicted_AVG | 0.2734 |
| predicted_BB | 0.3360 |
| predicted_H | 0.9630 |
| predicted_HBP | 0.0120 |
| predicted_HR | 0.0620 |
| predicted_OBP | 0.3373 |
| predicted_R | 0.4510 |
| predicted_RBI | 0.6120 |
| predicted_SLG | 0.4423 |
| predicted_SO | 0.6150 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1940 | 0.2670 | 0.2246 | model_form_blend |
| predicted_3B | 0.0300 | 0.0710 | 0.0472 | model_form_blend |
| predicted_AB | 3.4330 | 3.5210 | 3.4698 | model_form_blend |
| predicted_AVG | 0.2550 | 0.2734 | 0.2627 | model_form_blend |
| predicted_BB | 0.2690 | 0.3360 | 0.2971 | model_form_blend |
| predicted_H | 0.8700 | 0.9630 | 0.9089 | model_form_blend |
| predicted_HBP | - | 0.0120 | 0.0120 | form_only |
| predicted_HR | 0.0900 | 0.0620 | 0.0783 | model_form_blend |
| predicted_OBP | 0.3290 | 0.3373 | 0.3325 | model_form_blend |
| predicted_R | 0.3130 | 0.4510 | 0.3708 | model_form_blend |
| predicted_RBI | 0.5400 | 0.6120 | 0.5701 | model_form_blend |
| predicted_SLG | 0.4210 | 0.4423 | 0.4299 | model_form_blend |
| predicted_SO | 0.6120 | 0.6150 | 0.6133 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 203 |
| Season rows before report date | 203 |
| Report year | 2026 |
| Profile rows used | 67 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 681082 |
| playerID | 681082 |
| playerName | Bryson Stott |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 16.8 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.301 |
| sl_xwoba | 0.312 |
| sl_xba | 0.254 |
| sl_xslg | 0.402 |
| sl_sweet_spot_percent | 33.5 |
| sl_barrel_batted_rate | 7.2 |
| sl_hard_hit_percent | 40.7 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 15.7 |
| sl_whiff_percent | 17.2 |
| sl_swing_percent | 43.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.028 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.500 | 3.000 | 3.000 | Hitting_AB | 1.800 | 0.000 | 1.200 | 3.000 |
| predicted_AVG | 0.276 | 0.667 | 0.333 | Hitting_AVG | 0.222 | - | 0.444 | - |
| predicted_BB | 0.112 | 0.000 | 0.000 | Hitting_BB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.160 | 2.000 | 1.000 | Hitting_H | 0.400 | 0.000 | 1.600 | 2.000 |
| predicted_HR | 0.030 | 1.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_OBP | 0.276 | 0.667 | 0.333 | Hitting_OBP | 0.222 | - | 0.444 | - |
| predicted_R | 0.309 | 1.000 | 0.000 | Hitting_R | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_RBI | 0.110 | 1.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_SLG | 0.342 | 1.667 | 0.333 | Hitting_SLG | 0.222 | - | 1.444 | - |
| predicted_SO | 0.955 | 1.000 | 1.000 | Hitting_SO | 1.000 | 0.000 | 0.000 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 9 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 0.1600 -> 2.0000 (boost 1.8400, better) |
| Biggest Deboost | predicted_AVG: 0.2760 -> 0.1224 (deboost -0.1536, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 3 | 2 | 3 | 2 | predicted_H: 0.1600 -> 0.3194 (boost 0.1594, better) | predicted_AVG: 0.2760 -> 0.2524 (deboost -0.0236, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3398 -> 0.1987 (deboost -0.1411, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 1 | 4 | predicted_AB: 2.5837 -> 3.0000 (boost 0.4163, better) | predicted_H: 0.3162 -> 0.0000 (deboost -0.3162, worse) | AB rounded to 3 (raw=2.58), rates preserved: AVG=0.122 HR/AB=0.021 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3183 -> 0.0000 (deboost -0.3183, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1224 -> 0.3330 (boost 0.2106, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 4 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1224 (deboost -0.2106, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656537",
"player_name": "Derek Hill",
"position": "CF",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.028,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.276,
"predicted_BB": 0.112,
"predicted_H": 0.16,
"predicted_HR": 0.03,
"predicted_OBP": 0.276,
"predicted_R": 0.309,
"predicted_RBI": 0.11,
"predicted_SLG": 0.342,
"predicted_SO": 0.955
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0348,
"predicted_3B": 0.0011,
"predicted_AB": 2.5837,
"predicted_AVG": 0.2524,
"predicted_BB": 0.1097,
"predicted_H": 0.3194,
"predicted_HBP": 0.006,
"predicted_HR": 0.0542,
"predicted_OBP": 0.264,
"predicted_R": 0.3226,
"predicted_RBI": 0.1664,
"predicted_SLG": 0.3398,
"predicted_SO": 0.983
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.028,
"after": 0.0348,
"delta": 0.0068,
"percent_delta": 0.2429,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0011,
"delta": 0.0011,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.5837,
"delta": 0.0837,
"percent_delta": 0.0335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.2524,
"delta": -0.0236,
"percent_delta": -0.0855,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.112,
"after": 0.1097,
"delta": -0.0023,
"percent_delta": -0.0205,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.16,
"after": 0.3194,
"delta": 0.1594,
"percent_delta": 0.9963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0542,
"delta": 0.0242,
"percent_delta": 0.8067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.264,
"delta": -0.012,
"percent_delta": -0.0435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.309,
"after": 0.3226,
"delta": 0.0136,
"percent_delta": 0.044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.11,
"after": 0.1664,
"delta": 0.0564,
"percent_delta": 0.5127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.342,
"after": 0.3398,
"delta": -0.0022,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.955,
"after": 0.983,
"delta": 0.028,
"percent_delta": 0.0293,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.16,
"after": 0.3194,
"delta": 0.1594,
"percent_delta": 0.9963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.2524,
"delta": -0.0236,
"percent_delta": -0.0855,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 42
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0348,
"predicted_3B": 0.0011,
"predicted_AB": 2.5837,
"predicted_AVG": 0.1224,
"predicted_BB": 0.1096,
"predicted_H": 0.3162,
"predicted_HBP": 0.006,
"predicted_HR": 0.0534,
"predicted_OBP": 0.1581,
"predicted_R": 0.3183,
"predicted_RBI": 0.1642,
"predicted_SLG": 0.1987,
"predicted_SO": 0.9841
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0348,
"after": 0.0348,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5837,
"after": 2.5837,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2524,
"after": 0.1224,
"delta": -0.13,
"percent_delta": -0.5151,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1097,
"after": 0.1096,
"delta": -0.0001,
"percent_delta": -0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3194,
"after": 0.3162,
"delta": -0.0032,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0542,
"after": 0.0534,
"delta": -0.0008,
"percent_delta": -0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.264,
"after": 0.1581,
"delta": -0.1059,
"percent_delta": -0.4011,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3226,
"after": 0.3183,
"delta": -0.0043,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1664,
"after": 0.1642,
"delta": -0.0022,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3398,
"after": 0.1987,
"delta": -0.1411,
"percent_delta": -0.4152,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.983,
"after": 0.9841,
"delta": 0.0011,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3398,
"after": 0.1987,
"delta": -0.1411,
"percent_delta": -0.4152,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.58), rates preserved: AVG=0.122 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0348,
"after": 0.0,
"delta": -0.0348,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0,
"delta": -0.0011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5837,
"after": 3.0,
"delta": 0.4163,
"percent_delta": 0.1611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1096,
"after": 0.0,
"delta": -0.1096,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3162,
"after": 0.0,
"delta": -0.3162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0534,
"after": 0.0,
"delta": -0.0534,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.1642,
"after": 0.0,
"delta": -0.1642,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9841,
"after": 1.0,
"delta": 0.0159,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5837,
"after": 3.0,
"delta": 0.4163,
"percent_delta": 0.1611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.3162,
"after": 0.0,
"delta": -0.3162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3183,
"after": 0.0,
"delta": -0.3183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3183,
"after": 0.0,
"delta": -0.3183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1224,
"after": 0.333,
"delta": 0.2106,
"percent_delta": 1.7206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.1581,
"after": 0.333,
"delta": 0.1749,
"percent_delta": 1.1063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.1987,
"after": 0.333,
"delta": 0.1343,
"percent_delta": 0.6759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1224,
"after": 0.333,
"delta": 0.2106,
"percent_delta": 1.7206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1224,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.1581,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1987,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1224,
"delta": -0.2106,
"percent_delta": -0.6324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.1581,
"delta": -0.1749,
"percent_delta": -0.5252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.1987,
"delta": -0.1343,
"percent_delta": -0.4034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1224,
"delta": -0.2106,
"percent_delta": -0.6324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.1224,
"delta": -0.1536,
"percent_delta": -0.5565,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.112,
"after": 0.0,
"delta": -0.112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.16,
"after": 2.0,
"delta": 1.84,
"percent_delta": 11.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 1.0,
"delta": 0.97,
"percent_delta": 32.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.1581,
"delta": -0.1179,
"percent_delta": -0.4272,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.309,
"after": 1.0,
"delta": 0.691,
"percent_delta": 2.2362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.11,
"after": 1.0,
"delta": 0.89,
"percent_delta": 8.0909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.342,
"after": 0.1987,
"delta": -0.1433,
"percent_delta": -0.419,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.955,
"after": 1.0,
"delta": 0.045,
"percent_delta": 0.0471,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 5,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.16,
"after": 2.0,
"delta": 1.84,
"percent_delta": 11.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.1224,
"delta": -0.1536,
"percent_delta": -0.5565,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.028 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.276 | - |
| predicted_BB | 0.112 | - |
| predicted_H | 0.160 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.276 | - |
| predicted_R | 0.309 | - |
| predicted_RBI | 0.110 | - |
| predicted_SLG | 0.342 | - |
| predicted_SO | 0.955 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.035 | 0.007 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.584 | 0.084 |
| predicted_AVG | 0.252 | -0.024 |
| predicted_BB | 0.110 | -0.002 |
| predicted_H | 0.319 | 0.159 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.054 | 0.024 |
| predicted_OBP | 0.264 | -0.012 |
| predicted_R | 0.323 | 0.014 |
| predicted_RBI | 0.166 | 0.056 |
| predicted_SLG | 0.340 | -0.002 |
| predicted_SO | 0.983 | 0.028 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.035 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.584 | 0.000 |
| predicted_AVG | 0.122 | -0.130 |
| predicted_BB | 0.110 | -0.000 |
| predicted_H | 0.316 | -0.003 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.053 | -0.001 |
| predicted_OBP | 0.158 | -0.106 |
| predicted_R | 0.318 | -0.004 |
| predicted_RBI | 0.164 | -0.002 |
| predicted_SLG | 0.199 | -0.141 |
| predicted_SO | 0.984 | 0.001 |
AB rounded to 3 (raw=2.58), rates preserved: AVG=0.122 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.035 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.416 |
| predicted_AVG | 0.333 | 0.211 |
| predicted_BB | 0.000 | -0.110 |
| predicted_H | 1.000 | 0.684 |
| predicted_HR | 0.000 | -0.053 |
| predicted_OBP | 0.333 | 0.175 |
| predicted_R | 0.000 | -0.318 |
| predicted_RBI | 0.000 | -0.164 |
| predicted_SLG | 0.333 | 0.134 |
| predicted_SO | 1.000 | 0.016 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 3.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.000 | 7.000 | 0.2143 | 0.2143 | 0.2143 | 0.2143 | 0.0000 | 0.0714 | 0.0000 | 0.5000 |
| last_10 | 0.20 | 10 | - | 26.000 | 4.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 0.000 | 13.000 | 0.1538 | 0.1538 | 0.2692 | 0.1538 | 0.0385 | 0.0769 | 0.0000 | 0.5000 |
| season | 0.60 | 42 | - | 89.000 | 19.000 | 1.000 | 0.000 | 4.000 | 8.000 | 11.000 | 4.000 | 34.000 | 0.2135 | 0.2473 | 0.3596 | 0.2135 | 0.0449 | 0.0899 | 0.0449 | 0.3820 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0460 |
| predicted_3B | 0.0030 |
| predicted_AB | 2.7210 |
| predicted_AVG | 0.2136 |
| predicted_BB | 0.1060 |
| predicted_H | 0.5810 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0940 |
| predicted_OBP | 0.2443 |
| predicted_R | 0.3450 |
| predicted_RBI | 0.2590 |
| predicted_SLG | 0.3362 |
| predicted_SO | 1.0290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0280 | 0.0460 | 0.0348 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 2.5000 | 2.7210 | 2.5837 | model_form_blend |
| predicted_AVG | 0.2760 | 0.2136 | 0.2524 | model_form_blend |
| predicted_BB | 0.1120 | 0.1060 | 0.1097 | model_form_blend |
| predicted_H | 0.1600 | 0.5810 | 0.3194 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0300 | 0.0940 | 0.0542 | model_form_blend |
| predicted_OBP | 0.2760 | 0.2443 | 0.2640 | model_form_blend |
| predicted_R | 0.3090 | 0.3450 | 0.3226 | model_form_blend |
| predicted_RBI | 0.1100 | 0.2590 | 0.1664 | model_form_blend |
| predicted_SLG | 0.3420 | 0.3362 | 0.3398 | model_form_blend |
| predicted_SO | 0.9550 | 1.0290 | 0.9830 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 5 |
| Season rows before report date | 5 |
| Report year | 2026 |
| Profile rows used | 42 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.213 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_MIA@PHI |
| game_type | short |
| mlbID | 656537 |
| playerID | 656537 |
| playerName | Derek Hill |
| pos | RF |
| started | False |
| startingPosition | LF |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 34.3 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.285 |
| sl_xwoba | 0.282 |
| sl_xba | 0.219 |
| sl_xslg | 0.35 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 15.3 |
| sl_whiff_percent | 37.6 |
| sl_swing_percent | 51.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.714 | 2.000 | 0.286 | 0.000 |
| predicted_ER | 4.000 | 4.000 | 4.000 | Pitching_ER | 3.286 | 3.000 | 0.714 | 1.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 5.714 | 6.000 | 0.286 | 0.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 4.864 | 4.200 | 0.136 | 0.800 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 5.071 | 3.000 | -2.071 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_H: 4.0000 -> 6.0000 (boost 2.0000, worse) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | starter_quality_floor | 1 | 1 | 0 | 0 | 1 | predicted_H: 4.0000 -> 6.0000 (boost 2.0000, worse) | - | Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "605400",
"player_name": "Aaron Nola",
"position": "Starter",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 4.0,
"predicted_HR": 1.0,
"predicted_IP": 5.0,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_quality_floor",
"description": "Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 6.0,
"delta": 2.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 4.0,
"after": 6.0,
"delta": 2.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.0,
"predicted_R": 4.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 6.0,
"delta": 2.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 4.0,
"after": 6.0,
"delta": 2.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 4.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 3.000 | - |
Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 4.000 | 0.000 |
| predicted_H | 6.000 | 2.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.000 | 0.000 |
| predicted_SO | 3.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 25.000 | 16.000 | 27.000 | 6.000 | 25.000 | 4.000 | 5.7600 | 1.3200 | 0.6400 | 1.0800 | 0.2400 | 1.0000 | 0.1600 |
| last_10 | 0.35 | 10 | 48.100 | 36.000 | 57.000 | 18.000 | 47.000 | 10.000 | 6.7034 | 1.5517 | 0.7448 | 1.1793 | 0.3724 | 0.9724 | 0.2069 |
| season | 0.20 | 14 | 70.200 | 46.000 | 80.000 | 24.000 | 71.000 | 13.000 | 5.8585 | 1.4717 | 0.6509 | 1.1321 | 0.3396 | 1.0047 | 0.1840 |
| Metric | Value |
|---|---|
| predicted_BB | 1.5790 |
| predicted_ER | 3.1060 |
| predicted_ERA | 5.6883 |
| predicted_H | 5.3340 |
| predicted_HR | 0.8450 |
| predicted_IP | 5.0000 |
| predicted_SO | 4.8020 |
| predicted_WHIP | 1.4066 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.5790 | 1.7732 | model_form_blend |
| predicted_ER | 4.0000 | 3.1060 | 3.5183 | model_form_blend |
| predicted_ERA | - | 5.6883 | 5.6883 | form_only |
| predicted_H | 4.0000 | 5.3340 | 4.7188 | model_form_blend |
| predicted_HR | 1.0000 | 0.8450 | 0.9165 | model_form_blend |
| predicted_IP | 5.0000 | 5.0000 | 5.0000 | model_form_blend |
| predicted_SO | 3.0000 | 4.8020 | 3.9709 | model_form_blend |
| predicted_WHIP | - | 1.4066 | 1.4066 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.0 |
| H | 6 |
| R | 4 |
| ER | 4 |
| BB | 2 |
| SO | 3 |
| HR | 1 |
| BF | 23 |
| Pitches | 89 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 22 |
| Pitching_ER | 3 |
| Pitching_ERA | 5.86 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 7 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.2 |
| Pitching_Pitches | 85 |
| Pitching_R | 3 |
| Pitching_SO | 3 |
| Pitching_Strikes | 54 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260613_PHI@MIL |
| game_type | full |
| mlbID | 605400 |
| playerID | 605400 |
| playerName | Aaron Nola |
| pos | P |
| started | True |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-13 |
| sl_k_percent | 23.0 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.36 |
| sl_xwoba | 0.327 |
| sl_sweet_spot_percent | 36.0 |
| sl_barrel_batted_rate | 9.3 |
| sl_hard_hit_percent | 38.8 |
| sl_whiff_percent | 25.0 |
| sl_swing_percent | 45.6 |
| sl_avg_best_speed | 76.307417264 |
| sl_avg_hyper_speed | 94.188164009 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.192 | 0.000 | -0.192 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.192 | 0.000 | -0.192 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.692 | 0.000 | -0.692 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.892 | 1.000 | 0.108 | 0.000 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 1.346 | 1.000 | 1.654 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | predicted_H: 2.0000 -> 0.0000 (deboost -2.0000, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 1 | 0 | - | predicted_H: 2.0000 -> 0.0000 (deboost -2.0000, better) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "661395",
"player_name": "Jhoan Duran",
"position": "Middle Reliever",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 3.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 0.000 | 3.000 | 0.000 | 6.000 | 0.000 | 0.0000 | 0.6000 | 0.0000 | 0.6000 | 0.0000 | 1.2000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 0.000 | 5.000 | 0.000 | 13.000 | 0.000 | 0.0000 | 0.5000 | 0.0000 | 0.5000 | 0.0000 | 1.3000 | 0.0000 |
| season | 0.20 | 24 | 23.200 | 3.000 | 15.000 | 5.000 | 35.000 | 1.000 | 1.1408 | 0.8451 | 0.1268 | 0.6338 | 0.2113 | 1.4789 | 0.0423 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2080 |
| predicted_ER | 0.2710 |
| predicted_ERA | 2.4345 |
| predicted_H | 0.7790 |
| predicted_HR | 0.0790 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1090 |
| predicted_WHIP | 0.9868 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2080 | 0.0899 | model_form_blend |
| predicted_ER | 0.0000 | 0.2710 | 0.1171 | model_form_blend |
| predicted_ERA | - | 2.4345 | 2.4345 | form_only |
| predicted_H | 2.0000 | 0.7790 | 1.4723 | model_form_blend |
| predicted_HR | 0.0000 | 0.0790 | 0.0341 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 3.0000 | 1.1090 | 2.1827 | model_form_blend |
| predicted_WHIP | - | 0.9868 | 0.9868 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 26 |
| Season rows before report date | 26 |
| Report year | 2026 |
| Profile rows used | 24 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 3 |
| HR | 0 |
| BF | 3 |
| Pitches | 14 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.90 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260613_PHI@MIL |
| game_type | full |
| mlbID | 661395 |
| playerID | 661395 |
| playerName | Jhoan Duran |
| pos | P |
| started | False |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-13 |
| sl_k_percent | 38.5 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.24 |
| sl_xwoba | 0.242 |
| sl_sweet_spot_percent | 27.5 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 49.0 |
| sl_whiff_percent | 39.6 |
| sl_swing_percent | 52.3 |
| sl_avg_best_speed | 82.546527308 |
| sl_avg_hyper_speed | 95.401983725 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.182 | 0.000 | 0.818 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.409 | 0.000 | -0.409 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.909 | 0.000 | -0.909 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.914 | 1.000 | 0.086 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.045 | 0.000 | -1.045 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "680742",
"player_name": "Jonathan Bowlan",
"position": "Middle Reliever",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 4.000 | 0.000 | 7.000 | 0.000 | 0.0000 | 0.7500 | 0.0000 | 0.7500 | 0.0000 | 1.3125 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 1.000 | 8.000 | 1.000 | 11.000 | 1.000 | 0.9000 | 0.9000 | 0.1000 | 0.8000 | 0.1000 | 1.1000 | 0.1000 |
| season | 0.20 | 22 | 22.200 | 9.000 | 20.000 | 4.000 | 23.000 | 1.000 | 3.5735 | 1.0588 | 0.3971 | 0.8823 | 0.1765 | 1.0147 | 0.0441 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2240 |
| predicted_ER | 0.3180 |
| predicted_ERA | 2.8601 |
| predicted_H | 0.8890 |
| predicted_HR | 0.0980 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0520 |
| predicted_WHIP | 1.1131 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2240 | 0.6681 | model_form_blend |
| predicted_ER | 0.0000 | 0.3180 | 0.1360 | model_form_blend |
| predicted_ERA | - | 2.8601 | 2.8601 | form_only |
| predicted_H | 0.0000 | 0.8890 | 0.3802 | model_form_blend |
| predicted_HR | 0.0000 | 0.0980 | 0.0419 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0520 | 0.4499 | model_form_blend |
| predicted_WHIP | - | 1.1131 | 1.1131 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 22 |
| Season rows before report date | 22 |
| Report year | 2026 |
| Profile rows used | 22 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.57 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 680742 |
| playerID | 680742 |
| playerName | Jonathan Bowlan |
| pos | P |
| started | False |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 25.3 |
| sl_bb_percent | 4.4 |
| sl_woba | 0.252 |
| sl_xwoba | 0.243 |
| sl_sweet_spot_percent | 29.7 |
| sl_barrel_batted_rate | 3.1 |
| sl_hard_hit_percent | 34.4 |
| sl_whiff_percent | 31.8 |
| sl_swing_percent | 48.2 |
| sl_avg_best_speed | 76.724561613 |
| sl_avg_hyper_speed | 92.827352581 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.290 | 0.000 | -0.290 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.516 | 2.000 | -0.516 | -2.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.032 | 2.000 | -0.032 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.648 | 1.000 | 0.352 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.065 | 1.000 | -1.065 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "621237",
"player_name": "José Alvarado",
"position": "Middle Reliever",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 4.000 | 5.000 | 1.000 | 7.000 | 2.000 | 7.7143 | 1.2857 | 0.8571 | 1.0714 | 0.2143 | 1.5000 | 0.4286 |
| last_10 | 0.35 | 10 | 9.000 | 7.000 | 10.000 | 2.000 | 10.000 | 3.000 | 7.0000 | 1.3333 | 0.7778 | 1.1111 | 0.2222 | 1.1111 | 0.3333 |
| season | 0.20 | 31 | 25.000 | 16.000 | 32.000 | 9.000 | 33.000 | 3.000 | 5.7600 | 1.6400 | 0.6400 | 1.2800 | 0.3600 | 1.3200 | 0.1200 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2950 |
| predicted_ER | 0.6220 |
| predicted_ERA | 5.7862 |
| predicted_H | 1.0150 |
| predicted_HR | 0.2310 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0940 |
| predicted_WHIP | 1.3551 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2950 | 0.1292 | model_form_blend |
| predicted_ER | 0.0000 | 0.6220 | 0.2724 | model_form_blend |
| predicted_ERA | - | 5.7862 | 5.7862 | form_only |
| predicted_H | 1.0000 | 1.0150 | 1.0066 | model_form_blend |
| predicted_HR | 0.0000 | 0.2310 | 0.1012 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0940 | 0.4792 | model_form_blend |
| predicted_WHIP | - | 1.3551 | 1.3551 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 5.76 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260613_PHI@MIL |
| game_type | full |
| mlbID | 621237 |
| playerID | 621237 |
| playerName | José Alvarado |
| pos | P |
| started | False |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-13 |
| sl_k_percent | 27.5 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.366 |
| sl_xwoba | 0.302 |
| sl_sweet_spot_percent | 35.6 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 28.8 |
| sl_whiff_percent | 30.2 |
| sl_swing_percent | 48.4 |
| sl_avg_best_speed | 77.179544286 |
| sl_avg_hyper_speed | 93.315815857 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.433 | 2.000 | -0.433 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.233 | 1.000 | -0.233 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.667 | 1.000 | -0.667 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.837 | 1.000 | 0.163 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.033 | 2.000 | -0.033 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "689147",
"player_name": "Orion Kerkering",
"position": "Middle Reliever",
"team": "PHI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 1.000 | 3.000 | 4.000 | 7.000 | 0.000 | 1.6875 | 1.3125 | 0.1875 | 0.5625 | 0.7500 | 1.3125 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 2.000 | 6.000 | 6.000 | 17.000 | 0.000 | 1.7419 | 1.1613 | 0.1935 | 0.5806 | 0.5806 | 1.6452 | 0.0000 |
| season | 0.20 | 30 | 27.200 | 7.000 | 20.000 | 13.000 | 31.000 | 2.000 | 2.2771 | 1.1928 | 0.2530 | 0.7229 | 0.4699 | 1.1205 | 0.0723 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5050 |
| predicted_ER | 0.3450 |
| predicted_ERA | 3.1033 |
| predicted_H | 0.7790 |
| predicted_HR | 0.0770 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1750 |
| predicted_WHIP | 1.2840 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5050 | 0.2266 | model_form_blend |
| predicted_ER | 0.0000 | 0.3450 | 0.1548 | model_form_blend |
| predicted_ERA | - | 3.1033 | 3.1033 | form_only |
| predicted_H | 0.0000 | 0.7790 | 0.3495 | model_form_blend |
| predicted_HR | 0.0000 | 0.0770 | 0.0345 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.1750 | 1.0785 | model_form_blend |
| predicted_WHIP | - | 1.2840 | 1.2840 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 30 |
| Season rows before report date | 30 |
| Report year | 2026 |
| Profile rows used | 30 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 7 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.28 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 26 |
| Pitching_R | 1 |
| Pitching_SO | 2 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260617_MIA@PHI |
| game_type | full |
| mlbID | 689147 |
| playerID | 689147 |
| playerName | Orion Kerkering |
| pos | P |
| started | False |
| startingPosition | P |
| team | PHI |
| teamID | 21 |
| game_date | 2026-06-17 |
| sl_k_percent | 26.1 |
| sl_bb_percent | 10.9 |
| sl_woba | 0.279 |
| sl_xwoba | 0.252 |
| sl_sweet_spot_percent | 26.0 |
| sl_barrel_batted_rate | 5.5 |
| sl_hard_hit_percent | 21.9 |
| sl_whiff_percent | 25.8 |
| sl_swing_percent | 43.0 |
| sl_avg_best_speed | 70.101697222 |
| sl_avg_hyper_speed | 91.783453099 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | SF 4 - 5 ATL | ATL | 0.525 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | SF 4 - 5 ATL | ATL | - | advisory_box_score_draw | True |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.7000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5252 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 5.732 | 5.200 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 6 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 4 | 5 | 0.5252 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 4 | 5 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 4 | 5 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 4 | 5 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.44361156069364166,
"base_low_score_probability": 0.4161849710982659,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.02742658959537575,
"confidence": 0.63295,
"factors": {
"environmental": 0.969,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.0659
},
"prediction": "normal_scoring",
"expected_total_runs": 9,
"pre_simulation_expected_total_runs": 9.7,
"low_score_model_expected_total_runs": 9.7,
"final_simulation_total_runs": 9,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "neutral_shrinkage_no_history",
"sample_size": 0,
"near_bucket_sample_size": 0,
"medium_bucket_sample_size": 0,
"wide_bucket_sample_size": 0,
"global_sample_size": 0,
"bucket_scope": "none",
"sparse_bucket": false,
"raw_pick_probability": 0.5335,
"calibrated_pick_probability": 0.5252,
"predicted_side": "home"
}{
"applied": true,
"home": {
"team": "ATL",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216216216216216,
"runs_scored": 368,
"runs_allowed": 273,
"run_differential": 95,
"run_differential_per_game": 1.2837837837837838,
"available": true
},
"away": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4266666666666667,
"runs_scored": 317,
"runs_allowed": 361,
"run_differential": -44,
"run_differential_per_game": -0.5866666666666667,
"available": true
},
"run_differential_edge_per_game": 1.8705,
"win_pct_edge": 0.195,
"quality_edge": 2.1629,
"margin_adjustment": 0.9084,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 4.035,
"home_runs": 4.43,
"home_win_probability": 0.5335
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "ATL",
"guardrail_predicted_team": "ATL",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "ATL",
"output_opponent_team": "SF",
"final_score_winner": "ATL",
"pre_simulation_winner": "ATL",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "SF 4 - 5 ATL",
"winner": "ATL"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "SF 4 - 5 ATL",
"winner": "ATL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "ATL",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216216216216216,
"runs_scored": 368,
"runs_allowed": 273,
"run_differential": 95,
"run_differential_per_game": 1.2837837837837838,
"available": true
},
"away": {
"team": "SF",
"games": 75,
"wins": 32,
"losses": 43,
"win_pct": 0.4266666666666667,
"runs_scored": 317,
"runs_allowed": 361,
"run_differential": -44,
"run_differential_per_game": -0.5866666666666667,
"available": true
}
}
}{
"applied": false,
"raw_margin": 0.3945,
"final_margin": 0.3945,
"margin_cap": 4.25,
"season_quality_edge": 2.1629,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.525151,
"final_confidence": 0.525151,
"confidence_cap": 0.53,
"score_gap": 0.3945,
"calibration_sample_size": 0,
"calibration_empirical_hit_rate": 0.5,
"calibration_bayesian_hit_rate": 0.5,
"calibration_sparse_bucket": false,
"season_quality_edge": 2.1629,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"season run-differential edge supports the pick",
"historical confidence bucket is sparse"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "SF 4 - 5 ATL",
"winner": "ATL"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "SF 4 - 5 ATL",
"winner": "ATL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 4,
"home_runs": 5,
"confidence": 0.525151,
"home_win_probability": 0.525151,
"away_win_probability": 0.47484899999999997,
"predicted_score_text": "SF 4 - 5 ATL",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "SF",
"original_runs": 4,
"run_delta": 0.0835,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": -0.06064327975080765,
"contact": 0.10338410309602089,
"power": -0.046012086029827926,
"discipline": -0.05737749613562915,
"xwoba": 0.31566666666666665,
"recent_xwoba": 0.31566666666666665,
"barrel": 6.787878787878788,
"ab_hard_contact": -0.39758659794144374,
"ab_bat_speed": 69.26120522362923,
"ab_strikeout_rate": 0.20952557975932262,
"available_players": 9,
"top_players": [
{
"player_id": "805811",
"player_name": "Bryce Eldridge",
"position": "DH_805811",
"weight": 3.0,
"quality": 0.28815933318682807,
"contact": 1.6856318271672772,
"power": 1.6328908697249118,
"discipline": 0.6163861788617886,
"xwoba": 0.403,
"recent_xwoba": 0.403,
"barrel": 13.6,
"ab_hard_contact": -0.3330397483589036,
"ab_bat_speed": 73.21211734693877,
"ab_strikeout_rate": 0.30357142857142855,
"available": 1.0
},
{
"player_id": "687551",
"player_name": "Drew Gilbert",
"position": "DH_687551",
"weight": 3.0,
"quality": -0.3897778482953905,
"contact": -0.8036071574265595,
"power": -1.1094671504111724,
"discipline": 0.03696180911388956,
"xwoba": 0.278,
"recent_xwoba": 0.278,
"barrel": 2.6,
"ab_hard_contact": -1.3523906272710744,
"ab_bat_speed": 67.10556862745098,
"ab_strikeout_rate": 0.20735294117647057,
"available": 1.0
},
{
"player_id": "669477",
"player_name": "Casey Schmitt",
"position": "DH_669477",
"weight": 4.0,
"quality": 0.40858981192312244,
"contact": 0.5874132950761793,
"power": 0.8371345851475874,
"discipline": -0.6357266575771346,
"xwoba": 0.344,
"recent_xwoba": 0.344,
"barrel": 11.8,
"ab_hard_contact": -0.08587972561968006,
"ab_bat_speed": 70.20570686680469,
"ab_strikeout_rate": 0.2028985507246377,
"available": 1.0
},
{
"player_id": "650333",
"player_name": "Luis Arraez",
"position": "DH_650333",
"weight": 4.0,
"quality": -0.31844241851902844,
"contact": 0.09332466633627913,
"power": -0.9545259830265408,
"discipline": 0.7260206326433012,
"xwoba": 0.301,
"recent_xwoba": 0.301,
"barrel": 0.4000000000000001,
"ab_hard_contact": -0.6482339462451288,
"ab_bat_speed": 61.88162153750389,
"ab_strikeout_rate": 0.03529411764705882,
"available": 1.0
},
{
"player_id": "656305",
"player_name": "Matt Chapman",
"position": "DH_656305",
"weight": 4.0,
"quality": -0.38597499720456335,
"contact": -0.4483028032950275,
"power": -0.4473098710800859,
"discipline": 0.2978225915057485,
"xwoba": 0.294,
"recent_xwoba": 0.294,
"barrel": 6.8,
"ab_hard_contact": -0.5435307549350606,
"ab_bat_speed": 74.09591194968554,
"ab_strikeout_rate": 0.2362778730703259,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "527048",
"player_name": "Martín Pérez",
"quality": -0.138354643999007,
"contact": 0.007426451974761604,
"command": -0.17114285714285712,
"movement": -1.0024210444520243,
"xwoba": 0.314,
"whiff": 22.5,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "ATL",
"original_runs": 5,
"run_delta": 0.1738,
"adjusted_runs": 5,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": 0.4106946369399674,
"contact": 0.34356885900238604,
"power": 0.43199998569077713,
"discipline": 0.006038131517883068,
"xwoba": 0.3305757575757575,
"recent_xwoba": 0.3305757575757575,
"barrel": 9.584848484848484,
"ab_hard_contact": 0.6242327534147385,
"ab_bat_speed": 70.96953762734606,
"ab_strikeout_rate": 0.2179735884694467,
"available_players": 9,
"top_players": [
{
"player_id": "686948",
"player_name": "Drake Baldwin",
"position": "DH_686948",
"weight": 4.0,
"quality": 1.520121502114366,
"contact": 1.6522128197268011,
"power": 2.0,
"discipline": 0.2863841947348045,
"xwoba": 0.41,
"recent_xwoba": 0.41,
"barrel": 18.7,
"ab_hard_contact": 1.6678273385981528,
"ab_bat_speed": 73.73786871693122,
"ab_strikeout_rate": 0.20243055555555556,
"available": 1.0
},
{
"player_id": "671739",
"player_name": "Michael Harris II",
"position": "DH_671739",
"weight": 4.0,
"quality": 1.1653517430583513,
"contact": 1.5420916733211236,
"power": 1.7443581310438065,
"discipline": -0.5160423925667827,
"xwoba": 0.384,
"recent_xwoba": 0.384,
"barrel": 15.0,
"ab_hard_contact": 1.538210239923747,
"ab_bat_speed": 73.9240186965812,
"ab_strikeout_rate": 0.2,
"available": 1.0
},
{
"player_id": "621566",
"player_name": "Matt Olson",
"position": "DH_621566",
"weight": 4.0,
"quality": 1.175561627598744,
"contact": 1.1533473922902493,
"power": 1.7113069489233195,
"discipline": 0.07105284552845528,
"xwoba": 0.37,
"recent_xwoba": 0.37,
"barrel": 14.4,
"ab_hard_contact": 1.649186597514006,
"ab_bat_speed": 73.18710813492063,
"ab_strikeout_rate": 0.23154761904761906,
"available": 1.0
},
{
"player_id": "673490",
"player_name": "Ha-Seong Kim",
"position": "DH_673490",
"weight": 3.0,
"quality": -0.28012943466940504,
"contact": -1.975471758150183,
"power": -1.7478147500764176,
"discipline": 0.2886242740998839,
"xwoba": 0.213,
"recent_xwoba": 0.213,
"barrel": 2.4,
"ab_hard_contact": -0.3429616681950199,
"ab_bat_speed": 70.90607638888889,
"ab_strikeout_rate": 0.2833333333333333,
"available": 1.0
},
{
"player_id": "573262",
"player_name": "Mike Yastrzemski",
"position": "DH_573262",
"weight": 3.0,
"quality": -0.2163316769839044,
"contact": -0.2575368886065321,
"power": -0.5175620764267288,
"discipline": -0.02155032907471928,
"xwoba": 0.287,
"recent_xwoba": 0.287,
"barrel": 3.8,
"ab_hard_contact": 0.26513942384637074,
"ab_bat_speed": 68.96588831018518,
"ab_strikeout_rate": 0.2722222222222222,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "694738",
"player_name": "Landen Roupp",
"quality": 0.3083927259290661,
"contact": 0.4922372040327781,
"command": 0.22957142857142845,
"movement": -0.34295671443570264,
"xwoba": 0.289,
"whiff": 26.2,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 4,
"home_runs": 5,
"predicted_score_text": "SF 4 - 5 ATL",
"confidence": 0.525151,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": true,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "SF 4 - 5 ATL",
"winner": "ATL"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 5,
"score_text": "SF 4 - 5 ATL",
"winner": "ATL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away SF | True | 1.0062 | 1.0062 | 1 | 9 | 0 |
| Home ATL | True | 1.0366 | 1.0366 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Rafael Devers | 217 | 1.0037 | 0.0495 | neutral | 0.2950 | 0.2190 | 0.4000 | 9.30 | 49.20 | 91.90 | 13.60 | 31 | 30.10 | 7.90 | -0.6286 |
| DH_642715 | Willy Adames | 113 | 1.0038 | 0.0512 | neutral | 0.2950 | 0.2230 | 0.4090 | 9.80 | 43.40 | 89 | 22.50 | 27.90 | 27.40 | 5.50 | -0.3429 |
| DH_650333 | Luis Arraez | 24 | 0.9744 | -0.3414 | negative_batter_regression | 0.3010 | 0.2870 | 0.3690 | 0.40 | 22.20 | 87.40 | 14.80 | 8.80 | 4.10 | 5.10 | -1.4000 |
| DH_687551 | Drew Gilbert | 344 | 0.9751 | -0.3322 | neutral | 0.2780 | 0.2250 | 0.3100 | 2.60 | 32.80 | 85.20 | 14.90 | 24.80 | 19.40 | 8.50 | -0.4286 |
| DH_656305 | Matt Chapman | 17 | 0.9688 | -0.4158 | negative_batter_regression | 0.2940 | 0.2190 | 0.3350 | 6.80 | 36.80 | 88.20 | 10.20 | 22.30 | 20.70 | 10.40 | -0.9429 |
| DH_691740 | Daniel Susac | 191 | 0.9959 | -0.0545 | neutral | 0.3060 | 0.2690 | 0.3610 | 4.20 | 29.20 | 86.20 | 16.10 | 24.90 | 21.60 | 5.90 | -0.2571 |
| DH_808982 | Jung Hoo Lee | 124 | 1.0220 | 0.2939 | neutral | 0.3350 | 0.3160 | 0.4090 | 2.60 | 30.40 | 87.70 | 10.90 | 12.20 | 9.30 | 4.10 | -0.4857 |
| DH_669477 | Casey Schmitt | 123 | 1.0548 | 0.7312 | neutral | 0.3440 | 0.2820 | 0.4910 | 11.80 | 41.50 | 89.10 | 20.90 | 22.30 | 19.90 | 2.50 | -0.2571 |
| DH_805811 | Bryce Eldridge | 111 | 1.0572 | 0.7620 | neutral | 0.4030 | 0.3020 | 0.5550 | 13.60 | 56.80 | 91.80 | 13.20 | 21.20 | 19.80 | 13 | -0.2857 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Ozzie Albies | 41 | 0.9920 | -0.1062 | neutral | 0.3100 | 0.2590 | 0.3890 | 4.50 | 28.80 | 87.10 | 16.60 | 20.10 | 12.10 | 7 | -0.6571 |
| DH_673490 | Ha-Seong Kim | 556 | 0.9495 | -0.6738 | positive_batter_regression | 0.2130 | 0.1540 | 0.1990 | 2.40 | 20.90 | 84.60 | 14.60 | 19.30 | 24.20 | 10.60 | 2 |
| DH_621566 | Matt Olson | 10 | 1.1017 | 1.3562 | neutral | 0.3700 | 0.2610 | 0.5330 | 14.40 | 52.30 | 93.50 | 18.40 | 25 | 22.70 | 9.70 | -0.3429 |
| DH_671739 | Michael Harris II | 34 | 1.1103 | 1.4710 | neutral | 0.3840 | 0.3080 | 0.5500 | 15 | 51.50 | 92.30 | 11.50 | 26.40 | 20.10 | 4.60 | 0.4000 |
| DH_663586 | Austin Riley | 233 | 1.0144 | 0.1926 | neutral | 0.3020 | 0.2120 | 0.3900 | 10.40 | 45.10 | 91.20 | 19.40 | 32.10 | 28.50 | 8.40 | 0.3429 |
| DH_686948 | Drake Baldwin | 35 | 1.1385 | 1.8460 | neutral | 0.4100 | 0.2970 | 0.5800 | 18.70 | 52.70 | 92.50 | 11.40 | 23.60 | 21.70 | 10.60 | 0.3429 |
| DH_573262 | Mike Yastrzemski | 252 | 0.9815 | -0.2462 | neutral | 0.2870 | 0.2250 | 0.3140 | 3.80 | 41.40 | 90.50 | 15.90 | 24.80 | 24.50 | 9.60 | -0.3143 |
| DH_643289 | Mauricio Dubón | 74 | 1.0158 | 0.2107 | neutral | 0.3220 | 0.2700 | 0.4070 | 6.10 | 28.60 | 86.60 | 15.80 | 17.10 | 15.20 | 6.90 | 0.0857 |
| DH_642086 | Dominic Smith | 201 | 1.0254 | 0.3382 | neutral | 0.3390 | 0.2840 | 0.4480 | 7.10 | 35.90 | 88.80 | 14.90 | 19.20 | 13.10 | 5.70 | 0.3714 |
{
"home": {
"applied": true,
"offense_factor": 1.0366,
"raw_average_factor": 1.0366,
"team_espn_average_rank": 159.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "645277",
"player_name": "Ozzie Albies",
"offense_factor": 0.992,
"quality_score": -0.1062,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "645277",
"espn_id": 33783,
"player_name": "Ozzie Albies",
"team": "ATL",
"role": "batter",
"espn_rank": 41,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 41,
"gp_value": 73.0,
"gp_rank": 26,
"ab_value": 281.0,
"ab_rank": 22,
"r_value": 46.0,
"r_rank": 21,
"h_value": 78.0,
"h_rank": 16,
"avg_value": 0.27758,
"avg_rank": 40.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 37.0,
"rbi_rank": 54,
"tb_value": 121.0,
"tb_rank": 672,
"bb_value": 22.0,
"bb_rank": 123,
"so_value": 38.0,
"so_rank": 208,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3312101,
"obp_rank": "84",
"slg_value": 0.4306049,
"slg_rank": "72",
"ops_value": 0.761815,
"ops_rank": 156.0,
"war_value": 2.19,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 242.0,
"k_percent": 12.1,
"bb_percent": 7.0,
"woba": 0.333,
"xwoba": 0.31,
"xba": 0.259,
"xslg": 0.389,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 4.5,
"hard_hit_percent": 28.8,
"exit_velocity_avg": 87.1,
"launch_angle_avg": 16.6,
"whiff_percent": 20.1,
"swing_percent": 54.7
},
"components": {
"expected_quality": -0.0165,
"regression_edge": -0.6571,
"xwoba_edge": 0.1714,
"xba_edge": 0.5857,
"xslg_edge": 0.2429,
"barrel_edge": -0.5111,
"hard_hit_edge": -1.3857,
"exit_velocity_edge": -0.68,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_673490",
"player_id": "673490",
"player_name": "Ha-Seong Kim",
"offense_factor": 0.9495,
"quality_score": -0.6738,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "673490",
"espn_id": 4089862,
"player_name": "Ha-Seong Kim",
"team": "ATL",
"role": "batter",
"espn_rank": 556,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 556,
"gp_value": 19.0,
"gp_rank": 419,
"ab_value": 59.0,
"ab_rank": 395,
"r_value": 4.0,
"r_rank": 435,
"h_value": 5.0,
"h_rank": 471,
"avg_value": 0.0847457,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 486,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 3.0,
"rbi_rank": 447,
"tb_value": 5.0,
"tb_rank": 2668,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 16.0,
"so_rank": 393,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.1818181,
"obp_rank": "-",
"slg_value": 0.0847457,
"slg_rank": "-",
"ops_value": 0.2665638,
"ops_rank": null,
"war_value": -0.82,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 45.0,
"k_percent": 24.2,
"bb_percent": 10.6,
"woba": 0.142,
"xwoba": 0.213,
"xba": 0.154,
"xslg": 0.199,
"sweet_spot_percent": 16.3,
"barrel_batted_rate": 2.4,
"hard_hit_percent": 20.9,
"exit_velocity_avg": 84.6,
"launch_angle_avg": 14.6,
"whiff_percent": 19.3,
"swing_percent": 43.6
},
"components": {
"expected_quality": -2.0666,
"regression_edge": 2.0,
"xwoba_edge": -2.5,
"xba_edge": -2.4143,
"xslg_edge": -2.4714,
"barrel_edge": -0.9778,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -1.68,
"sweet_spot_edge": -2.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_621566",
"player_id": "621566",
"player_name": "Matt Olson",
"offense_factor": 1.1017,
"quality_score": 1.3562,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "621566",
"espn_id": 32767,
"player_name": "Matt Olson",
"team": "ATL",
"role": "batter",
"espn_rank": 10,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 10,
"gp_value": 73.0,
"gp_rank": 26,
"ab_value": 286.0,
"ab_rank": 14,
"r_value": 52.0,
"r_rank": 6,
"h_value": 79.0,
"h_rank": 12,
"avg_value": 0.2762237,
"avg_rank": 45.0,
"2b_value": 19.0,
"2b_rank": 4,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 20.0,
"hr_rank": 5,
"rbi_value": 51.0,
"rbi_rank": 9,
"tb_value": 158.0,
"tb_rank": 419,
"bb_value": 31.0,
"bb_rank": 55,
"so_value": 73.0,
"so_rank": 38,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3457943,
"obp_rank": "61",
"slg_value": 0.5524475,
"slg_rank": "8",
"ops_value": 0.8982418,
"ops_rank": 53.0,
"war_value": 3.18,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 244.0,
"k_percent": 22.7,
"bb_percent": 9.7,
"woba": 0.382,
"xwoba": 0.37,
"xba": 0.261,
"xslg": 0.533,
"sweet_spot_percent": 32.4,
"barrel_batted_rate": 14.4,
"hard_hit_percent": 52.3,
"exit_velocity_avg": 93.5,
"launch_angle_avg": 18.4,
"whiff_percent": 25.0,
"swing_percent": 46.0
},
"components": {
"expected_quality": 1.6328,
"regression_edge": -0.3429,
"xwoba_edge": 1.8857,
"xba_edge": 0.6429,
"xslg_edge": 2.3,
"barrel_edge": 1.6889,
"hard_hit_edge": 1.9714,
"exit_velocity_edge": 1.88,
"sweet_spot_edge": -0.15,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "DH_671739",
"player_id": "671739",
"player_name": "Michael Harris II",
"offense_factor": 1.1103,
"quality_score": 1.471,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671739",
"espn_id": 42470,
"player_name": "Michael Harris II",
"team": "ATL",
"role": "batter",
"espn_rank": 34,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 34,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 245.0,
"ab_rank": 99,
"r_value": 35.0,
"r_rank": 73,
"h_value": 75.0,
"h_rank": 31,
"avg_value": 0.3061224,
"avg_rank": 8.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 14.0,
"hr_rank": 33,
"rbi_value": 41.0,
"rbi_rank": 36,
"tb_value": 126.0,
"tb_rank": 672,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 52.0,
"so_rank": 126,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.3397683,
"obp_rank": "72",
"slg_value": 0.5142857,
"slg_rank": "20",
"ops_value": 0.854054,
"ops_rank": 52.0,
"war_value": 2.35,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 195.0,
"k_percent": 20.1,
"bb_percent": 4.6,
"woba": 0.37,
"xwoba": 0.384,
"xba": 0.308,
"xslg": 0.55,
"sweet_spot_percent": 30.9,
"barrel_batted_rate": 15.0,
"hard_hit_percent": 51.5,
"exit_velocity_avg": 92.3,
"launch_angle_avg": 11.5,
"whiff_percent": 26.4,
"swing_percent": 55.4
},
"components": {
"expected_quality": 1.8646,
"regression_edge": 0.4,
"xwoba_edge": 2.2857,
"xba_edge": 1.9857,
"xslg_edge": 2.5,
"barrel_edge": 1.8222,
"hard_hit_edge": 1.8571,
"exit_velocity_edge": 1.4,
"sweet_spot_edge": -0.4,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_663586",
"player_id": "663586",
"player_name": "Austin Riley",
"offense_factor": 1.0144,
"quality_score": 0.1926,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663586",
"espn_id": 34982,
"player_name": "Austin Riley",
"team": "ATL",
"role": "batter",
"espn_rank": 233,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 233,
"gp_value": 73.0,
"gp_rank": 26,
"ab_value": 265.0,
"ab_rank": 52,
"r_value": 31.0,
"r_rank": 109,
"h_value": 56.0,
"h_rank": 117,
"avg_value": 0.2113207,
"avg_rank": 150.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 35.0,
"rbi_rank": 73,
"tb_value": 94.0,
"tb_rank": 635,
"bb_value": 25.0,
"bb_rank": 90,
"so_value": 85.0,
"so_rank": 13,
"sb_value": 4.0,
"sb_rank": 124,
"obp_value": 0.2919463,
"obp_rank": "143",
"slg_value": 0.3547169,
"slg_rank": "135",
"ops_value": 0.6466632,
"ops_rank": 8.0,
"war_value": 0.36,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 232.0,
"k_percent": 28.5,
"bb_percent": 8.4,
"woba": 0.29,
"xwoba": 0.302,
"xba": 0.212,
"xslg": 0.39,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 10.4,
"hard_hit_percent": 45.1,
"exit_velocity_avg": 91.2,
"launch_angle_avg": 19.4,
"whiff_percent": 32.1,
"swing_percent": 46.8
},
"components": {
"expected_quality": 0.1681,
"regression_edge": 0.3429,
"xwoba_edge": -0.0571,
"xba_edge": -0.7571,
"xslg_edge": 0.2571,
"barrel_edge": 0.8,
"hard_hit_edge": 0.9429,
"exit_velocity_edge": 0.96,
"sweet_spot_edge": -0.4167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "DH_686948",
"player_id": "686948",
"player_name": "Drake Baldwin",
"offense_factor": 1.1385,
"quality_score": 1.846,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686948",
"espn_id": 4810190,
"player_name": "Drake Baldwin",
"team": "ATL",
"role": "batter",
"espn_rank": 35,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 35,
"gp_value": 50.0,
"gp_rank": 239,
"ab_value": 198.0,
"ab_rank": 160,
"r_value": 41.0,
"r_rank": 46,
"h_value": 59.0,
"h_rank": 103,
"avg_value": 0.2979797,
"avg_rank": 10.0,
"2b_value": 6.0,
"2b_rank": 235,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 14.0,
"hr_rank": 33,
"rbi_value": 39.0,
"rbi_rank": 46,
"tb_value": 107.0,
"tb_rank": 825,
"bb_value": 24.0,
"bb_rank": 100,
"so_value": 49.0,
"so_rank": 143,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3805309,
"obp_rank": "16",
"slg_value": 0.540404,
"slg_rank": "12",
"ops_value": 0.9209349,
"ops_rank": 28.0,
"war_value": 2.34,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 21.7,
"bb_percent": 10.6,
"woba": 0.398,
"xwoba": 0.41,
"xba": 0.297,
"xslg": 0.58,
"sweet_spot_percent": 41.3,
"barrel_batted_rate": 18.7,
"hard_hit_percent": 52.7,
"exit_velocity_avg": 92.5,
"launch_angle_avg": 11.4,
"whiff_percent": 23.6,
"swing_percent": 50.6
},
"components": {
"expected_quality": 2.1406,
"regression_edge": 0.3429,
"xwoba_edge": 2.5,
"xba_edge": 1.6714,
"xslg_edge": 2.5,
"barrel_edge": 2.5,
"hard_hit_edge": 2.0286,
"exit_velocity_edge": 1.48,
"sweet_spot_edge": 1.3333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_573262",
"player_id": "573262",
"player_name": "Mike Yastrzemski",
"offense_factor": 0.9815,
"quality_score": -0.2462,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "573262",
"espn_id": 33341,
"player_name": "Mike Yastrzemski",
"team": "ATL",
"role": "batter",
"espn_rank": 252,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 252,
"gp_value": 67.0,
"gp_rank": 117,
"ab_value": 184.0,
"ab_rank": 180,
"r_value": 26.0,
"r_rank": 158,
"h_value": 42.0,
"h_rank": 193,
"avg_value": 0.2282608,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 62.0,
"tb_rank": 1220,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 51.0,
"so_rank": 129,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3173076,
"obp_rank": "-",
"slg_value": 0.3369565,
"slg_rank": "-",
"ops_value": 0.6542641,
"ops_rank": null,
"war_value": 0.27,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 151.0,
"k_percent": 24.5,
"bb_percent": 9.6,
"woba": 0.298,
"xwoba": 0.287,
"xba": 0.225,
"xslg": 0.314,
"sweet_spot_percent": 30.1,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 41.4,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 15.9,
"whiff_percent": 24.8,
"swing_percent": 41.5
},
"components": {
"expected_quality": -0.366,
"regression_edge": -0.3143,
"xwoba_edge": -0.4857,
"xba_edge": -0.3857,
"xslg_edge": -0.8286,
"barrel_edge": -0.6667,
"hard_hit_edge": 0.4143,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": -0.5333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_643289",
"player_id": "643289",
"player_name": "Mauricio Dubón",
"offense_factor": 1.0158,
"quality_score": 0.2107,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643289",
"espn_id": 35304,
"player_name": "Mauricio Dubon",
"team": "ATL",
"role": "batter",
"espn_rank": 74,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 74,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 255.0,
"ab_rank": 78,
"r_value": 29.0,
"r_rank": 128,
"h_value": 66.0,
"h_rank": 67,
"avg_value": 0.2588235,
"avg_rank": 67.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 40.0,
"rbi_rank": 41,
"tb_value": 104.0,
"tb_rank": 519,
"bb_value": 19.0,
"bb_rank": 161,
"so_value": 42.0,
"so_rank": 178,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3152173,
"obp_rank": "107",
"slg_value": 0.4078431,
"slg_rank": "93",
"ops_value": 0.7230604,
"ops_rank": 200.0,
"war_value": 1.61,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 15.2,
"bb_percent": 6.9,
"woba": 0.319,
"xwoba": 0.322,
"xba": 0.27,
"xslg": 0.407,
"sweet_spot_percent": 38.5,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 28.6,
"exit_velocity_avg": 86.6,
"launch_angle_avg": 15.8,
"whiff_percent": 17.1,
"swing_percent": 51.7
},
"components": {
"expected_quality": 0.2392,
"regression_edge": 0.0857,
"xwoba_edge": 0.5143,
"xba_edge": 0.9,
"xslg_edge": 0.5,
"barrel_edge": -0.1556,
"hard_hit_edge": -1.4143,
"exit_velocity_edge": -0.88,
"sweet_spot_edge": 0.8667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_642086",
"player_id": "642086",
"player_name": "Dominic Smith",
"offense_factor": 1.0254,
"quality_score": 0.3382,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642086",
"espn_id": 33218,
"player_name": "Dominic Smith",
"team": "ATL",
"role": "batter",
"espn_rank": 201,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 201,
"gp_value": 60.0,
"gp_rank": 174,
"ab_value": 159.0,
"ab_rank": 226,
"r_value": 25.0,
"r_rank": 167,
"h_value": 45.0,
"h_rank": 177,
"avg_value": 0.2830188,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 31.0,
"rbi_rank": 104,
"tb_value": 69.0,
"tb_rank": 1096,
"bb_value": 10.0,
"bb_rank": 282,
"so_value": 23.0,
"so_rank": 322,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.32,
"obp_rank": "-",
"slg_value": 0.4339622,
"slg_rank": "-",
"ops_value": 0.7539622,
"ops_rank": null,
"war_value": 0.53,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 116.0,
"k_percent": 13.1,
"bb_percent": 5.7,
"woba": 0.326,
"xwoba": 0.339,
"xba": 0.284,
"xslg": 0.448,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 35.9,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 14.9,
"whiff_percent": 19.2,
"swing_percent": 52.8
},
"components": {
"expected_quality": 0.6853,
"regression_edge": 0.3714,
"xwoba_edge": 1.0,
"xba_edge": 1.3,
"xslg_edge": 1.0857,
"barrel_edge": 0.0667,
"hard_hit_edge": -0.3714,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": 0.4333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0062,
"raw_average_factor": 1.0062,
"team_espn_average_rank": 140.44,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "646240",
"player_name": "Rafael Devers",
"offense_factor": 1.0037,
"quality_score": 0.0495,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "646240",
"espn_id": 33859,
"player_name": "Rafael Devers",
"team": "SF",
"role": "batter",
"espn_rank": 217,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 217,
"gp_value": 74.0,
"gp_rank": 13,
"ab_value": 288.0,
"ab_rank": 11,
"r_value": 34.0,
"r_rank": 83,
"h_value": 69.0,
"h_rank": 55,
"avg_value": 0.2395833,
"avg_rank": 105.0,
"2b_value": 23.0,
"2b_rank": 1,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 35.0,
"rbi_rank": 73,
"tb_value": 124.0,
"tb_rank": 405,
"bb_value": 25.0,
"bb_rank": 90,
"so_value": 95.0,
"so_rank": 9,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3006329,
"obp_rank": "133",
"slg_value": 0.4305555,
"slg_rank": "72",
"ops_value": 0.7311884,
"ops_rank": 61.0,
"war_value": 0.45,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 223.0,
"k_percent": 30.1,
"bb_percent": 7.9,
"woba": 0.317,
"xwoba": 0.295,
"xba": 0.219,
"xslg": 0.4,
"sweet_spot_percent": 31.8,
"barrel_batted_rate": 9.3,
"hard_hit_percent": 49.2,
"exit_velocity_avg": 91.9,
"launch_angle_avg": 13.6,
"whiff_percent": 31.0,
"swing_percent": 49.6
},
"components": {
"expected_quality": 0.1599,
"regression_edge": -0.6286,
"xwoba_edge": -0.2571,
"xba_edge": -0.5571,
"xslg_edge": 0.4,
"barrel_edge": 0.5556,
"hard_hit_edge": 1.5286,
"exit_velocity_edge": 1.24,
"sweet_spot_edge": -0.25,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_642715",
"player_id": "642715",
"player_name": "Willy Adames",
"offense_factor": 1.0038,
"quality_score": 0.0512,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642715",
"espn_id": 33675,
"player_name": "Willy Adames",
"team": "SF",
"role": "batter",
"espn_rank": 113,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 113,
"gp_value": 72.0,
"gp_rank": 37,
"ab_value": 288.0,
"ab_rank": 11,
"r_value": 36.0,
"r_rank": 68,
"h_value": 66.0,
"h_rank": 67,
"avg_value": 0.2291666,
"avg_rank": 129.0,
"2b_value": 18.0,
"2b_rank": 8,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 13.0,
"hr_rank": 39,
"rbi_value": 31.0,
"rbi_rank": 104,
"tb_value": 125.0,
"tb_rank": 336,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 84.0,
"so_rank": 15,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2736156,
"obp_rank": "156",
"slg_value": 0.4340277,
"slg_rank": "69",
"ops_value": 0.7076433,
"ops_rank": 87.0,
"war_value": 1.14,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 228.0,
"k_percent": 27.4,
"bb_percent": 5.5,
"woba": 0.307,
"xwoba": 0.295,
"xba": 0.223,
"xslg": 0.409,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 9.8,
"hard_hit_percent": 43.4,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 22.5,
"whiff_percent": 27.9,
"swing_percent": 48.1
},
"components": {
"expected_quality": 0.1154,
"regression_edge": -0.3429,
"xwoba_edge": -0.2571,
"xba_edge": -0.4429,
"xslg_edge": 0.5286,
"barrel_edge": 0.6667,
"hard_hit_edge": 0.7,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_650333",
"player_id": "650333",
"player_name": "Luis Arraez",
"offense_factor": 0.9744,
"quality_score": -0.3414,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "650333",
"espn_id": 39572,
"player_name": "Luis Arraez",
"team": "SF",
"role": "batter",
"espn_rank": 24,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 24,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 285.0,
"ab_rank": 15,
"r_value": 39.0,
"r_rank": 57,
"h_value": 93.0,
"h_rank": 2,
"avg_value": 0.3263157,
"avg_rank": 2.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 6.0,
"3b_rank": 2,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 30.0,
"rbi_rank": 113,
"tb_value": 129.0,
"tb_rank": 750,
"bb_value": 16.0,
"bb_rank": 193,
"so_value": 13.0,
"so_rank": 418,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.3601286,
"obp_rank": "41",
"slg_value": 0.4526315,
"slg_rank": "53",
"ops_value": 0.8127601,
"ops_rank": 12.0,
"war_value": 2.62,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 4.1,
"bb_percent": 5.1,
"woba": 0.35,
"xwoba": 0.301,
"xba": 0.287,
"xslg": 0.369,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 0.4,
"hard_hit_percent": 22.2,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 14.8,
"whiff_percent": 8.8,
"swing_percent": 50.9
},
"components": {
"expected_quality": -0.1783,
"regression_edge": -1.4,
"xwoba_edge": -0.0857,
"xba_edge": 1.3857,
"xslg_edge": -0.0429,
"barrel_edge": -1.4222,
"hard_hit_edge": -2.3286,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": 1.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_687551",
"player_id": "687551",
"player_name": "Drew Gilbert",
"offense_factor": 0.9751,
"quality_score": -0.3322,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687551",
"espn_id": 4619467,
"player_name": "Drew Gilbert",
"team": "SF",
"role": "batter",
"espn_rank": 344,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 344,
"gp_value": 55.0,
"gp_rank": 204,
"ab_value": 146.0,
"ab_rank": 245,
"r_value": 18.0,
"r_rank": 232,
"h_value": 32.0,
"h_rank": 255,
"avg_value": 0.219178,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": 206,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 14.0,
"rbi_rank": 266,
"tb_value": 52.0,
"tb_rank": 1224,
"bb_value": 14.0,
"bb_rank": 215,
"so_value": 32.0,
"so_rank": 259,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3006134,
"obp_rank": "-",
"slg_value": 0.3561643,
"slg_rank": "-",
"ops_value": 0.6567777,
"ops_rank": null,
"war_value": 0.0,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 105.0,
"k_percent": 19.4,
"bb_percent": 8.5,
"woba": 0.293,
"xwoba": 0.278,
"xba": 0.225,
"xslg": 0.31,
"sweet_spot_percent": 29.3,
"barrel_batted_rate": 2.6,
"hard_hit_percent": 32.8,
"exit_velocity_avg": 85.2,
"launch_angle_avg": 14.9,
"whiff_percent": 24.8,
"swing_percent": 42.0
},
"components": {
"expected_quality": -0.7397,
"regression_edge": -0.4286,
"xwoba_edge": -0.7429,
"xba_edge": -0.3857,
"xslg_edge": -0.8857,
"barrel_edge": -0.9333,
"hard_hit_edge": -0.8143,
"exit_velocity_edge": -1.44,
"sweet_spot_edge": -0.6667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_656305",
"player_id": "656305",
"player_name": "Matt Chapman",
"offense_factor": 0.9688,
"quality_score": -0.4158,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "656305",
"espn_id": 33857,
"player_name": "Matt Chapman",
"team": "SF",
"role": "batter",
"espn_rank": 17,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 17,
"gp_value": 73.0,
"gp_rank": 26,
"ab_value": 270.0,
"ab_rank": 37,
"r_value": 35.0,
"r_rank": 73,
"h_value": 68.0,
"h_rank": 61,
"avg_value": 0.2518518,
"avg_rank": 83.0,
"2b_value": 17.0,
"2b_rank": 12,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 41.0,
"rbi_rank": 36,
"tb_value": 108.0,
"tb_rank": 574,
"bb_value": 32.0,
"bb_rank": 49,
"so_value": 64.0,
"so_rank": 69,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3365695,
"obp_rank": "77",
"slg_value": 0.4,
"slg_rank": "105",
"ops_value": 0.7365695,
"ops_rank": 28.0,
"war_value": 2.85,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 221.0,
"k_percent": 20.7,
"bb_percent": 10.4,
"woba": 0.327,
"xwoba": 0.294,
"xba": 0.219,
"xslg": 0.335,
"sweet_spot_percent": 24.4,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 36.8,
"exit_velocity_avg": 88.2,
"launch_angle_avg": 10.2,
"whiff_percent": 22.3,
"swing_percent": 44.6
},
"components": {
"expected_quality": -0.33,
"regression_edge": -0.9429,
"xwoba_edge": -0.2857,
"xba_edge": -0.5571,
"xslg_edge": -0.5286,
"barrel_edge": 0.0,
"hard_hit_edge": -0.2429,
"exit_velocity_edge": -0.24,
"sweet_spot_edge": -1.4833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_691740",
"player_id": "691740",
"player_name": "Daniel Susac",
"offense_factor": 0.9959,
"quality_score": -0.0545,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691740",
"espn_id": 4751554,
"player_name": "Daniel Susac",
"team": "SF",
"role": "batter",
"espn_rank": 191,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 191,
"gp_value": 31.0,
"gp_rank": 353,
"ab_value": 91.0,
"ab_rank": 340,
"r_value": 5.0,
"r_rank": 422,
"h_value": 26.0,
"h_rank": 288,
"avg_value": 0.2857142,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 13.0,
"rbi_rank": 285,
"tb_value": 33.0,
"tb_rank": 2014,
"bb_value": 6.0,
"bb_rank": 359,
"so_value": 22.0,
"so_rank": 331,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.34,
"obp_rank": "-",
"slg_value": 0.3626373,
"slg_rank": "-",
"ops_value": 0.7026373,
"ops_rank": null,
"war_value": 0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 52.0,
"k_percent": 21.6,
"bb_percent": 5.9,
"woba": 0.315,
"xwoba": 0.306,
"xba": 0.269,
"xslg": 0.361,
"sweet_spot_percent": 41.7,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 29.2,
"exit_velocity_avg": 86.2,
"launch_angle_avg": 16.1,
"whiff_percent": 24.9,
"swing_percent": 54.8
},
"components": {
"expected_quality": -0.099,
"regression_edge": -0.2571,
"xwoba_edge": 0.0571,
"xba_edge": 0.8714,
"xslg_edge": -0.1571,
"barrel_edge": -0.5778,
"hard_hit_edge": -1.3286,
"exit_velocity_edge": -1.04,
"sweet_spot_edge": 1.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_808982",
"player_id": "808982",
"player_name": "Jung Hoo Lee",
"offense_factor": 1.022,
"quality_score": 0.2939,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "808982",
"espn_id": 5134621,
"player_name": "Jung Hoo Lee",
"team": "SF",
"role": "batter",
"espn_rank": 124,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 124,
"gp_value": 66.0,
"gp_rank": 132,
"ab_value": 252.0,
"ab_rank": 89,
"r_value": 36.0,
"r_rank": 68,
"h_value": 82.0,
"h_rank": 7,
"avg_value": 0.3253968,
"avg_rank": 3.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 26.0,
"rbi_rank": 146,
"tb_value": 113.0,
"tb_rank": 663,
"bb_value": 11.0,
"bb_rank": 271,
"so_value": 25.0,
"so_rank": 307,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.3568773,
"obp_rank": "44",
"slg_value": 0.4484126,
"slg_rank": "57",
"ops_value": 0.8052899,
"ops_rank": 101.0,
"war_value": 1.04,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 193.0,
"k_percent": 9.3,
"bb_percent": 4.1,
"woba": 0.352,
"xwoba": 0.335,
"xba": 0.316,
"xslg": 0.409,
"sweet_spot_percent": 39.1,
"barrel_batted_rate": 2.6,
"hard_hit_percent": 30.4,
"exit_velocity_avg": 87.7,
"launch_angle_avg": 10.9,
"whiff_percent": 12.2,
"swing_percent": 47.1
},
"components": {
"expected_quality": 0.4686,
"regression_edge": -0.4857,
"xwoba_edge": 0.8857,
"xba_edge": 2.2143,
"xslg_edge": 0.5286,
"barrel_edge": -0.9333,
"hard_hit_edge": -1.1571,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": 0.9667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_669477",
"player_id": "669477",
"player_name": "Casey Schmitt",
"offense_factor": 1.0548,
"quality_score": 0.7312,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669477",
"espn_id": 4301949,
"player_name": "Casey Schmitt",
"team": "SF",
"role": "batter",
"espn_rank": 123,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 123,
"gp_value": 66.0,
"gp_rank": 132,
"ab_value": 265.0,
"ab_rank": 52,
"r_value": 33.0,
"r_rank": 90,
"h_value": 75.0,
"h_rank": 31,
"avg_value": 0.2830188,
"avg_rank": 29.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 15.0,
"hr_rank": 23,
"rbi_value": 38.0,
"rbi_rank": 51,
"tb_value": 135.0,
"tb_rank": 305,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 56.0,
"so_rank": 99,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.3131672,
"obp_rank": "113",
"slg_value": 0.5094339,
"slg_rank": "22",
"ops_value": 0.8226011,
"ops_rank": 135.0,
"war_value": 1.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 190.0,
"k_percent": 19.9,
"bb_percent": 2.5,
"woba": 0.353,
"xwoba": 0.344,
"xba": 0.282,
"xslg": 0.491,
"sweet_spot_percent": 38.2,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 41.5,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 20.9,
"whiff_percent": 22.3,
"swing_percent": 53.7
},
"components": {
"expected_quality": 1.0263,
"regression_edge": -0.2571,
"xwoba_edge": 1.1429,
"xba_edge": 1.2429,
"xslg_edge": 1.7,
"barrel_edge": 1.1111,
"hard_hit_edge": 0.4286,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": 0.8167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_805811",
"player_id": "805811",
"player_name": "Bryce Eldridge",
"offense_factor": 1.0572,
"quality_score": 0.762,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805811",
"espn_id": 5149064,
"player_name": "Bryce Eldridge",
"team": "SF",
"role": "batter",
"espn_rank": 111,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 111,
"gp_value": 33.0,
"gp_rank": 338,
"ab_value": 113.0,
"ab_rank": 293,
"r_value": 19.0,
"r_rank": 225,
"h_value": 36.0,
"h_rank": 224,
"avg_value": 0.318584,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 6.0,
"hr_rank": 156,
"rbi_value": 16.0,
"rbi_rank": 255,
"tb_value": 63.0,
"tb_rank": 1234,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 26.0,
"so_rank": 301,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.4045801,
"obp_rank": "-",
"slg_value": 0.5575221,
"slg_rank": "-",
"ops_value": 0.9621022,
"ops_rank": null,
"war_value": 1.16,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 46.0,
"k_percent": 19.8,
"bb_percent": 13.0,
"woba": 0.413,
"xwoba": 0.403,
"xba": 0.302,
"xslg": 0.555,
"sweet_spot_percent": 34.1,
"barrel_batted_rate": 13.6,
"hard_hit_percent": 56.8,
"exit_velocity_avg": 91.8,
"launch_angle_avg": 13.2,
"whiff_percent": 21.2,
"swing_percent": 45.9
},
"components": {
"expected_quality": 2.0156,
"regression_edge": -0.2857,
"xwoba_edge": 2.5,
"xba_edge": 1.8143,
"xslg_edge": 2.5,
"barrel_edge": 1.5111,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 1.2,
"sweet_spot_edge": 0.1333,
"launch_angle_hr_bonus": 0.2
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away SF | True | 220 | 0.4235 | 0.9840 | 0.9640 | 1.0236 | 1.0197 | 0.8661 | neutral | 0.2890 | 0.3010 | 26.20 | 10.20 | 26.20 | 3.60 | 29.90 | |
| Home ATL | True | 49 | -0.0702 | 0.7360 | 1.0060 | 0.9794 | 0.9912 | 0.9955 | negative_pitcher_regression | 0.3140 | 0.2800 | 20.80 | 8.60 | 22.50 | 7.10 | 38 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away SF | True | None | 96 | 86.63 | 2371 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1735 | |
| Home ATL | True | None | 82 | 85.45 | 1967 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2396 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0044 |
| home_runs_vs_away_pitcher | 0.9646 |
| home_pitcher_quality_edge | -0.4937 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "527048",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 184.0,
"k_percent": 20.8,
"bb_percent": 8.6,
"woba": 0.28,
"xwoba": 0.314,
"sweet_spot_percent": 36.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.0,
"avg_best_speed": 77.0384,
"avg_hyper_speed": 94.021,
"whiff_percent": 22.5,
"swing_percent": 43.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1484,
"command_and_miss": -0.2393,
"regression_edge": -0.9714,
"xwoba_edge": 0.0286,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.4571,
"bb_edge": 0.15,
"pitch_design_score": -0.2396
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "527048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 82,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 82,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 82,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.4512,
"release_spin_rate": 1966.6648,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2396,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.7111,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0702,
"sample_weight": 0.736,
"run_prevention_factor": 1.006,
"strikeout_factor": 0.9794,
"walk_factor": 0.9912,
"homer_factor": 0.9955,
"woba_minus_xwoba": -0.034,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "527048",
"espn_id": 31098,
"player_name": "Martin Perez",
"team": "ATL",
"role": "pitcher",
"espn_rank": 49,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 49,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 10.0,
"gs_rank": 112,
"qs_value": 1.0,
"qs_rank": 134,
"era_value": 2.9032,
"era_rank": null,
"w_value": 5.0,
"w_rank": 39,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 62.0,
"ip_rank": 111,
"h_value": 44.0,
"h_rank": 132,
"er_value": 20.0,
"er_rank": 150,
"hr_value": 6.0,
"hr_rank": 125,
"bb_value": 21.0,
"bb_rank": 109,
"k_value": 51.0,
"k_rank": 108,
"k_per_9_value": 7.403226,
"k_per_9_rank": 26,
"whip_value": 1.0483,
"whip_rank": null,
"war_value": 1.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "694738",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 246.0,
"k_percent": 26.2,
"bb_percent": 10.2,
"woba": 0.301,
"xwoba": 0.289,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 3.6,
"hard_hit_percent": 29.9,
"avg_best_speed": 77.3306,
"avg_hyper_speed": 92.9089,
"whiff_percent": 26.2,
"swing_percent": 42.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6332,
"command_and_miss": 0.2129,
"regression_edge": 0.3429,
"xwoba_edge": 0.7429,
"barrel_edge": 0.8222,
"hard_hit_edge": 1.2,
"whiff_edge": 0.0714,
"bb_edge": -0.25,
"pitch_design_score": -0.1735
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "694738",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 86.63108355489675,
"release_spin_rate": 2370.7388503015227,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 86.63108355489675,
"release_spin_rate": 2370.7388503015227,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.6311,
"release_spin_rate": 2370.7389,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1735,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.2391,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.4235,
"sample_weight": 0.984,
"run_prevention_factor": 0.964,
"strikeout_factor": 1.0236,
"walk_factor": 1.0197,
"homer_factor": 0.8661,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694738",
"espn_id": 4345404,
"player_name": "Landen Roupp",
"team": "SF",
"role": "pitcher",
"espn_rank": 220,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 220,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 5.0,
"qs_rank": 51,
"era_value": 4.2376,
"era_rank": 51.0,
"w_value": 5.0,
"w_rank": 39,
"l_value": 7.0,
"l_rank": 5,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 74.1,
"ip_rank": 59,
"h_value": 64.0,
"h_rank": 83,
"er_value": 35.0,
"er_rank": 54,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 32.0,
"bb_rank": 16,
"k_value": 82.0,
"k_rank": 25,
"k_per_9_value": 9.928251,
"k_per_9_rank": 11,
"whip_value": 1.2914,
"whip_rank": 43.0,
"war_value": 0.38,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0044,
"home_runs_vs_away_pitcher": 0.9646,
"home_pitcher_quality_edge": -0.4937
},
"score_before": {
"away_runs": 4.4247,
"home_runs": 4.0747
},
"score_after": {
"away_runs": 4.4442,
"home_runs": 3.9304,
"home_win_probability": 0.4474
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away SF | 14-51 | 0.215 | 1 | 3.70 | -175 | cold | average | |
| Home ATL | 17-44 | 0.279 | 1 | 2.90 | -114 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away SF | 32-43 | 0.427 | -44 | -0.587 | True |
| Home ATL | 46-28 | 0.622 | 95 | 1.284 | True |
| Signal | - | - | 1.871 | 2.163 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target SF | - | - | 4 | - | - | - | - |
| Game target ATL | - | - | 5 | - | - | - | - |
| Player finalized SF | 33 | 9 | 3 | 0 | 1 | 0 | 8 |
| Player finalized ATL | 33 | 9 | 4 | 0 | 4 | 0 | 7 |
| Player model fractional SF | 33.21 | 8.03 | 4.00 | 1.08 | 3.96 | 2.51 | 6.68 |
| Player model fractional ATL | 31.95 | 7.82 | 4.38 | 1.23 | 4.21 | 2.76 | 7.09 |
| Simulation box SF | 36 | 9 | 4 | 1 | 4 | 2 | 14 |
| Simulation box ATL | 31 | 7 | 5 | 0 | 5 | 6 | 4 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away SF | Starter | Landen Roupp | 5.10 | 5 | 2 | 6 | 4 | 5.00 | 1.44 | True |
| Away SF | Middle Reliever | Caleb Kilian | 1 | 0 | 1 | 0 | 0 | 3.20 | 1.11 | True |
| Away SF | Middle Reliever | Erik Miller | 1 | 0 | 1 | 1 | 1 | 3.97 | 1.66 | True |
| Away SF | Middle Reliever | Ryan Walker | 0.20 | 0 | 0 | 0 | 1 | 5.52 | 1.53 | True |
| Home ATL | Starter | Martín Pérez | 5.20 | 3 | 8 | 6 | 0 | 3.71 | 1.19 | True |
| Home ATL | Middle Reliever | Dylan Lee | 1 | 0 | 3 | 1 | 2 | 2.51 | 1.02 | True |
| Home ATL | Middle Reliever | Raisel Iglesias | 1 | 0 | 1 | 0 | 0 | 3.22 | 1.33 | True |
| Home ATL | Middle Reliever | Robert Suarez | 1 | 0 | 1 | 1 | 0 | 2.26 | 0.94 | True |
| Home ATL | Middle Reliever | Didier Fuentes | 0.10 | 1 | 1 | 1 | 0 | 2.54 | 1.13 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | SF | batter | CF | Casey Schmitt | better | 10 | 7 | 3 | 6 | 4 | predicted_RBI | 2.6300 | boost | better |
| away | SF | batter | RF | Bryce Eldridge | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 2.2350 | boost | worse |
| away | SF | batter | 3B | Matt Chapman | worse | 9 | 3 | 6 | 2 | 7 | predicted_SO | 2.1370 | boost | worse |
| away | SF | batter | LF | Jung Hoo Lee | worse | 9 | 5 | 4 | 4 | 5 | predicted_H | 2.0200 | boost | better |
| away | SF | batter | 2B | Drew Gilbert | worse | 12 | 6 | 6 | 5 | 7 | predicted_AB | 1.9900 | boost | better |
| home | ATL | batter | C | Ha-Seong Kim | worse | 10 | 2 | 8 | 3 | 7 | predicted_BB | 1.6110 | boost | better |
| home | ATL | batter | 2B | Michael Harris II | better | 10 | 6 | 4 | 7 | 3 | predicted_RBI | 1.4700 | boost | better |
| home | ATL | batter | LF | Mike Yastrzemski | better | 10 | 6 | 4 | 7 | 3 | predicted_H | 1.3500 | boost | better |
| home | ATL | batter | SS | Drake Baldwin | worse | 10 | 3 | 7 | 4 | 6 | predicted_AB | -1.0900 | deboost | worse |
| home | ATL | batter | 1B | Matt Olson | better | 8 | 5 | 3 | 5 | 3 | predicted_AB | -1.0500 | deboost | worse |
| home | ATL | pitcher | Starter | Martín Pérez | deboosted | 2 | 0 | 2 | 1 | 1 | predicted_ER | -1.0000 | deboost | better |
| home | ATL | pitcher | Middle Reliever | Didier Fuentes | worse | 2 | 1 | 1 | 0 | 2 | predicted_ER | 1.0000 | boost | worse |
| home | ATL | batter | DH | Ozzie Albies | worse | 11 | 1 | 10 | 2 | 9 | predicted_H | -0.9800 | deboost | worse |
| home | ATL | batter | RF | Dominic Smith | worse | 11 | 3 | 8 | 2 | 9 | predicted_BB | 0.8730 | boost | better |
| home | ATL | batter | 3B | Austin Riley | worse | 9 | 5 | 4 | 4 | 5 | predicted_SO | 0.8380 | boost | worse |
| away | SF | batter | C | Willy Adames | boosted | 10 | 6 | 4 | 5 | 5 | predicted_SO | 0.8330 | boost | worse |
| away | SF | batter | 1B | Luis Arraez | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 0.8310 | boost | worse |
| away | SF | batter | SS | Daniel Susac | worse | 10 | 2 | 8 | 1 | 9 | predicted_BB | 0.7930 | boost | better |
| home | ATL | batter | CF | Mauricio Dubón | worse | 9 | 3 | 6 | 4 | 5 | predicted_BB | 0.7290 | boost | better |
| away | SF | batter | DH | Rafael Devers | worse | 8 | 0 | 8 | 1 | 7 | predicted_RBI | -0.4800 | deboost | worse |
| away | SF | pitcher | Middle Reliever | Erik Miller | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.3333 | boost | better |
| away | SF | pitcher | Starter | Landen Roupp | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | SF | pitcher | Middle Reliever | Ryan Walker | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Landen Roupp |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.4235 |
| ESPN Rank | 220 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1735 |
| Avg Velo | 86.6311 |
| Avg Spin | 2370.7389 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 5 |
| Pre H | 6 |
| Pre BB | 4 |
| Pre SO | 2 |
| Season ERA | 4.2377 |
| Season WHIP | 1.2915 |
| Role Avg IP | 5.3100 |
| Recent Avg IP | 5.0670 |
| Last Start IP | 4.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"opponent": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"edges": {
"quality_edge": -0.2222,
"offense_edge": -0.0224,
"opponent_offense_edge": 0.0822,
"defense_strength": -0.0465,
"opponent_defense_weakness": -0.2706,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 0.9864,
"run_prevention": 1.0289,
"strikeout": 0.9868
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "694738",
"profile": {
"available": true,
"pitcher_id": "694738",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 246.0,
"k_percent": 26.2,
"bb_percent": 10.2,
"woba": 0.301,
"xwoba": 0.289,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 3.6,
"hard_hit_percent": 29.9,
"avg_best_speed": 77.3306,
"avg_hyper_speed": 92.9089,
"whiff_percent": 26.2,
"swing_percent": 42.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6332,
"command_and_miss": 0.2129,
"regression_edge": 0.3429,
"xwoba_edge": 0.7429,
"barrel_edge": 0.8222,
"hard_hit_edge": 1.2,
"whiff_edge": 0.0714,
"bb_edge": -0.25,
"pitch_design_score": -0.1735
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "694738",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 86.63108355489675,
"release_spin_rate": 2370.7388503015227,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 86.63108355489675,
"release_spin_rate": 2370.7388503015227,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.6311,
"release_spin_rate": 2370.7389,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1735,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.2391,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.4235,
"sample_weight": 0.984,
"run_prevention_factor": 0.964,
"strikeout_factor": 1.0236,
"walk_factor": 1.0197,
"homer_factor": 0.8661,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694738",
"espn_id": 4345404,
"player_name": "Landen Roupp",
"team": "SF",
"role": "pitcher",
"espn_rank": 220,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 220,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 5.0,
"qs_rank": 51,
"era_value": 4.2376,
"era_rank": 51.0,
"w_value": 5.0,
"w_rank": 39,
"l_value": 7.0,
"l_rank": 5,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 74.1,
"ip_rank": 59,
"h_value": 64.0,
"h_rank": 83,
"er_value": 35.0,
"er_rank": 54,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 32.0,
"bb_rank": 16,
"k_value": 82.0,
"k_rank": 25,
"k_per_9_value": 9.928251,
"k_per_9_rank": 11,
"whip_value": 1.2914,
"whip_rank": 43.0,
"war_value": 0.38,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 0.9646,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 0.9646,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0194,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 0.8682,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0232,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 51.2,
"ER": 29,
"H": 49,
"BB": 25,
"SO": 58,
"HR": 4,
"ERA": 5.051612903225807,
"WHIP": 1.4322580645161291,
"K9": 10.103225806451613,
"HR9": 0.6967741935483871,
"games_pitched": 10,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "694738",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 86.63108355489675,
"release_spin_rate": 2370.7388503015227,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 86.63108355489675,
"release_spin_rate": 2370.7388503015227,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.6311,
"release_spin_rate": 2370.7389,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1735,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.2391,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "694738",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 25.1,
"ER": 16.0,
"R": 18.0,
"H": 29.0,
"BB": 11.0,
"SO": 24.0,
"HR": 2.0,
"BF": 112.0,
"Pitches": 483.0
},
"per_game": {
"IP": 5.0,
"ER": 3.2,
"R": 3.6,
"H": 5.8,
"BB": 2.2,
"SO": 4.8,
"HR": 0.4,
"BF": 22.4,
"Pitches": 96.6
},
"rates": {
"ERA": 5.6842,
"WHIP": 1.5789,
"ER_per_IP": 0.63158,
"H_per_IP": 1.14474,
"BB_per_IP": 0.43421,
"SO_per_IP": 0.94737,
"HR_per_IP": 0.07895
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 51.2,
"ER": 29.0,
"R": 31.0,
"H": 49.0,
"BB": 25.0,
"SO": 58.0,
"HR": 4.0,
"BF": 223.0,
"Pitches": 979.0
},
"per_game": {
"IP": 5.1,
"ER": 2.9,
"R": 3.1,
"H": 4.9,
"BB": 2.5,
"SO": 5.8,
"HR": 0.4,
"BF": 22.3,
"Pitches": 97.9
},
"rates": {
"ERA": 5.0516,
"WHIP": 1.4323,
"ER_per_IP": 0.56129,
"H_per_IP": 0.94839,
"BB_per_IP": 0.48387,
"SO_per_IP": 1.12258,
"HR_per_IP": 0.07742
}
},
"season": {
"games": 14,
"totals": {
"IP": 74.1,
"ER": 35.0,
"R": 39.0,
"H": 64.0,
"BB": 32.0,
"SO": 82.0,
"HR": 4.0,
"BF": 313.0,
"Pitches": 1342.0
},
"per_game": {
"IP": 5.1,
"ER": 2.5,
"R": 2.7857,
"H": 4.5714,
"BB": 2.2857,
"SO": 5.8571,
"HR": 0.2857,
"BF": 22.3571,
"Pitches": 95.8571
},
"rates": {
"ERA": 4.2377,
"WHIP": 1.2915,
"ER_per_IP": 0.47085,
"H_per_IP": 0.86099,
"BB_per_IP": 0.43049,
"SO_per_IP": 1.10314,
"HR_per_IP": 0.05381
}
}
},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 2.901,
"predicted_H": 5.261,
"predicted_BB": 2.234,
"predicted_SO": 5.29,
"predicted_HR": 0.483,
"predicted_ERA": 4.9984,
"predicted_WHIP": 1.4351
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.1,
"form": 5.1,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 5.0,
"form": 2.901,
"final": 3.8691,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.261,
"final": 5.6018,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 4.0,
"form": 2.234,
"final": 3.0485,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 5.29,
"final": 3.7726,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.483,
"final": 0.2602,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.9984,
"final": 4.9984,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4351,
"final": 1.4351,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Caleb Kilian |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0788 |
| ESPN Rank | 168 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 3.0619 |
| Season WHIP | 1.1134 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"opponent": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"edges": {
"quality_edge": -0.2222,
"offense_edge": -0.0224,
"opponent_offense_edge": 0.0822,
"defense_strength": -0.0465,
"opponent_defense_weakness": -0.2706,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 0.9864,
"run_prevention": 1.0289,
"strikeout": 0.9868
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668873",
"profile": {
"available": true,
"pitcher_id": "668873",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 95.0,
"k_percent": 28.6,
"bb_percent": 11.3,
"woba": 0.268,
"xwoba": 0.302,
"sweet_spot_percent": 32.1,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 38.5,
"avg_best_speed": 76.9139,
"avg_hyper_speed": 93.727,
"whiff_percent": 27.0,
"swing_percent": 48.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.3229,
"command_and_miss": 0.3521,
"regression_edge": -0.9714,
"xwoba_edge": 0.3714,
"barrel_edge": -0.3778,
"hard_hit_edge": -0.0286,
"whiff_edge": 0.1857,
"bb_edge": -0.525,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "668873",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0788,
"sample_weight": 0.45,
"run_prevention_factor": 0.9933,
"strikeout_factor": 1.019,
"walk_factor": 1.0189,
"homer_factor": 1.0091,
"woba_minus_xwoba": -0.034,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "668873",
"espn_id": 4875969,
"player_name": "Caleb Kilian",
"team": "SF",
"role": "pitcher",
"espn_rank": 168,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 168,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.0618,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 4.0,
"sv_rank": 30,
"hld_value": 3.0,
"hld_rank": 142,
"ip_value": 32.1,
"ip_rank": 217,
"h_value": 21.0,
"h_rank": 312,
"er_value": 11.0,
"er_rank": 294,
"hr_value": 5.0,
"hr_rank": 157,
"bb_value": 15.0,
"bb_rank": 191,
"k_value": 38.0,
"k_rank": 170,
"k_per_9_value": 10.57732,
"k_per_9_rank": 21,
"whip_value": 1.1134,
"whip_rank": null,
"war_value": 0.6,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.997,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.997,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0085,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0041,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0086,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 5,
"H": 9,
"BB": 3,
"SO": 13,
"HR": 2,
"ERA": 4.5,
"WHIP": 1.2,
"K9": 11.7,
"HR9": 1.8,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "668873",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.421,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5622,
"prior_weight": 0.4378
},
"role": "pitcher",
"player_id": "668873",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 1.0,
"SO": 8.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 61.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.2,
"SO": 1.6,
"HR": 0.0,
"BF": 3.4,
"Pitches": 12.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6429,
"ER_per_IP": 0.0,
"H_per_IP": 0.42857,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.71429,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 5.0,
"R": 5.0,
"H": 9.0,
"BB": 3.0,
"SO": 13.0,
"HR": 2.0,
"BF": 42.0,
"Pitches": 148.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.9,
"BB": 0.3,
"SO": 1.3,
"HR": 0.2,
"BF": 4.2,
"Pitches": 14.8
},
"rates": {
"ERA": 4.5,
"WHIP": 1.2,
"ER_per_IP": 0.5,
"H_per_IP": 0.9,
"BB_per_IP": 0.3,
"SO_per_IP": 1.3,
"HR_per_IP": 0.2
}
},
"season": {
"games": 31,
"totals": {
"IP": 32.1,
"ER": 11.0,
"R": 13.0,
"H": 21.0,
"BB": 15.0,
"SO": 38.0,
"HR": 5.0,
"BF": 133.0,
"Pitches": 501.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3548,
"R": 0.4194,
"H": 0.6774,
"BB": 0.4839,
"SO": 1.2258,
"HR": 0.1613,
"BF": 4.2903,
"Pitches": 16.1613
},
"rates": {
"ERA": 3.0619,
"WHIP": 1.1134,
"ER_per_IP": 0.34021,
"H_per_IP": 0.64948,
"BB_per_IP": 0.46392,
"SO_per_IP": 1.17526,
"HR_per_IP": 0.15464
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.356,
"predicted_H": 0.785,
"predicted_BB": 0.324,
"predicted_SO": 1.232,
"predicted_HR": 0.121,
"predicted_ERA": 3.2035,
"predicted_WHIP": 1.1094
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.535,
"form_weight": 0.465,
"form_reliability": 0.5622,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.421,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5622,
"prior_weight": 0.4378
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.356,
"final": 0.1656,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.785,
"final": 0.365,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.324,
"final": 0.1507,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.232,
"final": 1.1079,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.121,
"final": 0.0563,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2035,
"final": 3.2035,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1094,
"final": 1.1094,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Erik Miller |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0028 |
| ESPN Rank | 406 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 4.1186 |
| Season WHIP | 1.5763 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"opponent": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"edges": {
"quality_edge": -0.2222,
"offense_edge": -0.0224,
"opponent_offense_edge": 0.0822,
"defense_strength": -0.0465,
"opponent_defense_weakness": -0.2706,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 0.9864,
"run_prevention": 1.0289,
"strikeout": 0.9868
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669062",
"profile": {
"available": true,
"pitcher_id": "669062",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 67.0,
"k_percent": 29.3,
"bb_percent": 18.5,
"woba": 0.344,
"xwoba": 0.329,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 10.6,
"hard_hit_percent": 31.9,
"avg_best_speed": 70.0439,
"avg_hyper_speed": 93.304,
"whiff_percent": 32.3,
"swing_percent": 36.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.2279,
"command_and_miss": 0.3021,
"regression_edge": 0.4286,
"xwoba_edge": -0.4,
"barrel_edge": -0.7333,
"hard_hit_edge": 0.9143,
"whiff_edge": 0.9429,
"bb_edge": -2.325,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "669062",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.0028,
"sample_weight": 0.45,
"run_prevention_factor": 1.0002,
"strikeout_factor": 1.0345,
"walk_factor": 1.0837,
"homer_factor": 1.0153,
"woba_minus_xwoba": 0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669062",
"espn_id": 4152950,
"player_name": "Erik Miller",
"team": "SF",
"role": "pitcher",
"espn_rank": 406,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 406,
"gp_value": 24.0,
"gp_rank": 139,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.5762,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 8.0,
"hld_rank": 41,
"ip_value": 19.2,
"ip_rank": 386,
"h_value": 17.0,
"h_rank": 386,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 12.355932,
"k_per_9_rank": 19,
"whip_value": 1.7288,
"whip_rank": null,
"war_value": 0.0,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0001,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0001,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0377,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0069,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0155,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 7.1,
"ER": 3,
"H": 8,
"BB": 4,
"SO": 9,
"HR": 2,
"ERA": 3.681818181818182,
"WHIP": 1.6363636363636365,
"K9": 11.045454545454547,
"HR9": 2.4545454545454546,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": false,
"pitcher_id": "669062",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.905,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4385,
"prior_weight": 0.5615
},
"role": "pitcher",
"player_id": "669062",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 2.0,
"SO": 3.0,
"HR": 1.0,
"BF": 17.0,
"Pitches": 72.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 1.2,
"BB": 0.4,
"SO": 0.6,
"HR": 0.2,
"BF": 3.4,
"Pitches": 14.4
},
"rates": {
"ERA": 2.7,
"WHIP": 2.4,
"ER_per_IP": 0.3,
"H_per_IP": 1.8,
"BB_per_IP": 0.6,
"SO_per_IP": 0.9,
"HR_per_IP": 0.3
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.2,
"ER": 3.0,
"R": 3.0,
"H": 8.0,
"BB": 7.0,
"SO": 9.0,
"HR": 2.0,
"BF": 37.0,
"Pitches": 162.0
},
"per_game": {
"IP": 0.2,
"ER": 0.3,
"R": 0.3,
"H": 0.8,
"BB": 0.7,
"SO": 0.9,
"HR": 0.2,
"BF": 3.7,
"Pitches": 16.2
},
"rates": {
"ERA": 3.5217,
"WHIP": 1.9565,
"ER_per_IP": 0.3913,
"H_per_IP": 1.04348,
"BB_per_IP": 0.91304,
"SO_per_IP": 1.17391,
"HR_per_IP": 0.26087
}
},
"season": {
"games": 23,
"totals": {
"IP": 19.2,
"ER": 9.0,
"R": 9.0,
"H": 16.0,
"BB": 15.0,
"SO": 27.0,
"HR": 2.0,
"BF": 89.0,
"Pitches": 421.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3913,
"R": 0.3913,
"H": 0.6957,
"BB": 0.6522,
"SO": 1.1739,
"HR": 0.087,
"BF": 3.8696,
"Pitches": 18.3043
},
"rates": {
"ERA": 4.1186,
"WHIP": 1.5763,
"ER_per_IP": 0.45763,
"H_per_IP": 0.81356,
"BB_per_IP": 0.76271,
"SO_per_IP": 1.37288,
"HR_per_IP": 0.10169
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.307,
"predicted_H": 0.789,
"predicted_BB": 0.368,
"predicted_SO": 0.699,
"predicted_HR": 0.132,
"predicted_ERA": 3.9658,
"predicted_WHIP": 1.6629
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5872,
"form_weight": 0.4128,
"form_reliability": 0.4385,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.905,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4385,
"prior_weight": 0.5615
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.307,
"final": 0.1267,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.789,
"final": 0.9129,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.368,
"final": 0.7391,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.699,
"final": 0.8758,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.132,
"final": 0.0545,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9658,
"final": 3.9658,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.6629,
"final": 1.6629,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Ryan Walker |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0252 |
| ESPN Rank | 577 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1079 |
| Avg Velo | 91.6563 |
| Avg Spin | 2438.5955 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 5.4000 |
| Season WHIP | 1.6364 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"opponent": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"edges": {
"quality_edge": -0.2222,
"offense_edge": -0.0224,
"opponent_offense_edge": 0.0822,
"defense_strength": -0.0465,
"opponent_defense_weakness": -0.2706,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 0.9864,
"run_prevention": 1.0289,
"strikeout": 0.9868
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676254",
"profile": {
"available": true,
"pitcher_id": "676254",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 69.0,
"k_percent": 20.2,
"bb_percent": 11.9,
"woba": 0.345,
"xwoba": 0.314,
"sweet_spot_percent": 28.6,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 30.4,
"avg_best_speed": 71.3305,
"avg_hyper_speed": 92.3604,
"whiff_percent": 17.3,
"swing_percent": 41.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2529,
"command_and_miss": -0.7029,
"regression_edge": 0.8857,
"xwoba_edge": 0.0286,
"barrel_edge": 0.4222,
"hard_hit_edge": 1.1286,
"whiff_edge": -1.2,
"bb_edge": -0.675,
"pitch_design_score": 0.1079
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676254",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 23,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 91.65625355179598,
"release_spin_rate": 2438.5955476682925,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 91.65625355179598,
"release_spin_rate": 2438.5955476682925,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 91.6563,
"release_spin_rate": 2438.5955,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1079,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7709,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.0252,
"sample_weight": 0.45,
"run_prevention_factor": 0.9979,
"strikeout_factor": 0.9725,
"walk_factor": 1.0243,
"homer_factor": 0.9641,
"woba_minus_xwoba": 0.031,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "676254",
"espn_id": 5000950,
"player_name": "Ryan Walker",
"team": "SF",
"role": "pitcher",
"espn_rank": 577,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 577,
"gp_value": 19.0,
"gp_rank": 195,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.4,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 3.0,
"sv_rank": 45,
"hld_value": 3.0,
"hld_rank": 142,
"ip_value": 18.1,
"ip_rank": 400,
"h_value": 20.0,
"h_rank": 330,
"er_value": 11.0,
"er_rank": 294,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 10.0,
"bb_rank": 303,
"k_value": 17.0,
"k_rank": 386,
"k_per_9_value": 8.345454,
"k_per_9_rank": 26,
"whip_value": 1.6363,
"whip_rank": null,
"war_value": -0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9991,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9991,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0109,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9838,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9876,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 7,
"H": 11,
"BB": 5,
"SO": 7,
"HR": 1,
"ERA": 6.750000000000001,
"WHIP": 1.7142857142857144,
"K9": 6.750000000000001,
"HR9": 0.9642857142857144,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": true,
"pitcher_id": "676254",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 23,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 91.65625355179598,
"release_spin_rate": 2438.5955476682925,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 23,
"pitch_usage": 0.0,
"release_speed": 91.65625355179598,
"release_spin_rate": 2438.5955476682925,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 91.6563,
"release_spin_rate": 2438.5955,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1079,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7709,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.641,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4213,
"prior_weight": 0.5787
},
"role": "pitcher",
"player_id": "676254",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 19,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 4.0,
"R": 4.0,
"H": 6.0,
"BB": 3.0,
"SO": 4.0,
"HR": 1.0,
"BF": 23.0,
"Pitches": 97.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.2,
"BB": 0.6,
"SO": 0.8,
"HR": 0.2,
"BF": 4.6,
"Pitches": 19.4
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.9286,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.64286,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 7.0,
"R": 8.0,
"H": 11.0,
"BB": 5.0,
"SO": 7.0,
"HR": 1.0,
"BF": 44.0,
"Pitches": 175.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7,
"R": 0.8,
"H": 1.1,
"BB": 0.5,
"SO": 0.7,
"HR": 0.1,
"BF": 4.4,
"Pitches": 17.5
},
"rates": {
"ERA": 6.75,
"WHIP": 1.7143,
"ER_per_IP": 0.75,
"H_per_IP": 1.17857,
"BB_per_IP": 0.53571,
"SO_per_IP": 0.75,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 19,
"totals": {
"IP": 18.1,
"ER": 11.0,
"R": 12.0,
"H": 20.0,
"BB": 10.0,
"SO": 17.0,
"HR": 2.0,
"BF": 84.0,
"Pitches": 337.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5789,
"R": 0.6316,
"H": 1.0526,
"BB": 0.5263,
"SO": 0.8947,
"HR": 0.1053,
"BF": 4.4211,
"Pitches": 17.7368
},
"rates": {
"ERA": 5.4,
"WHIP": 1.6364,
"ER_per_IP": 0.6,
"H_per_IP": 1.09091,
"BB_per_IP": 0.54545,
"SO_per_IP": 0.92727,
"HR_per_IP": 0.10909
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.377,
"predicted_H": 0.659,
"predicted_BB": 0.281,
"predicted_SO": 0.549,
"predicted_HR": 0.092,
"predicted_ERA": 5.5218,
"predicted_WHIP": 1.5301
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5945,
"form_weight": 0.4055,
"form_reliability": 0.4213,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.641,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4213,
"prior_weight": 0.5787
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.377,
"final": 0.1529,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.659,
"final": 0.2672,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.281,
"final": 0.7084,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.549,
"final": 0.2226,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.092,
"final": 0.0373,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.5218,
"final": 5.5218,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5301,
"final": 1.5301,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.311 | 0.000 | 0.000 | Hitting_2B | 0.279 | 2.000 | -0.279 | -2.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.070 | 4.000 | 4.000 | Hitting_AB | 3.887 | 3.000 | 0.113 | 1.000 |
| predicted_AVG | 0.239 | 0.250 | 0.250 | Hitting_AVG | 0.251 | 0.667 | -0.001 | -0.417 |
| predicted_BB | 0.351 | 0.000 | 0.000 | Hitting_BB | 0.296 | 1.000 | -0.296 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.970 | 1.000 | 1.000 | Hitting_H | 0.976 | 2.000 | 0.024 | -1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.130 | 0.000 | -0.130 | 0.000 |
| predicted_OBP | 0.343 | 0.250 | 0.250 | Hitting_OBP | 0.303 | 0.750 | -0.053 | -0.500 |
| predicted_R | 0.459 | 0.000 | 0.000 | Hitting_R | 0.425 | 0.000 | -0.425 | 0.000 |
| predicted_RBI | 0.480 | 0.000 | 0.000 | Hitting_RBI | 0.526 | 1.000 | -0.526 | -1.000 |
| predicted_SLG | 0.455 | 0.250 | 0.250 | Hitting_SLG | 0.425 | 1.333 | -0.175 | -1.083 |
| predicted_SO | 1.270 | 1.000 | 1.000 | Hitting_SO | 1.255 | 1.000 | -0.255 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 7 |
| Biggest Boost | - |
| Biggest Deboost | predicted_RBI: 0.4800 -> 0.0000 (deboost -0.4800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 4 | 2 | 5 | 1 | predicted_BB: 0.3510 -> 0.4295 (boost 0.0785, better) | predicted_AB: 4.0700 -> 3.8769 (deboost -0.1931, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3485 -> 0.3186 (deboost -0.0299, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 3 | 4 | predicted_AB: 3.8769 -> 4.0000 (boost 0.1231, better) | predicted_RBI: 0.4437 -> 0.0000 (deboost -0.4437, worse) | AB rounded to 4 (raw=4.07), rates preserved: AVG=0.232 HR/AB=0.038 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4267 -> 0.0000 (deboost -0.4267, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2437 -> 0.2500 (boost 0.0063, better) | predicted_SLG: 0.4555 -> 0.2500 (deboost -0.2055, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 0 | 0 | 0 | 0 | 0 | - | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4555 (boost 0.2055, better) | predicted_AVG: 0.2500 -> 0.2437 (deboost -0.0063, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "646240",
"player_name": "Rafael Devers",
"position": "DH",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.311,
"predicted_3B": 0.014,
"predicted_AB": 4.07,
"predicted_AVG": 0.239,
"predicted_BB": 0.351,
"predicted_H": 0.97,
"predicted_HR": 0.16,
"predicted_OBP": 0.343,
"predicted_R": 0.459,
"predicted_RBI": 0.48,
"predicted_SLG": 0.455,
"predicted_SO": 1.27
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3339,
"predicted_3B": 0.0115,
"predicted_AB": 3.8769,
"predicted_AVG": 0.2501,
"predicted_BB": 0.4295,
"predicted_H": 0.9649,
"predicted_HBP": 0.01,
"predicted_HR": 0.1613,
"predicted_OBP": 0.3485,
"predicted_R": 0.4416,
"predicted_RBI": 0.4592,
"predicted_SLG": 0.4766,
"predicted_SO": 1.1843
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.311,
"after": 0.3339,
"delta": 0.0229,
"percent_delta": 0.0736,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0115,
"delta": -0.0025,
"percent_delta": -0.1786,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.07,
"after": 3.8769,
"delta": -0.1931,
"percent_delta": -0.0474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2501,
"delta": 0.0111,
"percent_delta": 0.0464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.351,
"after": 0.4295,
"delta": 0.0785,
"percent_delta": 0.2236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 0.9649,
"delta": -0.0051,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.1613,
"delta": 0.0013,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3485,
"delta": 0.0055,
"percent_delta": 0.016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.459,
"after": 0.4416,
"delta": -0.0174,
"percent_delta": -0.0379,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.4592,
"delta": -0.0208,
"percent_delta": -0.0433,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.4766,
"delta": 0.0216,
"percent_delta": 0.0475,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.27,
"after": 1.1843,
"delta": -0.0857,
"percent_delta": -0.0675,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 5,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.351,
"after": 0.4295,
"delta": 0.0785,
"percent_delta": 0.2236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.07,
"after": 3.8769,
"delta": -0.1931,
"percent_delta": -0.0474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 74
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3339,
"predicted_3B": 0.0115,
"predicted_AB": 3.8769,
"predicted_AVG": 0.2437,
"predicted_BB": 0.4262,
"predicted_H": 0.9448,
"predicted_HBP": 0.01,
"predicted_HR": 0.1547,
"predicted_OBP": 0.3186,
"predicted_R": 0.4267,
"predicted_RBI": 0.4437,
"predicted_SLG": 0.4555,
"predicted_SO": 1.1933
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3339,
"after": 0.3339,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0115,
"after": 0.0115,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8769,
"after": 3.8769,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2501,
"after": 0.2437,
"delta": -0.0064,
"percent_delta": -0.0256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4295,
"after": 0.4262,
"delta": -0.0033,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9649,
"after": 0.9448,
"delta": -0.0201,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1613,
"after": 0.1547,
"delta": -0.0066,
"percent_delta": -0.0409,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3485,
"after": 0.3186,
"delta": -0.0299,
"percent_delta": -0.0858,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4416,
"after": 0.4267,
"delta": -0.0149,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4592,
"after": 0.4437,
"delta": -0.0155,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4766,
"after": 0.4555,
"delta": -0.0211,
"percent_delta": -0.0443,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1843,
"after": 1.1933,
"delta": 0.009,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3485,
"after": 0.3186,
"delta": -0.0299,
"percent_delta": -0.0858,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.07), rates preserved: AVG=0.232 HR/AB=0.038",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3339,
"after": 0.0,
"delta": -0.3339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0115,
"after": 0.0,
"delta": -0.0115,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8769,
"after": 4.0,
"delta": 0.1231,
"percent_delta": 0.0318,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4262,
"after": 0.0,
"delta": -0.4262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9448,
"after": 1.0,
"delta": 0.0552,
"percent_delta": 0.0584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1547,
"after": 0.0,
"delta": -0.1547,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4437,
"after": 0.0,
"delta": -0.4437,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1933,
"after": 1.0,
"delta": -0.1933,
"percent_delta": -0.162,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.8769,
"after": 4.0,
"delta": 0.1231,
"percent_delta": 0.0318,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4437,
"after": 0.0,
"delta": -0.4437,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.333)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8857,
"bvp": 0.1143
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4267,
"after": 0.0,
"delta": -0.4267,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4267,
"after": 0.0,
"delta": -0.4267,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2437,
"after": 0.25,
"delta": 0.0063,
"percent_delta": 0.0259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3186,
"after": 0.25,
"delta": -0.0686,
"percent_delta": -0.2153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4555,
"after": 0.25,
"delta": -0.2055,
"percent_delta": -0.4512,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2437,
"after": 0.25,
"delta": 0.0063,
"percent_delta": 0.0259,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4555,
"after": 0.25,
"delta": -0.2055,
"percent_delta": -0.4512,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2437,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3186,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4555,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2437,
"delta": -0.0063,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3186,
"delta": 0.0686,
"percent_delta": 0.2745,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4555,
"delta": 0.2055,
"percent_delta": 0.8219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4555,
"delta": 0.2055,
"percent_delta": 0.8219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2437,
"delta": -0.0063,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.311,
"after": 0.0,
"delta": -0.311,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.07,
"after": 4.0,
"delta": -0.07,
"percent_delta": -0.0172,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2437,
"delta": 0.0047,
"percent_delta": 0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.351,
"after": 0.0,
"delta": -0.351,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.0,
"delta": 0.03,
"percent_delta": 0.0309,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3186,
"delta": -0.0244,
"percent_delta": -0.0711,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.459,
"after": 0.0,
"delta": -0.459,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.455,
"after": 0.4555,
"delta": 0.0005,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.27,
"after": 1.0,
"delta": -0.27,
"percent_delta": -0.2126,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 0,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.311 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.070 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.351 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.343 | - |
| predicted_R | 0.459 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.455 | - |
| predicted_SO | 1.270 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.334 | 0.023 |
| predicted_3B | 0.011 | -0.003 |
| predicted_AB | 3.877 | -0.193 |
| predicted_AVG | 0.250 | 0.011 |
| predicted_BB | 0.429 | 0.079 |
| predicted_H | 0.965 | -0.005 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.161 | 0.001 |
| predicted_OBP | 0.348 | 0.005 |
| predicted_R | 0.442 | -0.017 |
| predicted_RBI | 0.459 | -0.021 |
| predicted_SLG | 0.477 | 0.022 |
| predicted_SO | 1.184 | -0.086 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.334 | 0.000 |
| predicted_3B | 0.011 | 0.000 |
| predicted_AB | 3.877 | 0.000 |
| predicted_AVG | 0.244 | -0.006 |
| predicted_BB | 0.426 | -0.003 |
| predicted_H | 0.945 | -0.020 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.155 | -0.007 |
| predicted_OBP | 0.319 | -0.030 |
| predicted_R | 0.427 | -0.015 |
| predicted_RBI | 0.444 | -0.016 |
| predicted_SLG | 0.456 | -0.021 |
| predicted_SO | 1.193 | 0.009 |
AB rounded to 4 (raw=4.07), rates preserved: AVG=0.232 HR/AB=0.038
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=12.0, weight=0.114, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.334 |
| predicted_3B | 0.000 | -0.011 |
| predicted_AB | 4.000 | 0.123 |
| predicted_AVG | 0.250 | 0.006 |
| predicted_BB | 0.000 | -0.426 |
| predicted_H | 1.000 | 0.055 |
| predicted_HR | 0.000 | -0.155 |
| predicted_OBP | 0.250 | -0.069 |
| predicted_R | 0.000 | -0.427 |
| predicted_RBI | 0.000 | -0.444 |
| predicted_SLG | 0.250 | -0.206 |
| predicted_SO | 1.000 | -0.193 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 6.000 | 3.000 | 0.000 | 1.000 | 2.000 | 1.000 | 4.000 | 3.000 | 0.4000 | 0.5263 | 0.8000 | 0.4000 | 0.0667 | 0.1333 | 0.2667 | 0.2000 |
| last_10 | 0.20 | 10 | - | 34.000 | 7.000 | 3.000 | 0.000 | 2.000 | 3.000 | 5.000 | 8.000 | 11.000 | 0.2059 | 0.3571 | 0.4706 | 0.2059 | 0.0588 | 0.0882 | 0.2353 | 0.3235 |
| season | 0.60 | 74 | - | 285.000 | 69.000 | 23.000 | 1.000 | 10.000 | 35.000 | 34.000 | 26.000 | 94.000 | 0.2421 | 0.3057 | 0.4351 | 0.2421 | 0.0351 | 0.1228 | 0.0912 | 0.3298 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3650 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.6150 |
| predicted_AVG | 0.2651 |
| predicted_BB | 0.5360 |
| predicted_H | 0.9580 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.1630 |
| predicted_OBP | 0.3560 |
| predicted_R | 0.4180 |
| predicted_RBI | 0.4310 |
| predicted_SLG | 0.5060 |
| predicted_SO | 1.0680 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3110 | 0.3650 | 0.3339 | model_form_blend |
| predicted_3B | 0.0140 | 0.0080 | 0.0115 | model_form_blend |
| predicted_AB | 4.0700 | 3.6150 | 3.8769 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2651 | 0.2501 | model_form_blend |
| predicted_BB | 0.3510 | 0.5360 | 0.4295 | model_form_blend |
| predicted_H | 0.9700 | 0.9580 | 0.9649 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.1600 | 0.1630 | 0.1613 | model_form_blend |
| predicted_OBP | 0.3430 | 0.3560 | 0.3485 | model_form_blend |
| predicted_R | 0.4590 | 0.4180 | 0.4416 | model_form_blend |
| predicted_RBI | 0.4800 | 0.4310 | 0.4592 | model_form_blend |
| predicted_SLG | 0.4550 | 0.5060 | 0.4766 | model_form_blend |
| predicted_SO | 1.2700 | 1.0680 | 1.1843 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 247 |
| Season rows before report date | 247 |
| Report year | 2026 |
| Profile rows used | 74 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.242 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 2 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 646240 |
| playerID | 646240 |
| playerName | Rafael Devers |
| pos | 1B |
| started | True |
| startingPosition | DH |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 30.1 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.317 |
| sl_xwoba | 0.295 |
| sl_xba | 0.219 |
| sl_xslg | 0.4 |
| sl_sweet_spot_percent | 31.8 |
| sl_barrel_batted_rate | 9.3 |
| sl_hard_hit_percent | 49.2 |
| sl_exit_velocity_avg | 91.9 |
| sl_launch_angle_avg | 13.6 |
| sl_whiff_percent | 31.0 |
| sl_swing_percent | 49.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.250 | 1.000 | 0.000 | Hitting_2B | 0.313 | 0.000 | 0.687 | 1.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 4.360 | 5.000 | 4.000 | Hitting_AB | 4.169 | 4.000 | 0.831 | 1.000 |
| predicted_AVG | 0.212 | 0.200 | 0.250 | Hitting_AVG | 0.250 | 0.250 | -0.050 | -0.050 |
| predicted_BB | 0.222 | 0.000 | 0.000 | Hitting_BB | 0.189 | 0.000 | -0.189 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_H | 0.920 | 1.000 | 1.000 | Hitting_H | 1.040 | 1.000 | -0.040 | 0.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.145 | 1.000 | -0.145 | -1.000 |
| predicted_OBP | 0.255 | 0.200 | 0.250 | Hitting_OBP | 0.284 | 0.250 | -0.084 | -0.050 |
| predicted_R | 0.500 | 1.000 | 0.000 | Hitting_R | 0.526 | 1.000 | 0.474 | 0.000 |
| predicted_RBI | 0.450 | 1.000 | 0.000 | Hitting_RBI | 0.398 | 1.000 | 0.602 | 0.000 |
| predicted_SLG | 0.408 | 0.400 | 0.250 | Hitting_SLG | 0.438 | 1.000 | -0.038 | -0.600 |
| predicted_SO | 1.167 | 2.000 | 1.000 | Hitting_SO | 1.209 | 1.000 | 0.791 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_SO: 1.1670 -> 2.0000 (boost 0.8330, worse) |
| Biggest Deboost | predicted_BB: 0.2220 -> 0.0000 (deboost -0.2220, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 0 | 4 | 0 | 4 | - | predicted_AB: 4.3600 -> 4.1265 (deboost -0.2335, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4114 -> 0.4033 (deboost -0.0081, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.8278 -> 1.0000 (boost 0.1722, better) | predicted_RBI: 0.4099 -> 0.0000 (deboost -0.4099, worse) | AB rounded to 4 (raw=4.36), rates preserved: AVG=0.190 HR/AB=0.046 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.263) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4524 -> 0.0000 (deboost -0.4524, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2006 -> 0.2500 (boost 0.0494, better) | predicted_SLG: 0.4033 -> 0.2500 (deboost -0.1533, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 5 | 0 | 4 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.4033 (boost 0.1533, better) | predicted_AVG: 0.2500 -> 0.2006 (deboost -0.0494, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "642715",
"player_name": "Willy Adames",
"position": "C",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.25,
"predicted_3B": 0.014,
"predicted_AB": 4.36,
"predicted_AVG": 0.212,
"predicted_BB": 0.222,
"predicted_H": 0.92,
"predicted_HR": 0.2,
"predicted_OBP": 0.255,
"predicted_R": 0.5,
"predicted_RBI": 0.45,
"predicted_SLG": 0.408,
"predicted_SO": 1.167
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2068,
"predicted_3B": 0.0119,
"predicted_AB": 4.1265,
"predicted_AVG": 0.205,
"predicted_BB": 0.1962,
"predicted_H": 0.8454,
"predicted_HBP": 0.01,
"predicted_HR": 0.2106,
"predicted_OBP": 0.2438,
"predicted_R": 0.4682,
"predicted_RBI": 0.4242,
"predicted_SLG": 0.4114,
"predicted_SO": 1.1183
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.2068,
"delta": -0.0432,
"percent_delta": -0.1728,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.36,
"after": 4.1265,
"delta": -0.2335,
"percent_delta": -0.0536,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.205,
"delta": -0.007,
"percent_delta": -0.033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.1962,
"delta": -0.0258,
"percent_delta": -0.1162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 0.8454,
"delta": -0.0746,
"percent_delta": -0.0811,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.2106,
"delta": 0.0106,
"percent_delta": 0.053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.255,
"after": 0.2438,
"delta": -0.0112,
"percent_delta": -0.0439,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.4682,
"delta": -0.0318,
"percent_delta": -0.0636,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.4242,
"delta": -0.0258,
"percent_delta": -0.0573,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4114,
"delta": 0.0034,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 1.1183,
"delta": -0.0487,
"percent_delta": -0.0417,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.36,
"after": 4.1265,
"delta": -0.2335,
"percent_delta": -0.0536,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 72
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2068,
"predicted_3B": 0.0119,
"predicted_AB": 4.1265,
"predicted_AVG": 0.2006,
"predicted_BB": 0.1947,
"predicted_H": 0.8278,
"predicted_HBP": 0.01,
"predicted_HR": 0.202,
"predicted_OBP": 0.2366,
"predicted_R": 0.4524,
"predicted_RBI": 0.4099,
"predicted_SLG": 0.4033,
"predicted_SO": 1.1268
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2068,
"after": 0.2068,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1265,
"after": 4.1265,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.205,
"after": 0.2006,
"delta": -0.0044,
"percent_delta": -0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1962,
"after": 0.1947,
"delta": -0.0015,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8454,
"after": 0.8278,
"delta": -0.0176,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2106,
"after": 0.202,
"delta": -0.0086,
"percent_delta": -0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2438,
"after": 0.2366,
"delta": -0.0072,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4682,
"after": 0.4524,
"delta": -0.0158,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4242,
"after": 0.4099,
"delta": -0.0143,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4114,
"after": 0.4033,
"delta": -0.0081,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1183,
"after": 1.1268,
"delta": 0.0085,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4114,
"after": 0.4033,
"delta": -0.0081,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.36), rates preserved: AVG=0.190 HR/AB=0.046",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2068,
"after": 0.0,
"delta": -0.2068,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1265,
"after": 4.0,
"delta": -0.1265,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1947,
"after": 0.0,
"delta": -0.1947,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8278,
"after": 1.0,
"delta": 0.1722,
"percent_delta": 0.208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.202,
"after": 0.0,
"delta": -0.202,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4099,
"after": 0.0,
"delta": -0.4099,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1268,
"after": 1.0,
"delta": -0.1268,
"percent_delta": -0.1125,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8278,
"after": 1.0,
"delta": 0.1722,
"percent_delta": 0.208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4099,
"after": 0.0,
"delta": -0.4099,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.263)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8449,
"bvp": 0.1551
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4524,
"after": 0.0,
"delta": -0.4524,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4524,
"after": 0.0,
"delta": -0.4524,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2006,
"after": 0.25,
"delta": 0.0494,
"percent_delta": 0.2463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2366,
"after": 0.25,
"delta": 0.0134,
"percent_delta": 0.0566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4033,
"after": 0.25,
"delta": -0.1533,
"percent_delta": -0.3801,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2006,
"after": 0.25,
"delta": 0.0494,
"percent_delta": 0.2463,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4033,
"after": 0.25,
"delta": -0.1533,
"percent_delta": -0.3801,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2006,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2366,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4033,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2006,
"delta": -0.0494,
"percent_delta": -0.1976,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2366,
"delta": -0.0134,
"percent_delta": -0.0535,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4033,
"delta": 0.1533,
"percent_delta": 0.6134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4033,
"delta": 0.1533,
"percent_delta": 0.6134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2006,
"delta": -0.0494,
"percent_delta": -0.1976,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 1.0,
"delta": 0.75,
"percent_delta": 3.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.36,
"after": 5.0,
"delta": 0.64,
"percent_delta": 0.1468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.2006,
"delta": -0.0114,
"percent_delta": -0.0538,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.0,
"delta": 0.08,
"percent_delta": 0.087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.255,
"after": 0.2366,
"delta": -0.0184,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 1.0,
"delta": 0.55,
"percent_delta": 1.2222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4033,
"delta": -0.0047,
"percent_delta": -0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 2.0,
"delta": 0.833,
"percent_delta": 0.7138,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.167,
"after": 2.0,
"delta": 0.833,
"percent_delta": 0.7138,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.250 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.360 | - |
| predicted_AVG | 0.212 | - |
| predicted_BB | 0.222 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.255 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.408 | - |
| predicted_SO | 1.167 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.207 | -0.043 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 4.127 | -0.234 |
| predicted_AVG | 0.205 | -0.007 |
| predicted_BB | 0.196 | -0.026 |
| predicted_H | 0.845 | -0.075 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.211 | 0.011 |
| predicted_OBP | 0.244 | -0.011 |
| predicted_R | 0.468 | -0.032 |
| predicted_RBI | 0.424 | -0.026 |
| predicted_SLG | 0.411 | 0.003 |
| predicted_SO | 1.118 | -0.049 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.207 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 4.127 | 0.000 |
| predicted_AVG | 0.201 | -0.004 |
| predicted_BB | 0.195 | -0.002 |
| predicted_H | 0.828 | -0.018 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.202 | -0.009 |
| predicted_OBP | 0.237 | -0.007 |
| predicted_R | 0.452 | -0.016 |
| predicted_RBI | 0.410 | -0.014 |
| predicted_SLG | 0.403 | -0.008 |
| predicted_SO | 1.127 | 0.008 |
AB rounded to 4 (raw=4.36), rates preserved: AVG=0.190 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=19.0, weight=0.155, BvP AVG=0.263)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.207 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | -0.127 |
| predicted_AVG | 0.250 | 0.049 |
| predicted_BB | 0.000 | -0.195 |
| predicted_H | 1.000 | 0.172 |
| predicted_HR | 0.000 | -0.202 |
| predicted_OBP | 0.250 | 0.013 |
| predicted_R | 0.000 | -0.452 |
| predicted_RBI | 0.000 | -0.410 |
| predicted_SLG | 0.250 | -0.153 |
| predicted_SO | 1.000 | -0.127 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 3.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 0.000 | 3.000 | 0.1765 | 0.1765 | 0.5294 | 0.1765 | 0.1177 | 0.1177 | 0.0000 | 0.1765 |
| last_10 | 0.20 | 10 | - | 37.000 | 3.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 1.000 | 13.000 | 0.0811 | 0.1053 | 0.2432 | 0.0811 | 0.0541 | 0.0541 | 0.0270 | 0.3513 |
| season | 0.60 | 72 | - | 286.000 | 66.000 | 18.000 | 1.000 | 13.000 | 31.000 | 36.000 | 16.000 | 84.000 | 0.2308 | 0.2730 | 0.4371 | 0.2308 | 0.0454 | 0.1084 | 0.0559 | 0.2937 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1480 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.8090 |
| predicted_AVG | 0.1954 |
| predicted_BB | 0.1610 |
| predicted_H | 0.7440 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.2250 |
| predicted_OBP | 0.2285 |
| predicted_R | 0.4250 |
| predicted_RBI | 0.3890 |
| predicted_SLG | 0.4161 |
| predicted_SO | 1.0520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.1480 | 0.2068 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 4.3600 | 3.8090 | 4.1265 | model_form_blend |
| predicted_AVG | 0.2120 | 0.1954 | 0.2050 | model_form_blend |
| predicted_BB | 0.2220 | 0.1610 | 0.1962 | model_form_blend |
| predicted_H | 0.9200 | 0.7440 | 0.8454 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.2000 | 0.2250 | 0.2106 | model_form_blend |
| predicted_OBP | 0.2550 | 0.2285 | 0.2438 | model_form_blend |
| predicted_R | 0.5000 | 0.4250 | 0.4682 | model_form_blend |
| predicted_RBI | 0.4500 | 0.3890 | 0.4242 | model_form_blend |
| predicted_SLG | 0.4080 | 0.4161 | 0.4114 | model_form_blend |
| predicted_SO | 1.1670 | 1.0520 | 1.1183 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 249 |
| Season rows before report date | 249 |
| Report year | 2026 |
| Profile rows used | 72 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.231 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 642715 |
| playerID | 642715 |
| playerName | Willy Adames |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 27.4 |
| sl_bb_percent | 5.5 |
| sl_woba | 0.307 |
| sl_xwoba | 0.295 |
| sl_xba | 0.223 |
| sl_xslg | 0.409 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 9.8 |
| sl_hard_hit_percent | 43.4 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 22.5 |
| sl_whiff_percent | 27.9 |
| sl_swing_percent | 48.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.225 | 0.000 | 0.000 | Hitting_2B | 0.197 | 0.000 | -0.197 | 0.000 |
| predicted_3B | 0.085 | 0.000 | 0.000 | Hitting_3B | 0.070 | 0.000 | -0.070 | 0.000 |
| predicted_AB | 4.370 | 4.000 | 4.000 | Hitting_AB | 4.082 | 4.000 | -0.082 | 0.000 |
| predicted_AVG | 0.272 | 0.250 | 0.250 | Hitting_AVG | 0.338 | 0.500 | -0.088 | -0.250 |
| predicted_BB | 0.225 | 0.000 | 0.000 | Hitting_BB | 0.262 | 1.000 | -0.262 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.190 | 1.000 | 1.000 | Hitting_H | 1.381 | 2.000 | -0.381 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.045 | 1.000 | -0.045 | -1.000 |
| predicted_OBP | 0.358 | 0.250 | 0.250 | Hitting_OBP | 0.379 | 0.600 | -0.129 | -0.350 |
| predicted_R | 0.563 | 0.000 | 1.000 | Hitting_R | 0.570 | 2.000 | -0.570 | -2.000 |
| predicted_RBI | 0.540 | 0.000 | 0.000 | Hitting_RBI | 0.439 | 4.000 | -0.439 | -4.000 |
| predicted_SLG | 0.469 | 0.250 | 0.250 | Hitting_SLG | 0.454 | 1.250 | -0.204 | -1.000 |
| predicted_SO | 0.169 | 1.000 | 1.000 | Hitting_SO | 0.184 | 0.000 | 0.816 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.1690 -> 1.0000 (boost 0.8310, worse) |
| Biggest Deboost | predicted_R: 0.5630 -> 0.0000 (deboost -0.5630, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 4 | 1 | predicted_H: 1.1900 -> 1.2782 (boost 0.0882, better) | predicted_AB: 4.3700 -> 4.2279 (deboost -0.1421, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3665 -> 0.3301 (deboost -0.0364, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 1 | 7 | 0 | 8 | predicted_SO: 0.1788 -> 1.0000 (boost 0.8212, worse) | predicted_RBI: 0.5225 -> 0.0000 (deboost -0.5225, worse) | AB rounded to 4 (raw=4.37), rates preserved: AVG=0.286 HR/AB=0.021 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5846 -> 1.0000 (boost 0.4154, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4653 -> 0.2500 (deboost -0.2153, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4653 (boost 0.2153, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "650333",
"player_name": "Luis Arraez",
"position": "1B",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.225,
"predicted_3B": 0.085,
"predicted_AB": 4.37,
"predicted_AVG": 0.272,
"predicted_BB": 0.225,
"predicted_H": 1.19,
"predicted_HR": 0.1,
"predicted_OBP": 0.358,
"predicted_R": 0.563,
"predicted_RBI": 0.54,
"predicted_SLG": 0.469,
"predicted_SO": 0.169
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2428,
"predicted_3B": 0.0994,
"predicted_AB": 4.2279,
"predicted_AVG": 0.3036,
"predicted_BB": 0.2169,
"predicted_H": 1.2782,
"predicted_HBP": 0.027,
"predicted_HR": 0.0953,
"predicted_OBP": 0.3665,
"predicted_R": 0.605,
"predicted_RBI": 0.5408,
"predicted_SLG": 0.4984,
"predicted_SO": 0.1775
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.225,
"after": 0.2428,
"delta": 0.0178,
"percent_delta": 0.0791,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.085,
"after": 0.0994,
"delta": 0.0144,
"percent_delta": 0.1694,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.37,
"after": 4.2279,
"delta": -0.1421,
"percent_delta": -0.0325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.3036,
"delta": 0.0316,
"percent_delta": 0.1162,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.225,
"after": 0.2169,
"delta": -0.0081,
"percent_delta": -0.036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.19,
"after": 1.2782,
"delta": 0.0882,
"percent_delta": 0.0741,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0953,
"delta": -0.0047,
"percent_delta": -0.047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3665,
"delta": 0.0085,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.563,
"after": 0.605,
"delta": 0.042,
"percent_delta": 0.0746,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.5408,
"delta": 0.0008,
"percent_delta": 0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.469,
"after": 0.4984,
"delta": 0.0294,
"percent_delta": 0.0627,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.169,
"after": 0.1775,
"delta": 0.0085,
"percent_delta": 0.0503,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.19,
"after": 1.2782,
"delta": 0.0882,
"percent_delta": 0.0741,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.37,
"after": 4.2279,
"delta": -0.1421,
"percent_delta": -0.0325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2428,
"predicted_3B": 0.0994,
"predicted_AB": 4.2279,
"predicted_AVG": 0.296,
"predicted_BB": 0.2153,
"predicted_H": 1.2516,
"predicted_HBP": 0.027,
"predicted_HR": 0.0914,
"predicted_OBP": 0.3301,
"predicted_R": 0.5846,
"predicted_RBI": 0.5225,
"predicted_SLG": 0.4653,
"predicted_SO": 0.1788
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2428,
"after": 0.2428,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0994,
"after": 0.0994,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2279,
"after": 4.2279,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3036,
"after": 0.296,
"delta": -0.0076,
"percent_delta": -0.025,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2169,
"after": 0.2153,
"delta": -0.0016,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2782,
"after": 1.2516,
"delta": -0.0266,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.027,
"after": 0.027,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0953,
"after": 0.0914,
"delta": -0.0039,
"percent_delta": -0.0409,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3665,
"after": 0.3301,
"delta": -0.0364,
"percent_delta": -0.0993,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.605,
"after": 0.5846,
"delta": -0.0204,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5408,
"after": 0.5225,
"delta": -0.0183,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4984,
"after": 0.4653,
"delta": -0.0331,
"percent_delta": -0.0664,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.1775,
"after": 0.1788,
"delta": 0.0013,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3665,
"after": 0.3301,
"delta": -0.0364,
"percent_delta": -0.0993,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.37), rates preserved: AVG=0.286 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2428,
"after": 0.0,
"delta": -0.2428,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0994,
"after": 0.0,
"delta": -0.0994,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.2279,
"after": 4.0,
"delta": -0.2279,
"percent_delta": -0.0539,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2153,
"after": 0.0,
"delta": -0.2153,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2516,
"after": 1.0,
"delta": -0.2516,
"percent_delta": -0.201,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0914,
"after": 0.0,
"delta": -0.0914,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5225,
"after": 0.0,
"delta": -0.5225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.1788,
"after": 1.0,
"delta": 0.8212,
"percent_delta": 4.5928,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 0,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.1788,
"after": 1.0,
"delta": 0.8212,
"percent_delta": 4.5928,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5225,
"after": 0.0,
"delta": -0.5225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9158,
"bvp": 0.0842
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5846,
"after": 1.0,
"delta": 0.4154,
"percent_delta": 0.7106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5846,
"after": 1.0,
"delta": 0.4154,
"percent_delta": 0.7106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.296,
"after": 0.25,
"delta": -0.046,
"percent_delta": -0.1554,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3301,
"after": 0.25,
"delta": -0.0801,
"percent_delta": -0.2427,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4653,
"after": 0.25,
"delta": -0.2153,
"percent_delta": -0.4627,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4653,
"after": 0.25,
"delta": -0.2153,
"percent_delta": -0.4627,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.296,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3301,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4653,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.296,
"delta": 0.046,
"percent_delta": 0.1841,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3301,
"delta": 0.0801,
"percent_delta": 0.3206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4653,
"delta": 0.2153,
"percent_delta": 0.8614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4653,
"delta": 0.2153,
"percent_delta": 0.8614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.225,
"after": 0.0,
"delta": -0.225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.37,
"after": 4.0,
"delta": -0.37,
"percent_delta": -0.0847,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.296,
"delta": 0.024,
"percent_delta": 0.0882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.225,
"after": 0.0,
"delta": -0.225,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.19,
"after": 1.0,
"delta": -0.19,
"percent_delta": -0.1597,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3301,
"delta": -0.0279,
"percent_delta": -0.0779,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.563,
"after": 0.0,
"delta": -0.563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.0,
"delta": -0.54,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.469,
"after": 0.4653,
"delta": -0.0037,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.169,
"after": 1.0,
"delta": 0.831,
"percent_delta": 4.9172,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.169,
"after": 1.0,
"delta": 0.831,
"percent_delta": 4.9172,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.563,
"after": 0.0,
"delta": -0.563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.225 | - |
| predicted_3B | 0.085 | - |
| predicted_AB | 4.370 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.225 | - |
| predicted_H | 1.190 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.358 | - |
| predicted_R | 0.563 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.469 | - |
| predicted_SO | 0.169 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.243 | 0.018 |
| predicted_3B | 0.099 | 0.014 |
| predicted_AB | 4.228 | -0.142 |
| predicted_AVG | 0.304 | 0.032 |
| predicted_BB | 0.217 | -0.008 |
| predicted_H | 1.278 | 0.088 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.095 | -0.005 |
| predicted_OBP | 0.366 | 0.009 |
| predicted_R | 0.605 | 0.042 |
| predicted_RBI | 0.541 | 0.001 |
| predicted_SLG | 0.498 | 0.029 |
| predicted_SO | 0.177 | 0.008 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.243 | 0.000 |
| predicted_3B | 0.099 | 0.000 |
| predicted_AB | 4.228 | 0.000 |
| predicted_AVG | 0.296 | -0.008 |
| predicted_BB | 0.215 | -0.002 |
| predicted_H | 1.252 | -0.027 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.091 | -0.004 |
| predicted_OBP | 0.330 | -0.036 |
| predicted_R | 0.585 | -0.020 |
| predicted_RBI | 0.522 | -0.018 |
| predicted_SLG | 0.465 | -0.033 |
| predicted_SO | 0.179 | 0.001 |
AB rounded to 4 (raw=4.37), rates preserved: AVG=0.286 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.243 |
| predicted_3B | 0.000 | -0.099 |
| predicted_AB | 4.000 | -0.228 |
| predicted_AVG | 0.250 | -0.046 |
| predicted_BB | 0.000 | -0.215 |
| predicted_H | 1.000 | -0.252 |
| predicted_HR | 0.000 | -0.091 |
| predicted_OBP | 0.250 | -0.080 |
| predicted_R | 1.000 | 0.415 |
| predicted_RBI | 0.000 | -0.522 |
| predicted_SLG | 0.250 | -0.215 |
| predicted_SO | 1.000 | 0.821 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 8.000 | 2.000 | 1.000 | 1.000 | 5.000 | 5.000 | 1.000 | 0.000 | 0.4000 | 0.4286 | 0.7500 | 0.4000 | 0.0500 | 0.2500 | 0.0500 | 0.0000 |
| last_10 | 0.20 | 10 | - | 43.000 | 16.000 | 3.000 | 2.000 | 1.000 | 5.000 | 7.000 | 1.000 | 1.000 | 0.3721 | 0.3864 | 0.6047 | 0.3721 | 0.0233 | 0.1163 | 0.0233 | 0.0233 |
| season | 0.60 | 71 | - | 283.000 | 95.000 | 16.000 | 6.000 | 3.000 | 29.000 | 40.000 | 16.000 | 12.000 | 0.3357 | 0.3689 | 0.4664 | 0.3357 | 0.0106 | 0.1025 | 0.0565 | 0.0424 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2670 |
| predicted_3B | 0.1190 |
| predicted_AB | 4.0350 |
| predicted_AVG | 0.3465 |
| predicted_BB | 0.2060 |
| predicted_H | 1.3980 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.0890 |
| predicted_OBP | 0.3781 |
| predicted_R | 0.6620 |
| predicted_RBI | 0.5420 |
| predicted_SLG | 0.5383 |
| predicted_SO | 0.1890 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2250 | 0.2670 | 0.2428 | model_form_blend |
| predicted_3B | 0.0850 | 0.1190 | 0.0994 | model_form_blend |
| predicted_AB | 4.3700 | 4.0350 | 4.2279 | model_form_blend |
| predicted_AVG | 0.2720 | 0.3465 | 0.3036 | model_form_blend |
| predicted_BB | 0.2250 | 0.2060 | 0.2169 | model_form_blend |
| predicted_H | 1.1900 | 1.3980 | 1.2782 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.1000 | 0.0890 | 0.0953 | model_form_blend |
| predicted_OBP | 0.3580 | 0.3781 | 0.3665 | model_form_blend |
| predicted_R | 0.5630 | 0.6620 | 0.6050 | model_form_blend |
| predicted_RBI | 0.5400 | 0.5420 | 0.5408 | model_form_blend |
| predicted_SLG | 0.4690 | 0.5383 | 0.4984 | model_form_blend |
| predicted_SO | 0.1690 | 0.1890 | 0.1775 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 244 |
| Season rows before report date | 244 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.336 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 4 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 650333 |
| playerID | 650333 |
| playerName | Luis Arraez |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 4.1 |
| sl_bb_percent | 5.1 |
| sl_woba | 0.35 |
| sl_xwoba | 0.301 |
| sl_xba | 0.287 |
| sl_xslg | 0.369 |
| sl_sweet_spot_percent | 40.5 |
| sl_barrel_batted_rate | 0.4 |
| sl_hard_hit_percent | 22.2 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 14.8 |
| sl_whiff_percent | 8.8 |
| sl_swing_percent | 50.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.140 | 0.000 | 0.000 | Hitting_2B | 0.152 | 0.000 | -0.152 | 0.000 |
| predicted_3B | 0.040 | 1.000 | 0.000 | Hitting_3B | 0.045 | 0.000 | 0.955 | 1.000 |
| predicted_AB | 3.010 | 5.000 | 3.000 | Hitting_AB | 3.167 | 3.000 | 1.833 | 2.000 |
| predicted_AVG | 0.230 | 0.200 | 0.333 | Hitting_AVG | 0.239 | 0.000 | -0.039 | 0.200 |
| predicted_BB | 0.200 | 0.000 | 0.000 | Hitting_BB | 0.242 | 0.000 | -0.242 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.008 | 1.000 | -0.008 | -1.000 |
| predicted_H | 0.690 | 1.000 | 1.000 | Hitting_H | 0.758 | 0.000 | 0.242 | 1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.068 | 0.000 | -0.068 | 0.000 |
| predicted_OBP | 0.296 | 0.200 | 0.333 | Hitting_OBP | 0.306 | 0.250 | -0.106 | -0.050 |
| predicted_R | 0.340 | 1.000 | 0.000 | Hitting_R | 0.333 | 1.000 | 0.667 | 0.000 |
| predicted_RBI | 0.370 | 0.000 | 0.000 | Hitting_RBI | 0.273 | 0.000 | -0.273 | 0.000 |
| predicted_SLG | 0.334 | 0.600 | 0.333 | Hitting_SLG | 0.380 | 0.000 | 0.220 | 0.600 |
| predicted_SO | 0.620 | 1.000 | 1.000 | Hitting_SO | 0.644 | 0.000 | 0.356 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 12 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 6 |
| Better Metrics | 5 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.0100 -> 5.0000 (boost 1.9900, better) |
| Biggest Deboost | predicted_RBI: 0.3700 -> 0.0000 (deboost -0.3700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 1 | 3 | 1 | 3 | predicted_BB: 0.2000 -> 0.2540 (boost 0.0540, better) | predicted_H: 0.6900 -> 0.6299 (deboost -0.0601, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3238 -> 0.3459 (boost 0.0221, better) | predicted_OBP: 0.2931 -> 0.2699 (deboost -0.0232, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.6168 -> 1.0000 (boost 0.3832, better) | predicted_RBI: 0.3380 -> 0.0000 (deboost -0.3380, worse) | AB rounded to 3 (raw=3.01), rates preserved: AVG=0.205 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3632 -> 0.0000 (deboost -0.3632, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2079 -> 0.3330 (boost 0.1251, better) | predicted_SLG: 0.3459 -> 0.3330 (deboost -0.0129, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3459 (boost 0.0129, better) | predicted_AVG: 0.3330 -> 0.2079 (deboost -0.1251, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687551",
"player_name": "Drew Gilbert",
"position": "2B",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.14,
"predicted_3B": 0.04,
"predicted_AB": 3.01,
"predicted_AVG": 0.23,
"predicted_BB": 0.2,
"predicted_H": 0.69,
"predicted_HR": 0.08,
"predicted_OBP": 0.296,
"predicted_R": 0.34,
"predicted_RBI": 0.37,
"predicted_SLG": 0.334,
"predicted_SO": 0.62
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1533,
"predicted_3B": 0.0327,
"predicted_AB": 2.9673,
"predicted_AVG": 0.2123,
"predicted_BB": 0.254,
"predicted_H": 0.6299,
"predicted_HBP": 0.083,
"predicted_HR": 0.0663,
"predicted_OBP": 0.2931,
"predicted_R": 0.3759,
"predicted_RBI": 0.3498,
"predicted_SLG": 0.3238,
"predicted_SO": 0.6192
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.14,
"after": 0.1533,
"delta": 0.0133,
"percent_delta": 0.095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0327,
"delta": -0.0073,
"percent_delta": -0.1825,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.01,
"after": 2.9673,
"delta": -0.0427,
"percent_delta": -0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2123,
"delta": -0.0177,
"percent_delta": -0.077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.254,
"delta": 0.054,
"percent_delta": 0.27,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 0.6299,
"delta": -0.0601,
"percent_delta": -0.0871,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0663,
"delta": -0.0137,
"percent_delta": -0.1713,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.296,
"after": 0.2931,
"delta": -0.0029,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.34,
"after": 0.3759,
"delta": 0.0359,
"percent_delta": 0.1056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.3498,
"delta": -0.0202,
"percent_delta": -0.0546,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.334,
"after": 0.3238,
"delta": -0.0102,
"percent_delta": -0.0305,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.62,
"after": 0.6192,
"delta": -0.0008,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.2,
"after": 0.254,
"delta": 0.054,
"percent_delta": 0.27,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.69,
"after": 0.6299,
"delta": -0.0601,
"percent_delta": -0.0871,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 50
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1533,
"predicted_3B": 0.0327,
"predicted_AB": 2.9673,
"predicted_AVG": 0.2079,
"predicted_BB": 0.2521,
"predicted_H": 0.6168,
"predicted_HBP": 0.083,
"predicted_HR": 0.0636,
"predicted_OBP": 0.2699,
"predicted_R": 0.3632,
"predicted_RBI": 0.338,
"predicted_SLG": 0.3459,
"predicted_SO": 0.6239
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1533,
"after": 0.1533,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0327,
"after": 0.0327,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9673,
"after": 2.9673,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2123,
"after": 0.2079,
"delta": -0.0044,
"percent_delta": -0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.254,
"after": 0.2521,
"delta": -0.0019,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6299,
"after": 0.6168,
"delta": -0.0131,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.083,
"after": 0.083,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0663,
"after": 0.0636,
"delta": -0.0027,
"percent_delta": -0.0407,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2931,
"after": 0.2699,
"delta": -0.0232,
"percent_delta": -0.0792,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3759,
"after": 0.3632,
"delta": -0.0127,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3498,
"after": 0.338,
"delta": -0.0118,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3238,
"after": 0.3459,
"delta": 0.0221,
"percent_delta": 0.0683,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6192,
"after": 0.6239,
"delta": 0.0047,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3238,
"after": 0.3459,
"delta": 0.0221,
"percent_delta": 0.0683,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2931,
"after": 0.2699,
"delta": -0.0232,
"percent_delta": -0.0792,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.01), rates preserved: AVG=0.205 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1533,
"after": 0.0,
"delta": -0.1533,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0327,
"after": 0.0,
"delta": -0.0327,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9673,
"after": 3.0,
"delta": 0.0327,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2521,
"after": 0.0,
"delta": -0.2521,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6168,
"after": 1.0,
"delta": 0.3832,
"percent_delta": 0.6213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.083,
"after": 0.0,
"delta": -0.083,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0636,
"after": 0.0,
"delta": -0.0636,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.338,
"after": 0.0,
"delta": -0.338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6239,
"after": 1.0,
"delta": 0.3761,
"percent_delta": 0.6028,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6168,
"after": 1.0,
"delta": 0.3832,
"percent_delta": 0.6213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.338,
"after": 0.0,
"delta": -0.338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3632,
"after": 0.0,
"delta": -0.3632,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3632,
"after": 0.0,
"delta": -0.3632,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2079,
"after": 0.333,
"delta": 0.1251,
"percent_delta": 0.6017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2699,
"after": 0.333,
"delta": 0.0631,
"percent_delta": 0.2338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3459,
"after": 0.333,
"delta": -0.0129,
"percent_delta": -0.0373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2079,
"after": 0.333,
"delta": 0.1251,
"percent_delta": 0.6017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3459,
"after": 0.333,
"delta": -0.0129,
"percent_delta": -0.0373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 1.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 1.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2079,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2699,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3459,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2079,
"delta": -0.1251,
"percent_delta": -0.3758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2699,
"delta": -0.0631,
"percent_delta": -0.1895,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3459,
"delta": 0.0129,
"percent_delta": 0.0386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3459,
"delta": 0.0129,
"percent_delta": 0.0386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2079,
"delta": -0.1251,
"percent_delta": -0.3758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 1.0,
"delta": 0.96,
"percent_delta": 24.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.01,
"after": 5.0,
"delta": 1.99,
"percent_delta": 0.6611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2079,
"delta": -0.0221,
"percent_delta": -0.0961,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.0,
"delta": 0.31,
"percent_delta": 0.4493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.296,
"after": 0.2699,
"delta": -0.0261,
"percent_delta": -0.0882,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.34,
"after": 1.0,
"delta": 0.66,
"percent_delta": 1.9412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.334,
"after": 0.3459,
"delta": 0.0119,
"percent_delta": 0.0356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.62,
"after": 1.0,
"delta": 0.38,
"percent_delta": 0.6129,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 6,
"deboosted_metrics": 6,
"better_metrics": 5,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.01,
"after": 5.0,
"delta": 1.99,
"percent_delta": 0.6611,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.140 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 3.010 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.296 | - |
| predicted_R | 0.340 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.334 | - |
| predicted_SO | 0.620 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.153 | 0.013 |
| predicted_3B | 0.033 | -0.007 |
| predicted_AB | 2.967 | -0.043 |
| predicted_AVG | 0.212 | -0.018 |
| predicted_BB | 0.254 | 0.054 |
| predicted_H | 0.630 | -0.060 |
| predicted_HBP | 0.083 | - |
| predicted_HR | 0.066 | -0.014 |
| predicted_OBP | 0.293 | -0.003 |
| predicted_R | 0.376 | 0.036 |
| predicted_RBI | 0.350 | -0.020 |
| predicted_SLG | 0.324 | -0.010 |
| predicted_SO | 0.619 | -0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.153 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 2.967 | 0.000 |
| predicted_AVG | 0.208 | -0.004 |
| predicted_BB | 0.252 | -0.002 |
| predicted_H | 0.617 | -0.013 |
| predicted_HBP | 0.083 | 0.000 |
| predicted_HR | 0.064 | -0.003 |
| predicted_OBP | 0.270 | -0.023 |
| predicted_R | 0.363 | -0.013 |
| predicted_RBI | 0.338 | -0.012 |
| predicted_SLG | 0.346 | 0.022 |
| predicted_SO | 0.624 | 0.005 |
AB rounded to 3 (raw=3.01), rates preserved: AVG=0.205 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.153 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 3.000 | 0.033 |
| predicted_AVG | 0.333 | 0.125 |
| predicted_BB | 0.000 | -0.252 |
| predicted_H | 1.000 | 0.383 |
| predicted_HR | 0.000 | -0.064 |
| predicted_OBP | 0.333 | 0.063 |
| predicted_R | 0.000 | -0.363 |
| predicted_RBI | 0.000 | -0.338 |
| predicted_SLG | 0.333 | -0.013 |
| predicted_SO | 1.000 | 0.376 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 1.000 | 1.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 1.000 | 1.000 | 0.000 | 0.000 | 2.000 | 3.000 | 3.000 | 2.000 | 0.0769 | 0.2941 | 0.1538 | 0.0769 | 0.0000 | 0.1538 | 0.2308 | 0.1538 |
| last_10 | 0.20 | 10 | - | 23.000 | 3.000 | 2.000 | 0.000 | 0.000 | 2.000 | 4.000 | 4.000 | 6.000 | 0.1304 | 0.2857 | 0.2174 | 0.1304 | 0.0000 | 0.0870 | 0.1739 | 0.2609 |
| season | 0.60 | 50 | - | 145.000 | 32.000 | 7.000 | 2.000 | 3.000 | 14.000 | 17.000 | 10.000 | 31.000 | 0.2207 | 0.2803 | 0.3586 | 0.2207 | 0.0207 | 0.0965 | 0.0690 | 0.2138 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1730 |
| predicted_3B | 0.0220 |
| predicted_AB | 2.9040 |
| predicted_AVG | 0.1862 |
| predicted_BB | 0.3340 |
| predicted_H | 0.5410 |
| predicted_HBP | 0.0830 |
| predicted_HR | 0.0460 |
| predicted_OBP | 0.2888 |
| predicted_R | 0.4290 |
| predicted_RBI | 0.3200 |
| predicted_SLG | 0.3087 |
| predicted_SO | 0.6180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1400 | 0.1730 | 0.1533 | model_form_blend |
| predicted_3B | 0.0400 | 0.0220 | 0.0327 | model_form_blend |
| predicted_AB | 3.0100 | 2.9040 | 2.9673 | model_form_blend |
| predicted_AVG | 0.2300 | 0.1862 | 0.2123 | model_form_blend |
| predicted_BB | 0.2000 | 0.3340 | 0.2540 | model_form_blend |
| predicted_H | 0.6900 | 0.5410 | 0.6299 | model_form_blend |
| predicted_HBP | - | 0.0830 | 0.0830 | form_only |
| predicted_HR | 0.0800 | 0.0460 | 0.0663 | model_form_blend |
| predicted_OBP | 0.2960 | 0.2888 | 0.2931 | model_form_blend |
| predicted_R | 0.3400 | 0.4290 | 0.3759 | model_form_blend |
| predicted_RBI | 0.3700 | 0.3200 | 0.3498 | model_form_blend |
| predicted_SLG | 0.3340 | 0.3087 | 0.3238 | model_form_blend |
| predicted_SO | 0.6200 | 0.6180 | 0.6192 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 132 |
| Season rows before report date | 132 |
| Report year | 2026 |
| Profile rows used | 50 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 1 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.221 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 1 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF-LF |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 687551 |
| playerID | 687551 |
| playerName | Drew Gilbert |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.4 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.293 |
| sl_xwoba | 0.278 |
| sl_xba | 0.225 |
| sl_xslg | 0.31 |
| sl_sweet_spot_percent | 29.3 |
| sl_barrel_batted_rate | 2.6 |
| sl_hard_hit_percent | 32.8 |
| sl_exit_velocity_avg | 85.2 |
| sl_launch_angle_avg | 14.9 |
| sl_whiff_percent | 24.8 |
| sl_swing_percent | 42.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.219 | 0.000 | 0.000 | Hitting_2B | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.730 | 3.000 | 4.000 | Hitting_AB | 3.805 | 5.000 | -0.805 | -2.000 |
| predicted_AVG | 0.235 | 0.000 | 0.250 | Hitting_AVG | 0.231 | 0.000 | -0.231 | 0.000 |
| predicted_BB | 0.425 | 1.000 | 0.000 | Hitting_BB | 0.472 | 0.000 | 0.528 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_H | 0.880 | 0.000 | 1.000 | Hitting_H | 0.878 | 0.000 | -0.878 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_OBP | 0.318 | 0.250 | 0.250 | Hitting_OBP | 0.322 | 0.000 | -0.072 | 0.250 |
| predicted_R | 0.466 | 0.000 | 0.000 | Hitting_R | 0.431 | 0.000 | -0.431 | 0.000 |
| predicted_RBI | 0.650 | 0.000 | 1.000 | Hitting_RBI | 0.415 | 0.000 | -0.415 | 0.000 |
| predicted_SLG | 0.399 | 0.000 | 0.250 | Hitting_SLG | 0.340 | 0.000 | -0.340 | 0.000 |
| predicted_SO | 0.863 | 3.000 | 1.000 | Hitting_SO | 0.980 | 2.000 | 2.020 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.8630 -> 3.0000 (boost 2.1370, worse) |
| Biggest Deboost | predicted_H: 0.8800 -> 0.0000 (deboost -0.8800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3990 -> 0.4083 (boost 0.0093, better) | predicted_AB: 3.7300 -> 3.6596 (deboost -0.0704, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3193 -> 0.3132 (deboost -0.0061, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_AB: 3.6596 -> 4.0000 (boost 0.3404, better) | predicted_BB: 0.4302 -> 0.0000 (deboost -0.4302, worse) | AB rounded to 4 (raw=3.73), rates preserved: AVG=0.228 HR/AB=0.038 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=25.0, weight=0.182, BvP AVG=0.320) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4495 -> 0.0000 (deboost -0.4495, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2325 -> 0.2500 (boost 0.0175, better) | predicted_SLG: 0.4075 -> 0.2500 (deboost -0.1575, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 2 | 3 | 1 | 4 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4075 (boost 0.1575, better) | predicted_AVG: 0.2500 -> 0.2325 (deboost -0.0175, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656305",
"player_name": "Matt Chapman",
"position": "3B",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.219,
"predicted_3B": 0.014,
"predicted_AB": 3.73,
"predicted_AVG": 0.235,
"predicted_BB": 0.425,
"predicted_H": 0.88,
"predicted_HR": 0.14,
"predicted_OBP": 0.318,
"predicted_R": 0.466,
"predicted_RBI": 0.65,
"predicted_SLG": 0.399,
"predicted_SO": 0.863
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1906,
"predicted_3B": 0.0119,
"predicted_AB": 3.6596,
"predicted_AVG": 0.2369,
"predicted_BB": 0.4335,
"predicted_H": 0.869,
"predicted_HBP": 0.052,
"predicted_HR": 0.1481,
"predicted_OBP": 0.3193,
"predicted_R": 0.4652,
"predicted_RBI": 0.6865,
"predicted_SLG": 0.4083,
"predicted_SO": 0.8443
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.219,
"after": 0.1906,
"delta": -0.0284,
"percent_delta": -0.1297,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.73,
"after": 3.6596,
"delta": -0.0704,
"percent_delta": -0.0189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2369,
"delta": 0.0019,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.425,
"after": 0.4335,
"delta": 0.0085,
"percent_delta": 0.02,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.869,
"delta": -0.011,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1481,
"delta": 0.0081,
"percent_delta": 0.0579,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3193,
"delta": 0.0013,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.466,
"after": 0.4652,
"delta": -0.0008,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.6865,
"delta": 0.0365,
"percent_delta": 0.0562,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4083,
"delta": 0.0093,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.863,
"after": 0.8443,
"delta": -0.0187,
"percent_delta": -0.0217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4083,
"delta": 0.0093,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.73,
"after": 3.6596,
"delta": -0.0704,
"percent_delta": -0.0189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 73
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1906,
"predicted_3B": 0.0119,
"predicted_AB": 3.6596,
"predicted_AVG": 0.2325,
"predicted_BB": 0.4302,
"predicted_H": 0.8509,
"predicted_HBP": 0.052,
"predicted_HR": 0.142,
"predicted_OBP": 0.3132,
"predicted_R": 0.4495,
"predicted_RBI": 0.6633,
"predicted_SLG": 0.4075,
"predicted_SO": 0.8507
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1906,
"after": 0.1906,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6596,
"after": 3.6596,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2369,
"after": 0.2325,
"delta": -0.0044,
"percent_delta": -0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4335,
"after": 0.4302,
"delta": -0.0033,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.869,
"after": 0.8509,
"delta": -0.0181,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.052,
"after": 0.052,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1481,
"after": 0.142,
"delta": -0.0061,
"percent_delta": -0.0412,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3193,
"after": 0.3132,
"delta": -0.0061,
"percent_delta": -0.0191,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4652,
"after": 0.4495,
"delta": -0.0157,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6865,
"after": 0.6633,
"delta": -0.0232,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4083,
"after": 0.4075,
"delta": -0.0008,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8443,
"after": 0.8507,
"delta": 0.0064,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3193,
"after": 0.3132,
"delta": -0.0061,
"percent_delta": -0.0191,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.73), rates preserved: AVG=0.228 HR/AB=0.038",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1906,
"after": 0.0,
"delta": -0.1906,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6596,
"after": 4.0,
"delta": 0.3404,
"percent_delta": 0.093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4302,
"after": 0.0,
"delta": -0.4302,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8509,
"after": 1.0,
"delta": 0.1491,
"percent_delta": 0.1752,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.052,
"after": 0.0,
"delta": -0.052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.142,
"after": 0.0,
"delta": -0.142,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6633,
"after": 1.0,
"delta": 0.3367,
"percent_delta": 0.5076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8507,
"after": 1.0,
"delta": 0.1493,
"percent_delta": 0.1755,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.6596,
"after": 4.0,
"delta": 0.3404,
"percent_delta": 0.093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4302,
"after": 0.0,
"delta": -0.4302,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=25.0, weight=0.182, BvP AVG=0.320)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8182,
"bvp": 0.1818
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4495,
"after": 0.0,
"delta": -0.4495,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4495,
"after": 0.0,
"delta": -0.4495,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2325,
"after": 0.25,
"delta": 0.0175,
"percent_delta": 0.0753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3132,
"after": 0.25,
"delta": -0.0632,
"percent_delta": -0.2018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4075,
"after": 0.25,
"delta": -0.1575,
"percent_delta": -0.3865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2325,
"after": 0.25,
"delta": 0.0175,
"percent_delta": 0.0753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4075,
"after": 0.25,
"delta": -0.1575,
"percent_delta": -0.3865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2325,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3132,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4075,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2325,
"delta": -0.0175,
"percent_delta": -0.0699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3132,
"delta": 0.0632,
"percent_delta": 0.253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4075,
"delta": 0.1575,
"percent_delta": 0.6302,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4075,
"delta": 0.1575,
"percent_delta": 0.6302,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2325,
"delta": -0.0175,
"percent_delta": -0.0699,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.219,
"after": 0.0,
"delta": -0.219,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.73,
"after": 3.0,
"delta": -0.73,
"percent_delta": -0.1957,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2325,
"delta": -0.0025,
"percent_delta": -0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.425,
"after": 1.0,
"delta": 0.575,
"percent_delta": 1.3529,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3132,
"delta": -0.0048,
"percent_delta": -0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.466,
"after": 0.0,
"delta": -0.466,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4075,
"delta": 0.0085,
"percent_delta": 0.0213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.863,
"after": 3.0,
"delta": 2.137,
"percent_delta": 2.4762,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.863,
"after": 3.0,
"delta": 2.137,
"percent_delta": 2.4762,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.730 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.425 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.318 | - |
| predicted_R | 0.466 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.399 | - |
| predicted_SO | 0.863 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | -0.028 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 3.660 | -0.070 |
| predicted_AVG | 0.237 | 0.002 |
| predicted_BB | 0.433 | 0.009 |
| predicted_H | 0.869 | -0.011 |
| predicted_HBP | 0.052 | - |
| predicted_HR | 0.148 | 0.008 |
| predicted_OBP | 0.319 | 0.001 |
| predicted_R | 0.465 | -0.001 |
| predicted_RBI | 0.686 | 0.036 |
| predicted_SLG | 0.408 | 0.009 |
| predicted_SO | 0.844 | -0.019 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.191 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 3.660 | 0.000 |
| predicted_AVG | 0.233 | -0.004 |
| predicted_BB | 0.430 | -0.003 |
| predicted_H | 0.851 | -0.018 |
| predicted_HBP | 0.052 | 0.000 |
| predicted_HR | 0.142 | -0.006 |
| predicted_OBP | 0.313 | -0.006 |
| predicted_R | 0.450 | -0.016 |
| predicted_RBI | 0.663 | -0.023 |
| predicted_SLG | 0.407 | -0.001 |
| predicted_SO | 0.851 | 0.006 |
AB rounded to 4 (raw=3.73), rates preserved: AVG=0.228 HR/AB=0.038
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=25.0, weight=0.182, BvP AVG=0.320)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.191 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | 0.340 |
| predicted_AVG | 0.250 | 0.017 |
| predicted_BB | 0.000 | -0.430 |
| predicted_H | 1.000 | 0.149 |
| predicted_HR | 0.000 | -0.142 |
| predicted_OBP | 0.250 | -0.063 |
| predicted_R | 0.000 | -0.450 |
| predicted_RBI | 1.000 | 0.337 |
| predicted_SLG | 0.250 | -0.157 |
| predicted_SO | 1.000 | 0.149 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 2.000 | 0.000 | 0.000 | 1.000 | 5.000 | 2.000 | 2.000 | 5.000 | 0.1176 | 0.1905 | 0.2941 | 0.1177 | 0.0588 | 0.2941 | 0.1177 | 0.2941 |
| last_10 | 0.20 | 10 | - | 33.000 | 11.000 | 1.000 | 0.000 | 3.000 | 10.000 | 5.000 | 6.000 | 5.000 | 0.3333 | 0.4286 | 0.6364 | 0.3333 | 0.0909 | 0.3030 | 0.1818 | 0.1515 |
| season | 0.60 | 73 | - | 267.000 | 66.000 | 16.000 | 1.000 | 7.000 | 42.000 | 34.000 | 31.000 | 63.000 | 0.2472 | 0.3301 | 0.3933 | 0.2472 | 0.0262 | 0.1573 | 0.1161 | 0.2360 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.5640 |
| predicted_AVG | 0.2396 |
| predicted_BB | 0.4450 |
| predicted_H | 0.8540 |
| predicted_HBP | 0.0520 |
| predicted_HR | 0.1590 |
| predicted_OBP | 0.3211 |
| predicted_R | 0.4640 |
| predicted_RBI | 0.7360 |
| predicted_SLG | 0.4210 |
| predicted_SO | 0.8190 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2190 | 0.1520 | 0.1906 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 3.7300 | 3.5640 | 3.6596 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2396 | 0.2369 | model_form_blend |
| predicted_BB | 0.4250 | 0.4450 | 0.4335 | model_form_blend |
| predicted_H | 0.8800 | 0.8540 | 0.8690 | model_form_blend |
| predicted_HBP | - | 0.0520 | 0.0520 | form_only |
| predicted_HR | 0.1400 | 0.1590 | 0.1481 | model_form_blend |
| predicted_OBP | 0.3180 | 0.3211 | 0.3193 | model_form_blend |
| predicted_R | 0.4660 | 0.4640 | 0.4652 | model_form_blend |
| predicted_RBI | 0.6500 | 0.7360 | 0.6865 | model_form_blend |
| predicted_SLG | 0.3990 | 0.4210 | 0.4083 | model_form_blend |
| predicted_SO | 0.8630 | 0.8190 | 0.8443 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 246 |
| Season rows before report date | 246 |
| Report year | 2026 |
| Profile rows used | 73 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.247 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 656305 |
| playerID | 656305 |
| playerName | Matt Chapman |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.7 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.327 |
| sl_xwoba | 0.294 |
| sl_xba | 0.219 |
| sl_xslg | 0.335 |
| sl_sweet_spot_percent | 24.4 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 36.8 |
| sl_exit_velocity_avg | 88.2 |
| sl_launch_angle_avg | 10.2 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 44.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.172 | 0.000 | 0.000 | Hitting_2B | 0.221 | 0.000 | -0.221 | 0.000 |
| predicted_3B | 0.034 | 0.000 | 0.000 | Hitting_3B | 0.059 | 0.000 | -0.059 | 0.000 |
| predicted_AB | 3.172 | 3.000 | 3.000 | Hitting_AB | 3.338 | 4.000 | -0.338 | -1.000 |
| predicted_AVG | 0.248 | 0.000 | 0.333 | Hitting_AVG | 0.322 | 0.000 | -0.322 | 0.000 |
| predicted_BB | 0.207 | 1.000 | 0.000 | Hitting_BB | 0.279 | 0.000 | 0.721 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.074 | 0.000 | -0.074 | 0.000 |
| predicted_H | 0.300 | 0.000 | 1.000 | Hitting_H | 1.074 | 0.000 | -1.074 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.284 | 0.250 | 0.333 | Hitting_OBP | 0.378 | 0.000 | -0.128 | 0.250 |
| predicted_R | 0.172 | 0.000 | 0.000 | Hitting_R | 0.162 | 0.000 | -0.162 | 0.000 |
| predicted_RBI | 0.180 | 0.000 | 0.000 | Hitting_RBI | 0.588 | 0.000 | -0.588 | 0.000 |
| predicted_SLG | 0.352 | 0.000 | 0.333 | Hitting_SLG | 0.423 | 0.000 | -0.423 | 0.000 |
| predicted_SO | 0.793 | 1.000 | 1.000 | Hitting_SO | 0.794 | 1.000 | 0.206 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.2070 -> 1.0000 (boost 0.7930, better) |
| Biggest Deboost | predicted_H: 0.3000 -> 0.0000 (deboost -0.3000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 4 | 0 | 4 | 0 | predicted_H: 0.3000 -> 0.5172 (boost 0.2172, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3498 -> 0.2525 (deboost -0.0973, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.8068 -> 1.0000 (boost 0.1932, worse) | predicted_H: 0.5064 -> 0.0000 (deboost -0.5064, worse) | AB rounded to 3 (raw=3.24), rates preserved: AVG=0.156 HR/AB=0.008 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.1888 -> 0.0000 (deboost -0.1888, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1565 -> 0.3330 (boost 0.1765, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1565 (deboost -0.1765, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691740",
"player_name": "Daniel Susac",
"position": "SS",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.172,
"predicted_3B": 0.034,
"predicted_AB": 3.172,
"predicted_AVG": 0.248,
"predicted_BB": 0.207,
"predicted_H": 0.3,
"predicted_HR": 0.03,
"predicted_OBP": 0.284,
"predicted_R": 0.172,
"predicted_RBI": 0.18,
"predicted_SLG": 0.352,
"predicted_SO": 0.793
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1716,
"predicted_3B": 0.0286,
"predicted_AB": 3.2363,
"predicted_AVG": 0.2525,
"predicted_BB": 0.1947,
"predicted_H": 0.5172,
"predicted_HBP": 0.056,
"predicted_HR": 0.0285,
"predicted_OBP": 0.2922,
"predicted_R": 0.1954,
"predicted_RBI": 0.2712,
"predicted_SLG": 0.3498,
"predicted_SO": 0.8007
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.172,
"after": 0.1716,
"delta": -0.0004,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0286,
"delta": -0.0054,
"percent_delta": -0.1588,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.172,
"after": 3.2363,
"delta": 0.0643,
"percent_delta": 0.0203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2525,
"delta": 0.0045,
"percent_delta": 0.0181,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.207,
"after": 0.1947,
"delta": -0.0123,
"percent_delta": -0.0594,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.5172,
"delta": 0.2172,
"percent_delta": 0.724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0285,
"delta": -0.0015,
"percent_delta": -0.05,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2922,
"delta": 0.0082,
"percent_delta": 0.0289,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.172,
"after": 0.1954,
"delta": 0.0234,
"percent_delta": 0.136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.2712,
"delta": 0.0912,
"percent_delta": 0.5067,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.3498,
"delta": -0.0022,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.793,
"after": 0.8007,
"delta": 0.0077,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.3,
"after": 0.5172,
"delta": 0.2172,
"percent_delta": 0.724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 29
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1716,
"predicted_3B": 0.0286,
"predicted_AB": 3.2363,
"predicted_AVG": 0.1565,
"predicted_BB": 0.1932,
"predicted_H": 0.5064,
"predicted_HBP": 0.056,
"predicted_HR": 0.0273,
"predicted_OBP": 0.204,
"predicted_R": 0.1888,
"predicted_RBI": 0.262,
"predicted_SLG": 0.2525,
"predicted_SO": 0.8068
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1716,
"after": 0.1716,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0286,
"after": 0.0286,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2363,
"after": 3.2363,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2525,
"after": 0.1565,
"delta": -0.096,
"percent_delta": -0.3802,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1947,
"after": 0.1932,
"delta": -0.0015,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5172,
"after": 0.5064,
"delta": -0.0108,
"percent_delta": -0.0209,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.056,
"after": 0.056,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0285,
"after": 0.0273,
"delta": -0.0012,
"percent_delta": -0.0421,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2922,
"after": 0.204,
"delta": -0.0882,
"percent_delta": -0.3018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.1954,
"after": 0.1888,
"delta": -0.0066,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2712,
"after": 0.262,
"delta": -0.0092,
"percent_delta": -0.0339,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3498,
"after": 0.2525,
"delta": -0.0973,
"percent_delta": -0.2782,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8007,
"after": 0.8068,
"delta": 0.0061,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3498,
"after": 0.2525,
"delta": -0.0973,
"percent_delta": -0.2782,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.24), rates preserved: AVG=0.156 HR/AB=0.008",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1716,
"after": 0.0,
"delta": -0.1716,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0286,
"after": 0.0,
"delta": -0.0286,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2363,
"after": 3.0,
"delta": -0.2363,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1932,
"after": 0.0,
"delta": -0.1932,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5064,
"after": 0.0,
"delta": -0.5064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.056,
"after": 0.0,
"delta": -0.056,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0273,
"after": 0.0,
"delta": -0.0273,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.262,
"after": 0.0,
"delta": -0.262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8068,
"after": 1.0,
"delta": 0.1932,
"percent_delta": 0.2395,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8068,
"after": 1.0,
"delta": 0.1932,
"percent_delta": 0.2395,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.5064,
"after": 0.0,
"delta": -0.5064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.1888,
"after": 0.0,
"delta": -0.1888,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.1888,
"after": 0.0,
"delta": -0.1888,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1565,
"after": 0.333,
"delta": 0.1765,
"percent_delta": 1.1278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.204,
"after": 0.333,
"delta": 0.129,
"percent_delta": 0.6324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2525,
"after": 0.333,
"delta": 0.0805,
"percent_delta": 0.3188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1565,
"after": 0.333,
"delta": 0.1765,
"percent_delta": 1.1278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1565,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.204,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2525,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1565,
"delta": -0.1765,
"percent_delta": -0.5301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.204,
"delta": -0.129,
"percent_delta": -0.3874,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2525,
"delta": -0.0805,
"percent_delta": -0.2417,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1565,
"delta": -0.1765,
"percent_delta": -0.5301,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.172,
"after": 0.0,
"delta": -0.172,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0,
"delta": -0.034,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.172,
"after": 3.0,
"delta": -0.172,
"percent_delta": -0.0542,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.1565,
"delta": -0.0915,
"percent_delta": -0.369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.207,
"after": 1.0,
"delta": 0.793,
"percent_delta": 3.8309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.204,
"delta": -0.08,
"percent_delta": -0.2817,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.172,
"after": 0.0,
"delta": -0.172,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.2525,
"delta": -0.0995,
"percent_delta": -0.2827,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.793,
"after": 1.0,
"delta": 0.207,
"percent_delta": 0.261,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.207,
"after": 1.0,
"delta": 0.793,
"percent_delta": 3.8309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.3,
"after": 0.0,
"delta": -0.3,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.172 | - |
| predicted_3B | 0.034 | - |
| predicted_AB | 3.172 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.207 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.284 | - |
| predicted_R | 0.172 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.352 | - |
| predicted_SO | 0.793 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.172 | -0.000 |
| predicted_3B | 0.029 | -0.005 |
| predicted_AB | 3.236 | 0.064 |
| predicted_AVG | 0.253 | 0.005 |
| predicted_BB | 0.195 | -0.012 |
| predicted_H | 0.517 | 0.217 |
| predicted_HBP | 0.056 | - |
| predicted_HR | 0.029 | -0.001 |
| predicted_OBP | 0.292 | 0.008 |
| predicted_R | 0.195 | 0.023 |
| predicted_RBI | 0.271 | 0.091 |
| predicted_SLG | 0.350 | -0.002 |
| predicted_SO | 0.801 | 0.008 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.172 | 0.000 |
| predicted_3B | 0.029 | 0.000 |
| predicted_AB | 3.236 | 0.000 |
| predicted_AVG | 0.157 | -0.096 |
| predicted_BB | 0.193 | -0.002 |
| predicted_H | 0.506 | -0.011 |
| predicted_HBP | 0.056 | 0.000 |
| predicted_HR | 0.027 | -0.001 |
| predicted_OBP | 0.204 | -0.088 |
| predicted_R | 0.189 | -0.007 |
| predicted_RBI | 0.262 | -0.009 |
| predicted_SLG | 0.253 | -0.097 |
| predicted_SO | 0.807 | 0.006 |
AB rounded to 3 (raw=3.24), rates preserved: AVG=0.156 HR/AB=0.008
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.172 |
| predicted_3B | 0.000 | -0.029 |
| predicted_AB | 3.000 | -0.236 |
| predicted_AVG | 0.333 | 0.177 |
| predicted_BB | 0.000 | -0.193 |
| predicted_H | 1.000 | 0.494 |
| predicted_HR | 0.000 | -0.027 |
| predicted_OBP | 0.333 | 0.129 |
| predicted_R | 0.000 | -0.189 |
| predicted_RBI | 0.000 | -0.262 |
| predicted_SLG | 0.333 | 0.081 |
| predicted_SO | 1.000 | 0.193 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 1.000 | 0.000 | 0.000 | 2.000 | 1.000 | 0.000 | 4.000 | 0.2000 | 0.2000 | 0.2667 | 0.2000 | 0.0000 | 0.1333 | 0.0000 | 0.2667 |
| last_10 | 0.20 | 10 | - | 34.000 | 9.000 | 1.000 | 0.000 | 0.000 | 2.000 | 1.000 | 1.000 | 8.000 | 0.2647 | 0.3056 | 0.2941 | 0.2647 | 0.0000 | 0.0588 | 0.0294 | 0.2353 |
| season | 0.60 | 29 | - | 92.000 | 26.000 | 5.000 | 1.000 | 0.000 | 13.000 | 5.000 | 6.000 | 23.000 | 0.2826 | 0.3366 | 0.3587 | 0.2826 | 0.0000 | 0.1413 | 0.0652 | 0.2500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1710 |
| predicted_3B | 0.0200 |
| predicted_AB | 3.3400 |
| predicted_AVG | 0.2598 |
| predicted_BB | 0.1750 |
| predicted_H | 0.8670 |
| predicted_HBP | 0.0560 |
| predicted_HR | 0.0260 |
| predicted_OBP | 0.3054 |
| predicted_R | 0.2330 |
| predicted_RBI | 0.4180 |
| predicted_SLG | 0.3462 |
| predicted_SO | 0.8130 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1720 | 0.1710 | 0.1716 | model_form_blend |
| predicted_3B | 0.0340 | 0.0200 | 0.0286 | model_form_blend |
| predicted_AB | 3.1720 | 3.3400 | 3.2363 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2598 | 0.2525 | model_form_blend |
| predicted_BB | 0.2070 | 0.1750 | 0.1947 | model_form_blend |
| predicted_H | 0.3000 | 0.8670 | 0.5172 | model_form_blend |
| predicted_HBP | - | 0.0560 | 0.0560 | form_only |
| predicted_HR | 0.0300 | 0.0260 | 0.0285 | model_form_blend |
| predicted_OBP | 0.2840 | 0.3054 | 0.2922 | model_form_blend |
| predicted_R | 0.1720 | 0.2330 | 0.1954 | model_form_blend |
| predicted_RBI | 0.1800 | 0.4180 | 0.2712 | model_form_blend |
| predicted_SLG | 0.3520 | 0.3462 | 0.3498 | model_form_blend |
| predicted_SO | 0.7930 | 0.8130 | 0.8007 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 68 |
| Season rows before report date | 68 |
| Report year | 2026 |
| Profile rows used | 29 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.283 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_SF@ATL |
| game_type | full |
| mlbID | 691740 |
| playerID | 691740 |
| playerName | Daniel Susac |
| pos | C |
| started | True |
| startingPosition | C |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 5.9 |
| sl_woba | 0.315 |
| sl_xwoba | 0.306 |
| sl_xba | 0.269 |
| sl_xslg | 0.361 |
| sl_sweet_spot_percent | 41.7 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 29.2 |
| sl_exit_velocity_avg | 86.2 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 24.9 |
| sl_swing_percent | 54.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.231 | 2.000 | 0.000 | Hitting_2B | 0.236 | 0.000 | 1.764 | 2.000 |
| predicted_3B | 0.031 | 0.000 | 0.000 | Hitting_3B | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_AB | 3.815 | 4.000 | 4.000 | Hitting_AB | 3.920 | 4.000 | 0.080 | 0.000 |
| predicted_AVG | 0.263 | 0.750 | 0.250 | Hitting_AVG | 0.301 | 0.000 | 0.449 | 0.750 |
| predicted_BB | 0.169 | 0.000 | 0.000 | Hitting_BB | 0.217 | 0.000 | -0.217 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.980 | 3.000 | 1.000 | Hitting_H | 1.179 | 0.000 | 1.821 | 3.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.061 | 0.000 | -0.061 | 0.000 |
| predicted_OBP | 0.318 | 0.750 | 0.250 | Hitting_OBP | 0.343 | 0.000 | 0.407 | 0.750 |
| predicted_R | 0.554 | 1.000 | 1.000 | Hitting_R | 0.509 | 0.000 | 0.491 | 1.000 |
| predicted_RBI | 0.430 | 0.000 | 0.000 | Hitting_RBI | 0.392 | 0.000 | -0.392 | 0.000 |
| predicted_SLG | 0.414 | 1.250 | 0.250 | Hitting_SLG | 0.422 | 0.000 | 0.828 | 1.250 |
| predicted_SO | 0.354 | 1.000 | 0.000 | Hitting_SO | 0.410 | 0.000 | 0.590 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 4 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_H: 0.9800 -> 3.0000 (boost 2.0200, better) |
| Biggest Deboost | predicted_RBI: 0.4300 -> 0.0000 (deboost -0.4300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 3 | 0 | predicted_H: 0.9800 -> 1.0435 (boost 0.0635, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3194 -> 0.2964 (deboost -0.0230, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_AB: 3.8150 -> 4.0000 (boost 0.1850, better) | predicted_RBI: 0.4147 -> 0.0000 (deboost -0.4147, worse) | AB rounded to 4 (raw=3.81), rates preserved: AVG=0.268 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5316 -> 1.0000 (boost 0.4684, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4100 -> 0.2500 (deboost -0.1600, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 2 | 1 | predicted_2B: 0.0000 -> 2.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4100 (boost 0.1600, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "808982",
"player_name": "Jung Hoo Lee",
"position": "LF",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.231,
"predicted_3B": 0.031,
"predicted_AB": 3.815,
"predicted_AVG": 0.263,
"predicted_BB": 0.169,
"predicted_H": 0.98,
"predicted_HR": 0.1,
"predicted_OBP": 0.318,
"predicted_R": 0.554,
"predicted_RBI": 0.43,
"predicted_SLG": 0.414,
"predicted_SO": 0.354
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2012,
"predicted_3B": 0.0255,
"predicted_AB": 3.815,
"predicted_AVG": 0.2771,
"predicted_BB": 0.156,
"predicted_H": 1.0435,
"predicted_HBP": 0.028,
"predicted_HR": 0.1008,
"predicted_OBP": 0.3194,
"predicted_R": 0.5502,
"predicted_RBI": 0.4292,
"predicted_SLG": 0.4199,
"predicted_SO": 0.3284
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.231,
"after": 0.2012,
"delta": -0.0298,
"percent_delta": -0.129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0255,
"delta": -0.0055,
"percent_delta": -0.1774,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.815,
"after": 3.815,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2771,
"delta": 0.0141,
"percent_delta": 0.0536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.169,
"after": 0.156,
"delta": -0.013,
"percent_delta": -0.0769,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.0435,
"delta": 0.0635,
"percent_delta": 0.0648,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1008,
"delta": 0.0008,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3194,
"delta": 0.0014,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.554,
"after": 0.5502,
"delta": -0.0038,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.4292,
"delta": -0.0008,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.4199,
"delta": 0.0059,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.354,
"after": 0.3284,
"delta": -0.0256,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.98,
"after": 1.0435,
"delta": 0.0635,
"percent_delta": 0.0648,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 65
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2012,
"predicted_3B": 0.0255,
"predicted_AB": 3.815,
"predicted_AVG": 0.2678,
"predicted_BB": 0.1548,
"predicted_H": 1.0218,
"predicted_HBP": 0.028,
"predicted_HR": 0.0967,
"predicted_OBP": 0.2964,
"predicted_R": 0.5316,
"predicted_RBI": 0.4147,
"predicted_SLG": 0.41,
"predicted_SO": 0.3309
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2012,
"after": 0.2012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0255,
"after": 0.0255,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.815,
"after": 3.815,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2771,
"after": 0.2678,
"delta": -0.0093,
"percent_delta": -0.0336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.156,
"after": 0.1548,
"delta": -0.0012,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0435,
"after": 1.0218,
"delta": -0.0217,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.028,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1008,
"after": 0.0967,
"delta": -0.0041,
"percent_delta": -0.0407,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3194,
"after": 0.2964,
"delta": -0.023,
"percent_delta": -0.072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5502,
"after": 0.5316,
"delta": -0.0186,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4292,
"after": 0.4147,
"delta": -0.0145,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4199,
"after": 0.41,
"delta": -0.0099,
"percent_delta": -0.0236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3284,
"after": 0.3309,
"delta": 0.0025,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3194,
"after": 0.2964,
"delta": -0.023,
"percent_delta": -0.072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.81), rates preserved: AVG=0.268 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2012,
"after": 0.0,
"delta": -0.2012,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0255,
"after": 0.0,
"delta": -0.0255,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.815,
"after": 4.0,
"delta": 0.185,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1548,
"after": 0.0,
"delta": -0.1548,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0218,
"after": 1.0,
"delta": -0.0218,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0967,
"after": 0.0,
"delta": -0.0967,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4147,
"after": 0.0,
"delta": -0.4147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3309,
"after": 0.0,
"delta": -0.3309,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.815,
"after": 4.0,
"delta": 0.185,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4147,
"after": 0.0,
"delta": -0.4147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5316,
"after": 1.0,
"delta": 0.4684,
"percent_delta": 0.8811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5316,
"after": 1.0,
"delta": 0.4684,
"percent_delta": 0.8811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2678,
"after": 0.25,
"delta": -0.0178,
"percent_delta": -0.0665,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2964,
"after": 0.25,
"delta": -0.0464,
"percent_delta": -0.1565,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.41,
"after": 0.25,
"delta": -0.16,
"percent_delta": -0.3902,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.41,
"after": 0.25,
"delta": -0.16,
"percent_delta": -0.3902,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2678,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2964,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.41,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2678,
"delta": 0.0178,
"percent_delta": 0.0713,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2964,
"delta": 0.0464,
"percent_delta": 0.1856,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.41,
"delta": 0.16,
"percent_delta": 0.6399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.41,
"delta": 0.16,
"percent_delta": 0.6399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.231,
"after": 2.0,
"delta": 1.769,
"percent_delta": 7.658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0,
"delta": -0.031,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.815,
"after": 4.0,
"delta": 0.185,
"percent_delta": 0.0485,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2678,
"delta": 0.0048,
"percent_delta": 0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.169,
"after": 0.0,
"delta": -0.169,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 3.0,
"delta": 2.02,
"percent_delta": 2.0612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.2964,
"delta": -0.0216,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.554,
"after": 1.0,
"delta": 0.446,
"percent_delta": 0.8051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.41,
"delta": -0.004,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.354,
"after": 1.0,
"delta": 0.646,
"percent_delta": 1.8249,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 5,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.98,
"after": 3.0,
"delta": 2.02,
"percent_delta": 2.0612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.231 | - |
| predicted_3B | 0.031 | - |
| predicted_AB | 3.815 | - |
| predicted_AVG | 0.263 | - |
| predicted_BB | 0.169 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.318 | - |
| predicted_R | 0.554 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.414 | - |
| predicted_SO | 0.354 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.201 | -0.030 |
| predicted_3B | 0.025 | -0.006 |
| predicted_AB | 3.815 | 0.000 |
| predicted_AVG | 0.277 | 0.014 |
| predicted_BB | 0.156 | -0.013 |
| predicted_H | 1.044 | 0.064 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.101 | 0.001 |
| predicted_OBP | 0.319 | 0.001 |
| predicted_R | 0.550 | -0.004 |
| predicted_RBI | 0.429 | -0.001 |
| predicted_SLG | 0.420 | 0.006 |
| predicted_SO | 0.328 | -0.026 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.201 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 3.815 | 0.000 |
| predicted_AVG | 0.268 | -0.009 |
| predicted_BB | 0.155 | -0.001 |
| predicted_H | 1.022 | -0.022 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.097 | -0.004 |
| predicted_OBP | 0.296 | -0.023 |
| predicted_R | 0.532 | -0.019 |
| predicted_RBI | 0.415 | -0.015 |
| predicted_SLG | 0.410 | -0.010 |
| predicted_SO | 0.331 | 0.003 |
AB rounded to 4 (raw=3.81), rates preserved: AVG=0.268 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.201 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 4.000 | 0.185 |
| predicted_AVG | 0.250 | -0.018 |
| predicted_BB | 0.000 | -0.155 |
| predicted_H | 1.000 | -0.022 |
| predicted_HR | 0.000 | -0.097 |
| predicted_OBP | 0.250 | -0.046 |
| predicted_R | 1.000 | 0.468 |
| predicted_RBI | 0.000 | -0.415 |
| predicted_SLG | 0.250 | -0.160 |
| predicted_SO | 0.000 | -0.331 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 2.000 | 2.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 3.000 | 2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 0.000 | 0.1667 | 0.1667 | 0.3333 | 0.1667 | 0.0556 | 0.1111 | 0.0000 | 0.0000 |
| last_10 | 0.20 | 10 | - | 40.000 | 14.000 | 1.000 | 0.000 | 1.000 | 5.000 | 7.000 | 1.000 | 1.000 | 0.3500 | 0.3571 | 0.4500 | 0.3500 | 0.0250 | 0.1250 | 0.0250 | 0.0250 |
| season | 0.60 | 65 | - | 248.000 | 82.000 | 15.000 | 2.000 | 4.000 | 26.000 | 36.000 | 11.000 | 23.000 | 0.3306 | 0.3623 | 0.4556 | 0.3306 | 0.0161 | 0.1048 | 0.0444 | 0.0927 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1600 |
| predicted_3B | 0.0180 |
| predicted_AB | 3.8150 |
| predicted_AVG | 0.2965 |
| predicted_BB | 0.1380 |
| predicted_H | 1.1310 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.1020 |
| predicted_OBP | 0.3213 |
| predicted_R | 0.5450 |
| predicted_RBI | 0.4280 |
| predicted_SLG | 0.4280 |
| predicted_SO | 0.2930 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2310 | 0.1600 | 0.2012 | model_form_blend |
| predicted_3B | 0.0310 | 0.0180 | 0.0255 | model_form_blend |
| predicted_AB | 3.8150 | 3.8150 | 3.8150 | model_form_blend |
| predicted_AVG | 0.2630 | 0.2965 | 0.2771 | model_form_blend |
| predicted_BB | 0.1690 | 0.1380 | 0.1560 | model_form_blend |
| predicted_H | 0.9800 | 1.1310 | 1.0435 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1000 | 0.1020 | 0.1008 | model_form_blend |
| predicted_OBP | 0.3180 | 0.3213 | 0.3194 | model_form_blend |
| predicted_R | 0.5540 | 0.5450 | 0.5502 | model_form_blend |
| predicted_RBI | 0.4300 | 0.4280 | 0.4292 | model_form_blend |
| predicted_SLG | 0.4140 | 0.4280 | 0.4199 | model_form_blend |
| predicted_SO | 0.3540 | 0.2930 | 0.3284 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 212 |
| Season rows before report date | 212 |
| Report year | 2026 |
| Profile rows used | 65 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 3 |
| 2B | 2 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.331 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 808982 |
| playerID | 808982 |
| playerName | Jung Hoo Lee |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 9.3 |
| sl_bb_percent | 4.1 |
| sl_woba | 0.352 |
| sl_xwoba | 0.335 |
| sl_xba | 0.316 |
| sl_xslg | 0.409 |
| sl_sweet_spot_percent | 39.1 |
| sl_barrel_batted_rate | 2.6 |
| sl_hard_hit_percent | 30.4 |
| sl_exit_velocity_avg | 87.7 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 12.2 |
| sl_swing_percent | 47.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.197 | 1.000 | 0.000 | Hitting_2B | 0.230 | 0.000 | 0.770 | 1.000 |
| predicted_3B | 0.015 | 0.000 | 0.000 | Hitting_3B | 0.047 | 0.000 | -0.047 | 0.000 |
| predicted_AB | 3.970 | 4.000 | 4.000 | Hitting_AB | 3.981 | 4.000 | 0.019 | 0.000 |
| predicted_AVG | 0.265 | 0.500 | 0.250 | Hitting_AVG | 0.304 | 0.500 | 0.196 | 0.000 |
| predicted_BB | 0.106 | 0.000 | 0.000 | Hitting_BB | 0.141 | 0.000 | -0.141 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 0.980 | 2.000 | 1.000 | Hitting_H | 1.211 | 2.000 | 0.789 | 0.000 |
| predicted_HR | 0.130 | 1.000 | 0.000 | Hitting_HR | 0.254 | 0.000 | 0.746 | 1.000 |
| predicted_OBP | 0.337 | 0.500 | 0.250 | Hitting_OBP | 0.345 | 0.500 | 0.155 | 0.000 |
| predicted_R | 0.515 | 1.000 | 0.000 | Hitting_R | 0.638 | 0.000 | 0.362 | 1.000 |
| predicted_RBI | 0.370 | 3.000 | 0.000 | Hitting_RBI | 0.653 | 0.000 | 2.347 | 3.000 |
| predicted_SLG | 0.448 | 1.500 | 0.250 | Hitting_SLG | 0.577 | 0.500 | 0.923 | 1.000 |
| predicted_SO | 0.848 | 1.000 | 1.000 | Hitting_SO | 0.826 | 1.000 | 0.174 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.3700 -> 3.0000 (boost 2.6300, better) |
| Biggest Deboost | predicted_BB: 0.1060 -> 0.0000 (deboost -0.1060, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_H: 0.9800 -> 1.0786 (boost 0.0986, better) | predicted_AB: 3.9700 -> 3.9093 (deboost -0.0607, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3418 -> 0.2877 (deboost -0.0541, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 0.8566 -> 1.0000 (boost 0.1434, worse) | predicted_RBI: 0.3461 -> 0.0000 (deboost -0.3461, worse) | AB rounded to 4 (raw=3.97), rates preserved: AVG=0.266 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4911 -> 0.0000 (deboost -0.4911, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4212 -> 0.2500 (deboost -0.1712, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 5 | 0 | 5 | 0 | predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4212 (boost 0.1712, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669477",
"player_name": "Casey Schmitt",
"position": "CF",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.197,
"predicted_3B": 0.015,
"predicted_AB": 3.97,
"predicted_AVG": 0.265,
"predicted_BB": 0.106,
"predicted_H": 0.98,
"predicted_HR": 0.13,
"predicted_OBP": 0.337,
"predicted_R": 0.515,
"predicted_RBI": 0.37,
"predicted_SLG": 0.448,
"predicted_SO": 0.848
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1903,
"predicted_3B": 0.0125,
"predicted_AB": 3.9093,
"predicted_AVG": 0.287,
"predicted_BB": 0.0967,
"predicted_H": 1.0786,
"predicted_HBP": 0.111,
"predicted_HR": 0.1304,
"predicted_OBP": 0.3418,
"predicted_R": 0.5083,
"predicted_RBI": 0.3582,
"predicted_SLG": 0.4584,
"predicted_SO": 0.8501
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.1903,
"delta": -0.0067,
"percent_delta": -0.034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0125,
"delta": -0.0025,
"percent_delta": -0.1667,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.97,
"after": 3.9093,
"delta": -0.0607,
"percent_delta": -0.0153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.287,
"delta": 0.022,
"percent_delta": 0.083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.106,
"after": 0.0967,
"delta": -0.0093,
"percent_delta": -0.0877,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.0786,
"delta": 0.0986,
"percent_delta": 0.1006,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1304,
"delta": 0.0004,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.3418,
"delta": 0.0048,
"percent_delta": 0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.515,
"after": 0.5083,
"delta": -0.0067,
"percent_delta": -0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.3582,
"delta": -0.0118,
"percent_delta": -0.0319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.448,
"after": 0.4584,
"delta": 0.0104,
"percent_delta": 0.0232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.848,
"after": 0.8501,
"delta": 0.0021,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.98,
"after": 1.0786,
"delta": 0.0986,
"percent_delta": 0.1006,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.97,
"after": 3.9093,
"delta": -0.0607,
"percent_delta": -0.0153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1903,
"predicted_3B": 0.0125,
"predicted_AB": 3.9093,
"predicted_AVG": 0.2702,
"predicted_BB": 0.096,
"predicted_H": 1.0562,
"predicted_HBP": 0.111,
"predicted_HR": 0.1251,
"predicted_OBP": 0.2877,
"predicted_R": 0.4911,
"predicted_RBI": 0.3461,
"predicted_SLG": 0.4212,
"predicted_SO": 0.8566
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1903,
"after": 0.1903,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0125,
"after": 0.0125,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9093,
"after": 3.9093,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.287,
"after": 0.2702,
"delta": -0.0168,
"percent_delta": -0.0585,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0967,
"after": 0.096,
"delta": -0.0007,
"percent_delta": -0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0786,
"after": 1.0562,
"delta": -0.0224,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.111,
"after": 0.111,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1304,
"after": 0.1251,
"delta": -0.0053,
"percent_delta": -0.0406,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3418,
"after": 0.2877,
"delta": -0.0541,
"percent_delta": -0.1583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5083,
"after": 0.4911,
"delta": -0.0172,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3582,
"after": 0.3461,
"delta": -0.0121,
"percent_delta": -0.0338,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4584,
"after": 0.4212,
"delta": -0.0372,
"percent_delta": -0.0812,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8501,
"after": 0.8566,
"delta": 0.0065,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3418,
"after": 0.2877,
"delta": -0.0541,
"percent_delta": -0.1583,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.97), rates preserved: AVG=0.266 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1903,
"after": 0.0,
"delta": -0.1903,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0125,
"after": 0.0,
"delta": -0.0125,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9093,
"after": 4.0,
"delta": 0.0907,
"percent_delta": 0.0232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.096,
"after": 0.0,
"delta": -0.096,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0562,
"after": 1.0,
"delta": -0.0562,
"percent_delta": -0.0532,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.111,
"after": 0.0,
"delta": -0.111,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1251,
"after": 0.0,
"delta": -0.1251,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3461,
"after": 0.0,
"delta": -0.3461,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8566,
"after": 1.0,
"delta": 0.1434,
"percent_delta": 0.1674,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8566,
"after": 1.0,
"delta": 0.1434,
"percent_delta": 0.1674,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3461,
"after": 0.0,
"delta": -0.3461,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4911,
"after": 0.0,
"delta": -0.4911,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4911,
"after": 0.0,
"delta": -0.4911,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2702,
"after": 0.25,
"delta": -0.0202,
"percent_delta": -0.0748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2877,
"after": 0.25,
"delta": -0.0377,
"percent_delta": -0.131,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4212,
"after": 0.25,
"delta": -0.1712,
"percent_delta": -0.4065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4212,
"after": 0.25,
"delta": -0.1712,
"percent_delta": -0.4065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2702,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2877,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4212,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2702,
"delta": 0.0202,
"percent_delta": 0.0807,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2877,
"delta": 0.0377,
"percent_delta": 0.1506,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4212,
"delta": 0.1712,
"percent_delta": 0.6849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4212,
"delta": 0.1712,
"percent_delta": 0.6849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 1.0,
"delta": 0.803,
"percent_delta": 4.0761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0,
"delta": -0.015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.97,
"after": 4.0,
"delta": 0.03,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2702,
"delta": 0.0052,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.106,
"after": 0.0,
"delta": -0.106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.2877,
"delta": -0.0493,
"percent_delta": -0.1463,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.515,
"after": 1.0,
"delta": 0.485,
"percent_delta": 0.9417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 3.0,
"delta": 2.63,
"percent_delta": 7.1081,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.448,
"after": 0.4212,
"delta": -0.0268,
"percent_delta": -0.0598,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.848,
"after": 1.0,
"delta": 0.152,
"percent_delta": 0.1792,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 7,
"deboosted_metrics": 3,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.37,
"after": 3.0,
"delta": 2.63,
"percent_delta": 7.1081,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.106,
"after": 0.0,
"delta": -0.106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | - |
| predicted_3B | 0.015 | - |
| predicted_AB | 3.970 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.106 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.337 | - |
| predicted_R | 0.515 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.448 | - |
| predicted_SO | 0.848 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.190 | -0.007 |
| predicted_3B | 0.013 | -0.002 |
| predicted_AB | 3.909 | -0.061 |
| predicted_AVG | 0.287 | 0.022 |
| predicted_BB | 0.097 | -0.009 |
| predicted_H | 1.079 | 0.099 |
| predicted_HBP | 0.111 | - |
| predicted_HR | 0.130 | 0.000 |
| predicted_OBP | 0.342 | 0.005 |
| predicted_R | 0.508 | -0.007 |
| predicted_RBI | 0.358 | -0.012 |
| predicted_SLG | 0.458 | 0.010 |
| predicted_SO | 0.850 | 0.002 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.190 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.909 | 0.000 |
| predicted_AVG | 0.270 | -0.017 |
| predicted_BB | 0.096 | -0.001 |
| predicted_H | 1.056 | -0.022 |
| predicted_HBP | 0.111 | 0.000 |
| predicted_HR | 0.125 | -0.005 |
| predicted_OBP | 0.288 | -0.054 |
| predicted_R | 0.491 | -0.017 |
| predicted_RBI | 0.346 | -0.012 |
| predicted_SLG | 0.421 | -0.037 |
| predicted_SO | 0.857 | 0.007 |
AB rounded to 4 (raw=3.97), rates preserved: AVG=0.266 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.190 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 4.000 | 0.091 |
| predicted_AVG | 0.250 | -0.020 |
| predicted_BB | 0.000 | -0.096 |
| predicted_H | 1.000 | -0.056 |
| predicted_HR | 0.000 | -0.125 |
| predicted_OBP | 0.250 | -0.038 |
| predicted_R | 0.000 | -0.491 |
| predicted_RBI | 0.000 | -0.346 |
| predicted_SLG | 0.250 | -0.171 |
| predicted_SO | 1.000 | 0.143 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 3.000 | 3.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 8.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 0.000 | 4.000 | 0.5000 | 0.5294 | 0.5625 | 0.5000 | 0.0000 | 0.0000 | 0.0000 | 0.2500 |
| last_10 | 0.20 | 10 | - | 40.000 | 11.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 0.000 | 9.000 | 0.2750 | 0.2927 | 0.3000 | 0.2750 | 0.0000 | 0.0000 | 0.0000 | 0.2250 |
| season | 0.60 | 66 | - | 262.000 | 74.000 | 13.000 | 1.000 | 15.000 | 37.000 | 34.000 | 7.000 | 56.000 | 0.2824 | 0.3129 | 0.5115 | 0.2824 | 0.0573 | 0.1412 | 0.0267 | 0.2137 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1810 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.8260 |
| predicted_AVG | 0.3172 |
| predicted_BB | 0.0840 |
| predicted_H | 1.2140 |
| predicted_HBP | 0.1110 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3484 |
| predicted_R | 0.4990 |
| predicted_RBI | 0.3420 |
| predicted_SLG | 0.4726 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.1810 | 0.1903 | model_form_blend |
| predicted_3B | 0.0150 | 0.0090 | 0.0125 | model_form_blend |
| predicted_AB | 3.9700 | 3.8260 | 3.9093 | model_form_blend |
| predicted_AVG | 0.2650 | 0.3172 | 0.2870 | model_form_blend |
| predicted_BB | 0.1060 | 0.0840 | 0.0967 | model_form_blend |
| predicted_H | 0.9800 | 1.2140 | 1.0786 | model_form_blend |
| predicted_HBP | - | 0.1110 | 0.1110 | form_only |
| predicted_HR | 0.1300 | 0.1310 | 0.1304 | model_form_blend |
| predicted_OBP | 0.3370 | 0.3484 | 0.3418 | model_form_blend |
| predicted_R | 0.5150 | 0.4990 | 0.5083 | model_form_blend |
| predicted_RBI | 0.3700 | 0.3420 | 0.3582 | model_form_blend |
| predicted_SLG | 0.4480 | 0.4726 | 0.4584 | model_form_blend |
| predicted_SO | 0.8480 | 0.8530 | 0.8501 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 213 |
| Season rows before report date | 213 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.282 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 669477 |
| playerID | 669477 |
| playerName | Casey Schmitt |
| pos | DH |
| started | True |
| startingPosition | LF |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.9 |
| sl_bb_percent | 2.5 |
| sl_woba | 0.353 |
| sl_xwoba | 0.344 |
| sl_xba | 0.282 |
| sl_xslg | 0.491 |
| sl_sweet_spot_percent | 38.2 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 41.5 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 20.9 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 53.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.265 | 0.000 | 0.000 | Hitting_2B | 0.174 | 0.000 | -0.174 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.353 | 4.000 | 3.000 | Hitting_AB | 3.319 | 5.000 | 0.681 | -1.000 |
| predicted_AVG | 0.285 | 0.000 | 0.333 | Hitting_AVG | 0.253 | 0.200 | -0.253 | -0.200 |
| predicted_BB | 0.529 | 0.000 | 0.000 | Hitting_BB | 0.449 | 0.000 | -0.449 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.870 | 0.000 | 1.000 | Hitting_H | 0.841 | 1.000 | -0.841 | -1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.130 | 1.000 | -0.130 | -1.000 |
| predicted_OBP | 0.391 | 0.000 | 0.333 | Hitting_OBP | 0.341 | 0.200 | -0.341 | -0.200 |
| predicted_R | 0.559 | 0.000 | 1.000 | Hitting_R | 0.362 | 1.000 | -0.362 | -1.000 |
| predicted_RBI | 0.530 | 0.000 | 0.000 | Hitting_RBI | 0.290 | 1.000 | -0.290 | -1.000 |
| predicted_SLG | 0.514 | 0.000 | 0.333 | Hitting_SLG | 0.424 | 0.800 | -0.424 | -0.800 |
| predicted_SO | 0.765 | 3.000 | 1.000 | Hitting_SO | 0.870 | 1.000 | 2.130 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.7650 -> 3.0000 (boost 2.2350, worse) |
| Biggest Deboost | predicted_H: 0.8700 -> 0.0000 (deboost -0.8700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 5 | 0 | predicted_H: 0.8700 -> 0.9778 (boost 0.1078, better) | predicted_SO: 0.7650 -> 0.7091 (deboost -0.0559, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5372 -> 0.5057 (deboost -0.0315, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 0 | 6 | predicted_SO: 0.7145 -> 1.0000 (boost 0.2855, worse) | predicted_RBI: 0.5588 -> 0.0000 (deboost -0.5588, worse) | AB rounded to 3 (raw=3.39), rates preserved: AVG=0.282 HR/AB=0.051 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5156 -> 1.0000 (boost 0.4844, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2825 -> 0.3330 (boost 0.0505, better) | predicted_SLG: 0.5057 -> 0.3330 (deboost -0.1727, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 1 | 3 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.5057 (boost 0.1727, better) | predicted_AVG: 0.3330 -> 0.2825 (deboost -0.0505, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805811",
"player_name": "Bryce Eldridge",
"position": "RF",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.265,
"predicted_3B": 0.0,
"predicted_AB": 3.353,
"predicted_AVG": 0.285,
"predicted_BB": 0.529,
"predicted_H": 0.87,
"predicted_HR": 0.16,
"predicted_OBP": 0.391,
"predicted_R": 0.559,
"predicted_RBI": 0.53,
"predicted_SLG": 0.514,
"predicted_SO": 0.765
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2377,
"predicted_3B": 0.0008,
"predicted_AB": 3.3898,
"predicted_AVG": 0.3034,
"predicted_BB": 0.5508,
"predicted_H": 0.9778,
"predicted_HBP": 0.006,
"predicted_HR": 0.1798,
"predicted_OBP": 0.4045,
"predicted_R": 0.5336,
"predicted_RBI": 0.5783,
"predicted_SLG": 0.5372,
"predicted_SO": 0.7091
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.265,
"after": 0.2377,
"delta": -0.0273,
"percent_delta": -0.103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.353,
"after": 3.3898,
"delta": 0.0368,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.285,
"after": 0.3034,
"delta": 0.0184,
"percent_delta": 0.0646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.529,
"after": 0.5508,
"delta": 0.0218,
"percent_delta": 0.0412,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.9778,
"delta": 0.1078,
"percent_delta": 0.1239,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.1798,
"delta": 0.0198,
"percent_delta": 0.1237,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.391,
"after": 0.4045,
"delta": 0.0135,
"percent_delta": 0.0345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.559,
"after": 0.5336,
"delta": -0.0254,
"percent_delta": -0.0454,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.5783,
"delta": 0.0483,
"percent_delta": 0.0911,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.514,
"after": 0.5372,
"delta": 0.0232,
"percent_delta": 0.0451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.765,
"after": 0.7091,
"delta": -0.0559,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.87,
"after": 0.9778,
"delta": 0.1078,
"percent_delta": 0.1239,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.765,
"after": 0.7091,
"delta": -0.0559,
"percent_delta": -0.0731,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 34
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2377,
"predicted_3B": 0.0008,
"predicted_AB": 3.3898,
"predicted_AVG": 0.2825,
"predicted_BB": 0.5466,
"predicted_H": 0.9575,
"predicted_HBP": 0.006,
"predicted_HR": 0.1724,
"predicted_OBP": 0.3821,
"predicted_R": 0.5156,
"predicted_RBI": 0.5588,
"predicted_SLG": 0.5057,
"predicted_SO": 0.7145
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2377,
"after": 0.2377,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3898,
"after": 3.3898,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3034,
"after": 0.2825,
"delta": -0.0209,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5508,
"after": 0.5466,
"delta": -0.0042,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9778,
"after": 0.9575,
"delta": -0.0203,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1798,
"after": 0.1724,
"delta": -0.0074,
"percent_delta": -0.0412,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4045,
"after": 0.3821,
"delta": -0.0224,
"percent_delta": -0.0554,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5336,
"after": 0.5156,
"delta": -0.018,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5783,
"after": 0.5588,
"delta": -0.0195,
"percent_delta": -0.0337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5372,
"after": 0.5057,
"delta": -0.0315,
"percent_delta": -0.0586,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7091,
"after": 0.7145,
"delta": 0.0054,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5372,
"after": 0.5057,
"delta": -0.0315,
"percent_delta": -0.0586,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.39), rates preserved: AVG=0.282 HR/AB=0.051",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2377,
"after": 0.0,
"delta": -0.2377,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3898,
"after": 3.0,
"delta": -0.3898,
"percent_delta": -0.115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5466,
"after": 0.0,
"delta": -0.5466,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9575,
"after": 1.0,
"delta": 0.0425,
"percent_delta": 0.0444,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1724,
"after": 0.0,
"delta": -0.1724,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5588,
"after": 0.0,
"delta": -0.5588,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7145,
"after": 1.0,
"delta": 0.2855,
"percent_delta": 0.3996,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7145,
"after": 1.0,
"delta": 0.2855,
"percent_delta": 0.3996,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5588,
"after": 0.0,
"delta": -0.5588,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5156,
"after": 1.0,
"delta": 0.4844,
"percent_delta": 0.9395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5156,
"after": 1.0,
"delta": 0.4844,
"percent_delta": 0.9395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2825,
"after": 0.333,
"delta": 0.0505,
"percent_delta": 0.1788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3821,
"after": 0.333,
"delta": -0.0491,
"percent_delta": -0.1285,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5057,
"after": 0.333,
"delta": -0.1727,
"percent_delta": -0.3415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2825,
"after": 0.333,
"delta": 0.0505,
"percent_delta": 0.1788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5057,
"after": 0.333,
"delta": -0.1727,
"percent_delta": -0.3415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2825,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3821,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5057,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2825,
"delta": -0.0505,
"percent_delta": -0.1518,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3821,
"delta": 0.0491,
"percent_delta": 0.1474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.5057,
"delta": 0.1727,
"percent_delta": 0.5185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.5057,
"delta": 0.1727,
"percent_delta": 0.5185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2825,
"delta": -0.0505,
"percent_delta": -0.1518,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.265,
"after": 0.0,
"delta": -0.265,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.353,
"after": 4.0,
"delta": 0.647,
"percent_delta": 0.193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.285,
"after": 0.2825,
"delta": -0.0025,
"percent_delta": -0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.529,
"after": 0.0,
"delta": -0.529,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.391,
"after": 0.3821,
"delta": -0.0089,
"percent_delta": -0.0228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.559,
"after": 0.0,
"delta": -0.559,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.514,
"after": 0.5057,
"delta": -0.0083,
"percent_delta": -0.0161,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.765,
"after": 3.0,
"delta": 2.235,
"percent_delta": 2.9216,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.765,
"after": 3.0,
"delta": 2.235,
"percent_delta": 2.9216,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.265 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.353 | - |
| predicted_AVG | 0.285 | - |
| predicted_BB | 0.529 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.391 | - |
| predicted_R | 0.559 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.514 | - |
| predicted_SO | 0.765 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.238 | -0.027 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.390 | 0.037 |
| predicted_AVG | 0.303 | 0.018 |
| predicted_BB | 0.551 | 0.022 |
| predicted_H | 0.978 | 0.108 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.180 | 0.020 |
| predicted_OBP | 0.405 | 0.014 |
| predicted_R | 0.534 | -0.025 |
| predicted_RBI | 0.578 | 0.048 |
| predicted_SLG | 0.537 | 0.023 |
| predicted_SO | 0.709 | -0.056 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.238 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.390 | 0.000 |
| predicted_AVG | 0.282 | -0.021 |
| predicted_BB | 0.547 | -0.004 |
| predicted_H | 0.958 | -0.020 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.172 | -0.007 |
| predicted_OBP | 0.382 | -0.022 |
| predicted_R | 0.516 | -0.018 |
| predicted_RBI | 0.559 | -0.020 |
| predicted_SLG | 0.506 | -0.031 |
| predicted_SO | 0.715 | 0.005 |
AB rounded to 3 (raw=3.39), rates preserved: AVG=0.282 HR/AB=0.051
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.238 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.390 |
| predicted_AVG | 0.333 | 0.051 |
| predicted_BB | 0.000 | -0.547 |
| predicted_H | 1.000 | 0.042 |
| predicted_HR | 0.000 | -0.172 |
| predicted_OBP | 0.333 | -0.049 |
| predicted_R | 1.000 | 0.484 |
| predicted_RBI | 0.000 | -0.559 |
| predicted_SLG | 0.333 | -0.173 |
| predicted_SO | 1.000 | 0.285 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 6.000 | 0.000 | 0.000 | 1.000 | 4.000 | 1.000 | 4.000 | 1.000 | 0.3750 | 0.5000 | 0.5625 | 0.3750 | 0.0625 | 0.2500 | 0.2500 | 0.0625 |
| last_10 | 0.20 | 10 | - | 35.000 | 14.000 | 2.000 | 0.000 | 4.000 | 11.000 | 6.000 | 8.000 | 4.000 | 0.4000 | 0.5116 | 0.8000 | 0.4000 | 0.1143 | 0.3143 | 0.2286 | 0.1143 |
| season | 0.60 | 34 | - | 114.000 | 37.000 | 9.000 | 0.000 | 6.000 | 17.000 | 19.000 | 18.000 | 26.000 | 0.3246 | 0.4135 | 0.5614 | 0.3246 | 0.0526 | 0.1491 | 0.1579 | 0.2281 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1960 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.4460 |
| predicted_AVG | 0.3315 |
| predicted_BB | 0.5840 |
| predicted_H | 1.1420 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.2100 |
| predicted_OBP | 0.4252 |
| predicted_R | 0.4950 |
| predicted_RBI | 0.6520 |
| predicted_SLG | 0.5726 |
| predicted_SO | 0.6240 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2650 | 0.1960 | 0.2377 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.3530 | 3.4460 | 3.3898 | model_form_blend |
| predicted_AVG | 0.2850 | 0.3315 | 0.3034 | model_form_blend |
| predicted_BB | 0.5290 | 0.5840 | 0.5508 | model_form_blend |
| predicted_H | 0.8700 | 1.1420 | 0.9778 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.1600 | 0.2100 | 0.1798 | model_form_blend |
| predicted_OBP | 0.3910 | 0.4252 | 0.4045 | model_form_blend |
| predicted_R | 0.5590 | 0.4950 | 0.5336 | model_form_blend |
| predicted_RBI | 0.5300 | 0.6520 | 0.5783 | model_form_blend |
| predicted_SLG | 0.5140 | 0.5726 | 0.5372 | model_form_blend |
| predicted_SO | 0.7650 | 0.6240 | 0.7091 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 69 |
| Season rows before report date | 69 |
| Report year | 2026 |
| Profile rows used | 34 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.325 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 805811 |
| playerID | 805811 |
| playerName | Bryce Eldridge |
| pos | DH |
| started | True |
| startingPosition | 1B |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.8 |
| sl_bb_percent | 13.0 |
| sl_woba | 0.413 |
| sl_xwoba | 0.403 |
| sl_xba | 0.302 |
| sl_xslg | 0.555 |
| sl_sweet_spot_percent | 34.1 |
| sl_barrel_batted_rate | 13.6 |
| sl_hard_hit_percent | 56.8 |
| sl_exit_velocity_avg | 91.8 |
| sl_launch_angle_avg | 13.2 |
| sl_whiff_percent | 21.2 |
| sl_swing_percent | 45.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 4.000 | 4.000 | 4.000 | Pitching_BB | 2.286 | 2.000 | 1.714 | 2.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 2.500 | 4.000 | 2.500 | 1.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 4.571 | 4.000 | 1.429 | 2.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 5.143 | 4.200 | -0.043 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 5.857 | 5.000 | -3.857 | -3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.3333 -> 5.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "694738",
"player_name": "Landen Roupp",
"position": "Starter",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 4.0,
"predicted_ER": 5.0,
"predicted_H": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.3333,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 4.0,
"predicted_ER": 5.0,
"predicted_H": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.1,
"predicted_R": 5.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0438,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.3333,
"after": 5.1,
"delta": -0.2333,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 4.000 | - |
| predicted_ER | 5.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.333 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 25.100 | 16.000 | 29.000 | 11.000 | 24.000 | 2.000 | 5.6842 | 1.5789 | 0.6316 | 1.1447 | 0.4342 | 0.9474 | 0.0790 |
| last_10 | 0.35 | 10 | 51.200 | 29.000 | 49.000 | 25.000 | 58.000 | 4.000 | 5.0516 | 1.4323 | 0.5613 | 0.9484 | 0.4839 | 1.1226 | 0.0774 |
| season | 0.20 | 14 | 74.100 | 35.000 | 64.000 | 32.000 | 82.000 | 4.000 | 4.2377 | 1.2915 | 0.4708 | 0.8610 | 0.4305 | 1.1031 | 0.0538 |
| Metric | Value |
|---|---|
| predicted_BB | 2.2340 |
| predicted_ER | 2.9010 |
| predicted_ERA | 4.9984 |
| predicted_H | 5.2610 |
| predicted_HR | 0.4830 |
| predicted_IP | 5.1000 |
| predicted_SO | 5.2900 |
| predicted_WHIP | 1.4351 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 4.0000 | 2.2340 | 3.0485 | model_form_blend |
| predicted_ER | 5.0000 | 2.9010 | 3.8691 | model_form_blend |
| predicted_ERA | - | 4.9984 | 4.9984 | form_only |
| predicted_H | 6.0000 | 5.2610 | 5.6018 | model_form_blend |
| predicted_HR | 0.0000 | 0.4830 | 0.2602 | model_form_blend |
| predicted_IP | 5.1000 | 5.1000 | 5.1000 | model_form_blend |
| predicted_SO | 2.0000 | 5.2900 | 3.7726 | model_form_blend |
| predicted_WHIP | - | 1.4351 | 1.4351 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.1 |
| H | 6 |
| R | 5 |
| ER | 5 |
| BB | 4 |
| SO | 2 |
| HR | 0 |
| BF | 26 |
| Pitches | 113 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 20 |
| Pitching_ER | 4 |
| Pitching_ERA | 4.24 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 4 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.2 |
| Pitching_Pitches | 105 |
| Pitching_R | 4 |
| Pitching_SO | 5 |
| Pitching_Strikes | 64 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_CHC@SF |
| game_type | full |
| mlbID | 694738 |
| playerID | 694738 |
| playerName | Landen Roupp |
| pos | P |
| started | True |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-12 |
| sl_k_percent | 26.2 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.301 |
| sl_xwoba | 0.289 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 3.6 |
| sl_hard_hit_percent | 29.9 |
| sl_whiff_percent | 26.2 |
| sl_swing_percent | 42.3 |
| sl_avg_best_speed | 77.330602813 |
| sl_avg_hyper_speed | 92.908893958 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.484 | 0.000 | -0.484 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.355 | 0.000 | -0.355 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.677 | 0.000 | -0.677 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.900 | 0.200 | 0.100 | 0.800 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.226 | 2.000 | -0.226 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "668873",
"player_name": "Caleb Kilian",
"position": "Middle Reliever",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 0.000 | 2.000 | 1.000 | 8.000 | 0.000 | 0.0000 | 0.6429 | 0.0000 | 0.4286 | 0.2143 | 1.7143 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 5.000 | 9.000 | 3.000 | 13.000 | 2.000 | 4.5000 | 1.2000 | 0.5000 | 0.9000 | 0.3000 | 1.3000 | 0.2000 |
| season | 0.20 | 31 | 32.100 | 11.000 | 21.000 | 15.000 | 38.000 | 5.000 | 3.0619 | 1.1134 | 0.3402 | 0.6495 | 0.4639 | 1.1753 | 0.1546 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3240 |
| predicted_ER | 0.3560 |
| predicted_ERA | 3.2035 |
| predicted_H | 0.7850 |
| predicted_HR | 0.1210 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2320 |
| predicted_WHIP | 1.1094 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3240 | 0.1507 | model_form_blend |
| predicted_ER | 0.0000 | 0.3560 | 0.1656 | model_form_blend |
| predicted_ERA | - | 3.2035 | 3.2035 | form_only |
| predicted_H | 0.0000 | 0.7850 | 0.3650 | model_form_blend |
| predicted_HR | 0.0000 | 0.1210 | 0.0563 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.2320 | 1.1079 | model_form_blend |
| predicted_WHIP | - | 1.1094 | 1.1094 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.06 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 8 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260617_SF@ATL |
| game_type | full |
| mlbID | 668873 |
| playerID | 668873 |
| playerName | Caleb Kilian |
| pos | P |
| started | False |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.6 |
| sl_bb_percent | 11.3 |
| sl_woba | 0.268 |
| sl_xwoba | 0.302 |
| sl_sweet_spot_percent | 32.1 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 38.5 |
| sl_whiff_percent | 27.0 |
| sl_swing_percent | 48.7 |
| sl_avg_best_speed | 76.913913077 |
| sl_avg_hyper_speed | 93.726986104 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.708 | 0.000 | 0.292 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.417 | 1.000 | -0.417 | -1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.708 | 1.000 | 0.292 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.683 | 0.100 | 0.317 | 0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.125 | 0.000 | -0.125 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.6667 -> 1.0000 (boost 0.3333, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "669062",
"player_name": "Erik Miller",
"position": "Middle Reliever",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.4999,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 1.0,
"delta": 0.3333,
"percent_delta": 0.4999,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.100 | 1.000 | 6.000 | 2.000 | 3.000 | 1.000 | 2.7000 | 2.4000 | 0.3000 | 1.8000 | 0.6000 | 0.9000 | 0.3000 |
| last_10 | 0.35 | 10 | 7.200 | 3.000 | 8.000 | 7.000 | 9.000 | 2.000 | 3.5217 | 1.9565 | 0.3913 | 1.0435 | 0.9130 | 1.1739 | 0.2609 |
| season | 0.20 | 23 | 19.200 | 9.000 | 16.000 | 15.000 | 27.000 | 2.000 | 4.1186 | 1.5763 | 0.4576 | 0.8136 | 0.7627 | 1.3729 | 0.1017 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3680 |
| predicted_ER | 0.3070 |
| predicted_ERA | 3.9658 |
| predicted_H | 0.7890 |
| predicted_HR | 0.1320 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6990 |
| predicted_WHIP | 1.6629 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3680 | 0.7391 | model_form_blend |
| predicted_ER | 0.0000 | 0.3070 | 0.1267 | model_form_blend |
| predicted_ERA | - | 3.9658 | 3.9658 | form_only |
| predicted_H | 1.0000 | 0.7890 | 0.9129 | model_form_blend |
| predicted_HR | 0.0000 | 0.1320 | 0.0545 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6990 | 0.8758 | model_form_blend |
| predicted_WHIP | - | 1.6629 | 1.6629 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 23 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 2 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.58 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 2 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 9 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260612_CHC@SF |
| game_type | full |
| mlbID | 669062 |
| playerID | 669062 |
| playerName | Erik Miller |
| pos | P |
| started | False |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-12 |
| sl_k_percent | 29.3 |
| sl_bb_percent | 18.5 |
| sl_woba | 0.344 |
| sl_xwoba | 0.329 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 10.6 |
| sl_hard_hit_percent | 31.9 |
| sl_whiff_percent | 32.3 |
| sl_swing_percent | 36.3 |
| sl_avg_best_speed | 70.04385 |
| sl_avg_hyper_speed | 93.30396087 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.526 | 0.000 | 0.474 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.579 | 0.000 | -0.579 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.053 | 1.000 | -1.053 | -1.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.842 | 1.000 | -0.642 | -0.800 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.895 | 2.000 | -0.895 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 0.2000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 0.2000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "676254",
"player_name": "Ryan Walker",
"position": "Middle Reliever",
"team": "SF",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.2,
"delta": 0.1,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.2,
"delta": 0.1,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.2,
"delta": 0.1,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.2,
"delta": 0.1,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 4.000 | 6.000 | 3.000 | 4.000 | 1.000 | 7.7143 | 1.9286 | 0.8571 | 1.2857 | 0.6429 | 0.8571 | 0.2143 |
| last_10 | 0.35 | 10 | 9.100 | 7.000 | 11.000 | 5.000 | 7.000 | 1.000 | 6.7500 | 1.7143 | 0.7500 | 1.1786 | 0.5357 | 0.7500 | 0.1071 |
| season | 0.20 | 19 | 18.100 | 11.000 | 20.000 | 10.000 | 17.000 | 2.000 | 5.4000 | 1.6364 | 0.6000 | 1.0909 | 0.5454 | 0.9273 | 0.1091 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2810 |
| predicted_ER | 0.3770 |
| predicted_ERA | 5.5218 |
| predicted_H | 0.6590 |
| predicted_HR | 0.0920 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.5490 |
| predicted_WHIP | 1.5301 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2810 | 0.7084 | model_form_blend |
| predicted_ER | 0.0000 | 0.3770 | 0.1529 | model_form_blend |
| predicted_ERA | - | 5.5218 | 5.5218 | form_only |
| predicted_H | 0.0000 | 0.6590 | 0.2672 | model_form_blend |
| predicted_HR | 0.0000 | 0.0920 | 0.0373 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.5490 | 0.2226 | model_form_blend |
| predicted_WHIP | - | 1.5301 | 1.5301 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 19 |
| Season rows before report date | 19 |
| Report year | 2026 |
| Profile rows used | 19 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.40 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 676254 |
| playerID | 676254 |
| playerName | Ryan Walker |
| pos | P |
| started | False |
| startingPosition | P |
| team | SF |
| teamID | 24 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.345 |
| sl_xwoba | 0.314 |
| sl_sweet_spot_percent | 28.6 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 30.4 |
| sl_whiff_percent | 17.3 |
| sl_swing_percent | 41.2 |
| sl_avg_best_speed | 71.33052037 |
| sl_avg_hyper_speed | 92.360391852 |
| Field | Value |
|---|---|
| Pitcher | Martín Pérez |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.0702 |
| ESPN Rank | 49 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2396 |
| Avg Velo | 85.4512 |
| Avg Spin | 1966.6648 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 3 |
| Pre H | 6 |
| Pre BB | 0 |
| Pre SO | 8 |
| Season ERA | 2.9032 |
| Season WHIP | 1.0484 |
| Role Avg IP | 5.2670 |
| Recent Avg IP | 5.2000 |
| Last Start IP | 5.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"opponent": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"edges": {
"quality_edge": 0.2222,
"offense_edge": 0.0822,
"opponent_offense_edge": -0.0224,
"defense_strength": 0.2706,
"opponent_defense_weakness": 0.0465,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 1.0179,
"run_prevention": 0.9582,
"strikeout": 1.0085
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "527048",
"profile": {
"available": true,
"pitcher_id": "527048",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 184.0,
"k_percent": 20.8,
"bb_percent": 8.6,
"woba": 0.28,
"xwoba": 0.314,
"sweet_spot_percent": 36.3,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.0,
"avg_best_speed": 77.0384,
"avg_hyper_speed": 94.021,
"whiff_percent": 22.5,
"swing_percent": 43.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.1484,
"command_and_miss": -0.2393,
"regression_edge": -0.9714,
"xwoba_edge": 0.0286,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.4571,
"bb_edge": 0.15,
"pitch_design_score": -0.2396
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "527048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 82,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 82,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 82,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.4512,
"release_spin_rate": 1966.6648,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2396,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.7111,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0702,
"sample_weight": 0.736,
"run_prevention_factor": 1.006,
"strikeout_factor": 0.9794,
"walk_factor": 0.9912,
"homer_factor": 0.9955,
"woba_minus_xwoba": -0.034,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "527048",
"espn_id": 31098,
"player_name": "Martin Perez",
"team": "ATL",
"role": "pitcher",
"espn_rank": 49,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 49,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 10.0,
"gs_rank": 112,
"qs_value": 1.0,
"qs_rank": 134,
"era_value": 2.9032,
"era_rank": null,
"w_value": 5.0,
"w_rank": 39,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 62.0,
"ip_rank": 111,
"h_value": 44.0,
"h_rank": 132,
"er_value": 20.0,
"er_rank": 150,
"hr_value": 6.0,
"hr_rank": 125,
"bb_value": 21.0,
"bb_rank": 109,
"k_value": 51.0,
"k_rank": 108,
"k_per_9_value": 7.403226,
"k_per_9_rank": 26,
"whip_value": 1.0483,
"whip_rank": null,
"war_value": 1.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0044,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0044,
"adjusted": 4
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9935,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9967,
"adjusted": 0
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9848,
"adjusted": 4
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 38.2,
"ER": 13,
"H": 28,
"BB": 15,
"SO": 37,
"HR": 3,
"ERA": 3.025862068965517,
"WHIP": 1.1120689655172413,
"K9": 8.61206896551724,
"HR9": 0.6982758620689654,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "527048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 82,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 82,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 82,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.4512,
"release_spin_rate": 1966.6648,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2396,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.7111,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "527048",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 26.0,
"ER": 11.0,
"R": 11.0,
"H": 21.0,
"BB": 10.0,
"SO": 23.0,
"HR": 2.0,
"BF": 105.0,
"Pitches": 401.0
},
"per_game": {
"IP": 5.1,
"ER": 2.2,
"R": 2.2,
"H": 4.2,
"BB": 2.0,
"SO": 4.6,
"HR": 0.4,
"BF": 21.0,
"Pitches": 80.2
},
"rates": {
"ERA": 3.8077,
"WHIP": 1.1923,
"ER_per_IP": 0.42308,
"H_per_IP": 0.80769,
"BB_per_IP": 0.38462,
"SO_per_IP": 0.88462,
"HR_per_IP": 0.07692
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 41.2,
"ER": 15.0,
"R": 15.0,
"H": 31.0,
"BB": 15.0,
"SO": 41.0,
"HR": 5.0,
"BF": 166.0,
"Pitches": 654.0
},
"per_game": {
"IP": 4.0,
"ER": 1.5,
"R": 1.5,
"H": 3.1,
"BB": 1.5,
"SO": 4.1,
"HR": 0.5,
"BF": 16.6,
"Pitches": 65.4
},
"rates": {
"ERA": 3.24,
"WHIP": 1.104,
"ER_per_IP": 0.36,
"H_per_IP": 0.744,
"BB_per_IP": 0.36,
"SO_per_IP": 0.984,
"HR_per_IP": 0.12
}
},
"season": {
"games": 14,
"totals": {
"IP": 62.0,
"ER": 20.0,
"R": 20.0,
"H": 44.0,
"BB": 21.0,
"SO": 51.0,
"HR": 6.0,
"BF": 245.0,
"Pitches": 956.0
},
"per_game": {
"IP": 4.1,
"ER": 1.4286,
"R": 1.4286,
"H": 3.1429,
"BB": 1.5,
"SO": 3.6429,
"HR": 0.4286,
"BF": 17.5,
"Pitches": 68.2857
},
"rates": {
"ERA": 2.9032,
"WHIP": 1.0484,
"ER_per_IP": 0.32258,
"H_per_IP": 0.70968,
"BB_per_IP": 0.33871,
"SO_per_IP": 0.82258,
"HR_per_IP": 0.09677
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 2.034,
"predicted_H": 4.045,
"predicted_BB": 1.804,
"predicted_SO": 4.511,
"predicted_HR": 0.538,
"predicted_ERA": 3.7124,
"predicted_WHIP": 1.1865
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.0,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 4.0,
"form": 2.034,
"final": 2.9407,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 4.045,
"final": 4.9466,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 1.804,
"final": 0.972,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 8.0,
"form": 4.511,
"final": 6.1201,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.538,
"final": 0.7511,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7124,
"final": 3.7124,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1865,
"final": 1.1865,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Dylan Lee |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5783 |
| ESPN Rank | 61 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 1.1368 |
| Season WHIP | 0.6316 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"opponent": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"edges": {
"quality_edge": 0.2222,
"offense_edge": 0.0822,
"opponent_offense_edge": -0.0224,
"defense_strength": 0.2706,
"opponent_defense_weakness": 0.0465,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 1.0179,
"run_prevention": 0.9582,
"strikeout": 1.0085
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669276",
"profile": {
"available": true,
"pitcher_id": "669276",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 93.0,
"k_percent": 34.8,
"bb_percent": 4.3,
"woba": 0.182,
"xwoba": 0.212,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 4.3,
"hard_hit_percent": 32.9,
"avg_best_speed": 76.4059,
"avg_hyper_speed": 92.9153,
"whiff_percent": 38.2,
"swing_percent": 53.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.6767,
"command_and_miss": 1.6607,
"regression_edge": -0.8571,
"xwoba_edge": 2.5,
"barrel_edge": 0.6667,
"hard_hit_edge": 0.7714,
"whiff_edge": 1.7857,
"bb_edge": 1.225,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "669276",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.5783,
"sample_weight": 0.45,
"run_prevention_factor": 0.9508,
"strikeout_factor": 1.0638,
"walk_factor": 0.9559,
"homer_factor": 0.9284,
"woba_minus_xwoba": -0.03,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "669276",
"espn_id": 41455,
"player_name": "Dylan Lee",
"team": "ATL",
"role": "pitcher",
"espn_rank": 61,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 61,
"gp_value": 33.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.1368,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 14.0,
"hld_rank": 5,
"ip_value": 31.2,
"ip_rank": 225,
"h_value": 15.0,
"h_rank": 412,
"er_value": 4.0,
"er_rank": 528,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 40.0,
"k_rank": 160,
"k_per_9_value": 11.368422,
"k_per_9_rank": 19,
"whip_value": 0.6315,
"whip_rank": null,
"war_value": 1.33,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9779,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9779,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9802,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9678,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0287,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 2,
"H": 5,
"BB": 3,
"SO": 12,
"HR": 1,
"ERA": 2.0000000000000004,
"WHIP": 0.8888888888888891,
"K9": 12.000000000000002,
"HR9": 1.0000000000000002,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "669276",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.288,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5571,
"prior_weight": 0.4429
},
"role": "pitcher",
"player_id": "669276",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 33,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 2.0,
"SO": 6.0,
"HR": 0.0,
"BF": 15.0,
"Pitches": 53.0
},
"per_game": {
"IP": 0.2,
"ER": 0.0,
"R": 0.0,
"H": 0.2,
"BB": 0.4,
"SO": 1.2,
"HR": 0.0,
"BF": 3.0,
"Pitches": 10.6
},
"rates": {
"ERA": 0.0,
"WHIP": 0.75,
"ER_per_IP": 0.0,
"H_per_IP": 0.25,
"BB_per_IP": 0.5,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 2.0,
"R": 3.0,
"H": 5.0,
"BB": 3.0,
"SO": 12.0,
"HR": 1.0,
"BF": 35.0,
"Pitches": 138.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.5,
"BB": 0.3,
"SO": 1.2,
"HR": 0.1,
"BF": 3.5,
"Pitches": 13.8
},
"rates": {
"ERA": 2.0,
"WHIP": 0.8889,
"ER_per_IP": 0.22222,
"H_per_IP": 0.55556,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.33333,
"HR_per_IP": 0.11111
}
},
"season": {
"games": 33,
"totals": {
"IP": 31.2,
"ER": 4.0,
"R": 5.0,
"H": 15.0,
"BB": 5.0,
"SO": 40.0,
"HR": 1.0,
"BF": 115.0,
"Pitches": 463.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1212,
"R": 0.1515,
"H": 0.4545,
"BB": 0.1515,
"SO": 1.2121,
"HR": 0.0303,
"BF": 3.4848,
"Pitches": 14.0303
},
"rates": {
"ERA": 1.1368,
"WHIP": 0.6316,
"ER_per_IP": 0.12632,
"H_per_IP": 0.47368,
"BB_per_IP": 0.15789,
"SO_per_IP": 1.26316,
"HR_per_IP": 0.03158
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.256,
"predicted_H": 0.6,
"predicted_BB": 0.338,
"predicted_SO": 1.092,
"predicted_HR": 0.082,
"predicted_ERA": 2.5133,
"predicted_WHIP": 1.024
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5371,
"form_weight": 0.4629,
"form_reliability": 0.5571,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.288,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5571,
"prior_weight": 0.4429
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.256,
"final": 0.1185,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.6,
"final": 0.8149,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.338,
"final": 1.2307,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 1.092,
"final": 2.1168,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.082,
"final": 0.038,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5133,
"final": 2.5133,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.024,
"final": 1.024,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Raisel Iglesias |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5052 |
| ESPN Rank | 86 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 1.1571 |
| Season WHIP | 0.9857 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"opponent": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"edges": {
"quality_edge": 0.2222,
"offense_edge": 0.0822,
"opponent_offense_edge": -0.0224,
"defense_strength": 0.2706,
"opponent_defense_weakness": 0.0465,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 1.0179,
"run_prevention": 0.9582,
"strikeout": 1.0085
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "628452",
"profile": {
"available": true,
"pitcher_id": "628452",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 63.0,
"k_percent": 30.3,
"bb_percent": 5.6,
"woba": 0.25,
"xwoba": 0.238,
"sweet_spot_percent": 26.3,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 29.8,
"avg_best_speed": 77.4027,
"avg_hyper_speed": 92.5337,
"whiff_percent": 32.6,
"swing_percent": 53.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.4669,
"command_and_miss": 1.0264,
"regression_edge": 0.3429,
"xwoba_edge": 2.2,
"barrel_edge": 0.4222,
"hard_hit_edge": 1.2143,
"whiff_edge": 0.9857,
"bb_edge": 0.9,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "628452",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.5052,
"sample_weight": 0.45,
"run_prevention_factor": 0.9571,
"strikeout_factor": 1.0378,
"walk_factor": 0.9676,
"homer_factor": 0.9332,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "628452",
"espn_id": 33618,
"player_name": "Raisel Iglesias",
"team": "ATL",
"role": "pitcher",
"espn_rank": 86,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 86,
"gp_value": 22.0,
"gp_rank": 157,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.1571,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 14.0,
"sv_rank": 7,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 23.1,
"ip_rank": 341,
"h_value": 18.0,
"h_rank": 367,
"er_value": 3.0,
"er_rank": 555,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 10.414287,
"k_per_9_rank": 21,
"whip_value": 0.9857,
"whip_rank": null,
"war_value": 1.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9807,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9807,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9854,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9699,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.017,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 3,
"H": 12,
"BB": 3,
"SO": 12,
"HR": 1,
"ERA": 2.5312499999999996,
"WHIP": 1.4062499999999998,
"K9": 10.124999999999998,
"HR9": 0.8437499999999999,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "628452",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.634,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.481,
"prior_weight": 0.519
},
"role": "pitcher",
"player_id": "628452",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 1.0,
"R": 2.0,
"H": 6.0,
"BB": 2.0,
"SO": 6.0,
"HR": 1.0,
"BF": 23.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.4,
"H": 1.2,
"BB": 0.4,
"SO": 1.2,
"HR": 0.2,
"BF": 4.6,
"Pitches": 18.8
},
"rates": {
"ERA": 1.5882,
"WHIP": 1.4118,
"ER_per_IP": 0.17647,
"H_per_IP": 1.05882,
"BB_per_IP": 0.35294,
"SO_per_IP": 1.05882,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 3.0,
"R": 4.0,
"H": 12.0,
"BB": 3.0,
"SO": 12.0,
"HR": 1.0,
"BF": 45.0,
"Pitches": 177.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.4,
"H": 1.2,
"BB": 0.3,
"SO": 1.2,
"HR": 0.1,
"BF": 4.5,
"Pitches": 17.7
},
"rates": {
"ERA": 2.5312,
"WHIP": 1.4062,
"ER_per_IP": 0.28125,
"H_per_IP": 1.125,
"BB_per_IP": 0.28125,
"SO_per_IP": 1.125,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 22,
"totals": {
"IP": 23.1,
"ER": 3.0,
"R": 4.0,
"H": 18.0,
"BB": 5.0,
"SO": 27.0,
"HR": 1.0,
"BF": 89.0,
"Pitches": 343.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1364,
"R": 0.1818,
"H": 0.8182,
"BB": 0.2273,
"SO": 1.2273,
"HR": 0.0455,
"BF": 4.0455,
"Pitches": 15.5909
},
"rates": {
"ERA": 1.1571,
"WHIP": 0.9857,
"ER_per_IP": 0.12857,
"H_per_IP": 0.77143,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.15714,
"HR_per_IP": 0.04286
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.358,
"predicted_H": 0.998,
"predicted_BB": 0.333,
"predicted_SO": 1.017,
"predicted_HR": 0.134,
"predicted_ERA": 3.221,
"predicted_WHIP": 1.3311
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5693,
"form_weight": 0.4307,
"form_reliability": 0.481,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.634,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.481,
"prior_weight": 0.519
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.358,
"final": 0.1542,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.998,
"final": 0.4299,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.333,
"final": 0.1434,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.017,
"final": 1.0073,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.134,
"final": 0.0577,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.221,
"final": 3.221,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3311,
"final": 1.3311,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Robert Suarez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2745 |
| ESPN Rank | 45 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 0.5870 |
| Season WHIP | 0.7826 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"opponent": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"edges": {
"quality_edge": 0.2222,
"offense_edge": 0.0822,
"opponent_offense_edge": -0.0224,
"defense_strength": 0.2706,
"opponent_defense_weakness": 0.0465,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 1.0179,
"run_prevention": 0.9582,
"strikeout": 1.0085
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663158",
"profile": {
"available": true,
"pitcher_id": "663158",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 88.0,
"k_percent": 22.8,
"bb_percent": 4.4,
"woba": 0.195,
"xwoba": 0.271,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 3.7,
"hard_hit_percent": 30.5,
"avg_best_speed": 71.4445,
"avg_hyper_speed": 92.6022,
"whiff_percent": 24.8,
"swing_percent": 54.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.3468,
"command_and_miss": 0.2143,
"regression_edge": -2.0,
"xwoba_edge": 1.2571,
"barrel_edge": 0.8,
"hard_hit_edge": 1.1143,
"whiff_edge": -0.1286,
"bb_edge": 1.2,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "663158",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2745,
"sample_weight": 0.45,
"run_prevention_factor": 0.9767,
"strikeout_factor": 0.9985,
"walk_factor": 0.9568,
"homer_factor": 0.9342,
"woba_minus_xwoba": -0.076,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663158",
"espn_id": 4148749,
"player_name": "Robert Suarez",
"team": "ATL",
"role": "pitcher",
"espn_rank": 45,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 45,
"gp_value": 30.0,
"gp_rank": 64,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 0.5869,
"era_rank": null,
"w_value": 4.0,
"w_rank": 65,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 4.0,
"sv_rank": 30,
"hld_value": 11.0,
"hld_rank": 12,
"ip_value": 30.2,
"ip_rank": 241,
"h_value": 19.0,
"h_rank": 352,
"er_value": 2.0,
"er_rank": 584,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 26.0,
"k_rank": 293,
"k_per_9_value": 7.6304345,
"k_per_9_rank": 32,
"whip_value": 0.7826,
"whip_rank": null,
"war_value": 1.55,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9806,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9704,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9993,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 1,
"H": 6,
"BB": 0,
"SO": 7,
"HR": 1,
"ERA": 0.870967741935484,
"WHIP": 0.5806451612903226,
"K9": 6.096774193548388,
"HR9": 0.870967741935484,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "663158",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.09,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5491,
"prior_weight": 0.4509
},
"role": "pitcher",
"player_id": "663158",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 0.0,
"SO": 4.0,
"HR": 0.0,
"BF": 18.0,
"Pitches": 62.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.0,
"SO": 0.8,
"HR": 0.0,
"BF": 3.6,
"Pitches": 12.4
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5625,
"ER_per_IP": 0.0,
"H_per_IP": 0.5625,
"BB_per_IP": 0.0,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 0.0,
"SO": 7.0,
"HR": 1.0,
"BF": 36.0,
"Pitches": 123.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.6,
"BB": 0.0,
"SO": 0.7,
"HR": 0.1,
"BF": 3.6,
"Pitches": 12.3
},
"rates": {
"ERA": 0.871,
"WHIP": 0.5806,
"ER_per_IP": 0.09677,
"H_per_IP": 0.58065,
"BB_per_IP": 0.0,
"SO_per_IP": 0.67742,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 30,
"totals": {
"IP": 30.2,
"ER": 2.0,
"R": 2.0,
"H": 19.0,
"BB": 5.0,
"SO": 26.0,
"HR": 1.0,
"BF": 114.0,
"Pitches": 438.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0667,
"R": 0.0667,
"H": 0.6333,
"BB": 0.1667,
"SO": 0.8667,
"HR": 0.0333,
"BF": 3.8,
"Pitches": 14.6
},
"rates": {
"ERA": 0.587,
"WHIP": 0.7826,
"ER_per_IP": 0.06522,
"H_per_IP": 0.61957,
"BB_per_IP": 0.16304,
"SO_per_IP": 0.84783,
"HR_per_IP": 0.03261
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.252,
"predicted_H": 0.758,
"predicted_BB": 0.182,
"predicted_SO": 0.831,
"predicted_HR": 0.088,
"predicted_ERA": 2.2646,
"predicted_WHIP": 0.9395
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5405,
"form_weight": 0.4595,
"form_reliability": 0.5491,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.09,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5491,
"prior_weight": 0.4509
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.252,
"final": 0.1158,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.758,
"final": 0.8888,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.182,
"final": 0.0836,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.831,
"final": 0.9223,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.088,
"final": 0.0404,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.2646,
"final": 2.2646,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9395,
"final": 0.9395,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Didier Fuentes |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3423 |
| ESPN Rank | 103 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.1000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.2500 |
| Season WHIP | 1.0357 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 81,
"wins": 51,
"losses": 30,
"win_pct": 0.6296,
"runs_scored": 396.0,
"runs_allowed": 288.0,
"run_differential": 108.0,
"run_differential_per_game": 1.3333,
"avg_runs_scored": 4.8889,
"avg_runs_allowed": 3.5556,
"offense_index": 1.0822,
"defense_index": 1.2706,
"current_streak": "L4",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 4.7,
"run_differential": -20.0
},
"available": true,
"quality_score": 0.1675
},
"opponent": {
"team": "SF",
"games": 84,
"wins": 37,
"losses": 47,
"win_pct": 0.4405,
"runs_scored": 371.0,
"runs_allowed": 398.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3214,
"avg_runs_scored": 4.4167,
"avg_runs_allowed": 4.7381,
"offense_index": 0.9776,
"defense_index": 0.9535,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 4.2,
"run_differential": 5.0
},
"available": true,
"quality_score": -0.0547
},
"edges": {
"quality_edge": 0.2222,
"offense_edge": 0.0822,
"opponent_offense_edge": -0.0224,
"defense_strength": 0.2706,
"opponent_defense_weakness": 0.0465,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 1.0179,
"run_prevention": 0.9582,
"strikeout": 1.0085
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "800311",
"profile": {
"available": true,
"pitcher_id": "800311",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 84.0,
"k_percent": 29.2,
"bb_percent": 8.0,
"woba": 0.25,
"xwoba": 0.263,
"sweet_spot_percent": 26.1,
"barrel_batted_rate": 4.4,
"hard_hit_percent": 31.9,
"avg_best_speed": 78.7946,
"avg_hyper_speed": 93.0663,
"whiff_percent": 28.0,
"swing_percent": 49.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.1436,
"command_and_miss": 0.6057,
"regression_edge": -0.3714,
"xwoba_edge": 1.4857,
"barrel_edge": 0.6444,
"hard_hit_edge": 0.9143,
"whiff_edge": 0.3286,
"bb_edge": 0.3,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "800311",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3423,
"sample_weight": 0.45,
"run_prevention_factor": 0.9709,
"strikeout_factor": 1.0231,
"walk_factor": 0.9892,
"homer_factor": 0.9403,
"woba_minus_xwoba": -0.013,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "800311",
"espn_id": 5291189,
"player_name": "Didier Fuentes",
"team": "ATL",
"role": "pitcher",
"espn_rank": 103,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 103,
"gp_value": 20.0,
"gp_rank": 182,
"gs_value": 1.0,
"gs_rank": 240,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.25,
"era_rank": null,
"w_value": 4.0,
"w_rank": 65,
"l_value": 0.0,
"l_rank": 430,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 28.0,
"ip_rank": 281,
"h_value": 20.0,
"h_rank": 330,
"er_value": 7.0,
"er_rank": 431,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 9.0,
"bb_rank": 332,
"k_value": 33.0,
"k_rank": 209,
"k_per_9_value": 10.607142,
"k_per_9_rank": 20,
"whip_value": 1.0357,
"whip_rank": null,
"war_value": 0.92,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9869,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9869,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9951,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9731,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0104,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.2,
"ER": 1,
"H": 9,
"BB": 2,
"SO": 11,
"HR": 0,
"ERA": 0.9310344827586208,
"WHIP": 1.1379310344827587,
"K9": 10.241379310344827,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": false,
"pitcher_id": "800311",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.56,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5265,
"prior_weight": 0.4735
},
"role": "pitcher",
"player_id": "800311",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 20,
"reference_playing_time": 0.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 0.0,
"SO": 6.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 73.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.8,
"BB": 0.0,
"SO": 1.2,
"HR": 0.0,
"BF": 3.8,
"Pitches": 14.6
},
"rates": {
"ERA": 0.0,
"WHIP": 0.75,
"ER_per_IP": 0.0,
"H_per_IP": 0.75,
"BB_per_IP": 0.0,
"SO_per_IP": 1.125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 1.0,
"R": 1.0,
"H": 9.0,
"BB": 2.0,
"SO": 11.0,
"HR": 0.0,
"BF": 38.0,
"Pitches": 174.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.9,
"BB": 0.2,
"SO": 1.1,
"HR": 0.0,
"BF": 3.8,
"Pitches": 17.4
},
"rates": {
"ERA": 0.931,
"WHIP": 1.1379,
"ER_per_IP": 0.10345,
"H_per_IP": 0.93103,
"BB_per_IP": 0.2069,
"SO_per_IP": 1.13793,
"HR_per_IP": 0.0
}
},
"season": {
"games": 20,
"totals": {
"IP": 28.0,
"ER": 7.0,
"R": 7.0,
"H": 20.0,
"BB": 9.0,
"SO": 33.0,
"HR": 1.0,
"BF": 113.0,
"Pitches": 482.0
},
"per_game": {
"IP": 1.1,
"ER": 0.35,
"R": 0.35,
"H": 1.0,
"BB": 0.45,
"SO": 1.65,
"HR": 0.05,
"BF": 5.65,
"Pitches": 24.1
},
"rates": {
"ERA": 2.25,
"WHIP": 1.0357,
"ER_per_IP": 0.25,
"H_per_IP": 0.71429,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.17857,
"HR_per_IP": 0.03571
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.203,
"predicted_H": 0.637,
"predicted_BB": 0.175,
"predicted_SO": 0.751,
"predicted_HR": 0.052,
"predicted_ERA": 2.5431,
"predicted_WHIP": 1.1296
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5501,
"form_weight": 0.4499,
"form_reliability": 0.5265,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.56,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5265,
"prior_weight": 0.4735
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.203,
"final": 0.0913,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.637,
"final": 0.8367,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.175,
"final": 0.0787,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.751,
"final": 0.888,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.052,
"final": 0.0234,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5431,
"final": 2.5431,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1296,
"final": 1.1296,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.176 | 0.000 | 0.000 | Hitting_2B | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.110 | 4.000 | 4.000 | Hitting_AB | 3.885 | 5.000 | 0.115 | -1.000 |
| predicted_AVG | 0.239 | 0.000 | 0.250 | Hitting_AVG | 0.278 | 0.400 | -0.278 | -0.400 |
| predicted_BB | 0.297 | 0.000 | 0.000 | Hitting_BB | 0.330 | 0.000 | -0.330 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.054 | 0.000 | -0.054 | 0.000 |
| predicted_H | 0.980 | 0.000 | 1.000 | Hitting_H | 1.080 | 2.000 | -1.080 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.153 | 0.000 | -0.153 | 0.000 |
| predicted_OBP | 0.299 | 0.000 | 0.250 | Hitting_OBP | 0.336 | 0.400 | -0.336 | -0.400 |
| predicted_R | 0.622 | 0.000 | 1.000 | Hitting_R | 0.651 | 1.000 | -0.651 | -1.000 |
| predicted_RBI | 0.420 | 0.000 | 0.000 | Hitting_RBI | 0.529 | 0.000 | -0.529 | 0.000 |
| predicted_SLG | 0.375 | 0.000 | 0.250 | Hitting_SLG | 0.442 | 0.400 | -0.442 | -0.400 |
| predicted_SO | 0.514 | 0.000 | 0.000 | Hitting_SO | 0.540 | 1.000 | -0.540 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AVG: 0.2390 -> 0.2470 (boost 0.0080, better) |
| Biggest Deboost | predicted_H: 0.9800 -> 0.0000 (deboost -0.9800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2390 -> 0.2456 (boost 0.0066, better) | predicted_AB: 4.1100 -> 3.9525 (deboost -0.1575, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3695 -> 0.3613 (deboost -0.0082, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 0 | 6 | predicted_SO: 0.5186 -> 1.0000 (boost 0.4814, worse) | predicted_RBI: 0.4045 -> 0.0000 (deboost -0.4045, worse) | AB rounded to 4 (raw=4.11), rates preserved: AVG=0.238 HR/AB=0.023 |
| 5 | bvp_blend | 1 | 0 | 1 | 1 | 0 | - | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5835 -> 1.0000 (boost 0.4165, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3613 -> 0.2500 (deboost -0.1113, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 0 | 2 | 0 | 2 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3613 (boost 0.1113, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "645277",
"player_name": "Ozzie Albies",
"position": "DH",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.0,
"predicted_AB": 4.11,
"predicted_AVG": 0.239,
"predicted_BB": 0.297,
"predicted_H": 0.98,
"predicted_HR": 0.1,
"predicted_OBP": 0.299,
"predicted_R": 0.622,
"predicted_RBI": 0.42,
"predicted_SLG": 0.375,
"predicted_SO": 0.514
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1641,
"predicted_3B": 0.0004,
"predicted_AB": 3.9525,
"predicted_AVG": 0.2456,
"predicted_BB": 0.2575,
"predicted_H": 0.9677,
"predicted_HBP": 0.051,
"predicted_HR": 0.0932,
"predicted_OBP": 0.2966,
"predicted_R": 0.574,
"predicted_RBI": 0.3979,
"predicted_SLG": 0.3695,
"predicted_SO": 0.5238
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.1641,
"delta": -0.0119,
"percent_delta": -0.0676,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.11,
"after": 3.9525,
"delta": -0.1575,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2456,
"delta": 0.0066,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.2575,
"delta": -0.0395,
"percent_delta": -0.133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 0.9677,
"delta": -0.0123,
"percent_delta": -0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0932,
"delta": -0.0068,
"percent_delta": -0.068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2966,
"delta": -0.0024,
"percent_delta": -0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.622,
"after": 0.574,
"delta": -0.048,
"percent_delta": -0.0772,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.3979,
"delta": -0.0221,
"percent_delta": -0.0526,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3695,
"delta": -0.0055,
"percent_delta": -0.0147,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.514,
"after": 0.5238,
"delta": 0.0098,
"percent_delta": 0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2456,
"delta": 0.0066,
"percent_delta": 0.0276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.11,
"after": 3.9525,
"delta": -0.1575,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 74
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1641,
"predicted_3B": 0.0004,
"predicted_AB": 3.9525,
"predicted_AVG": 0.247,
"predicted_BB": 0.2601,
"predicted_H": 0.9762,
"predicted_HBP": 0.051,
"predicted_HR": 0.0956,
"predicted_OBP": 0.2935,
"predicted_R": 0.5835,
"predicted_RBI": 0.4045,
"predicted_SLG": 0.3613,
"predicted_SO": 0.5186
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1641,
"after": 0.1641,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9525,
"after": 3.9525,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2456,
"after": 0.247,
"delta": 0.0014,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2575,
"after": 0.2601,
"delta": 0.0026,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9677,
"after": 0.9762,
"delta": 0.0085,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.051,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0932,
"after": 0.0956,
"delta": 0.0024,
"percent_delta": 0.0258,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2966,
"after": 0.2935,
"delta": -0.0031,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.574,
"after": 0.5835,
"delta": 0.0095,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3979,
"after": 0.4045,
"delta": 0.0066,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3695,
"after": 0.3613,
"delta": -0.0082,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5238,
"after": 0.5186,
"delta": -0.0052,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3695,
"after": 0.3613,
"delta": -0.0082,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.11), rates preserved: AVG=0.238 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1641,
"after": 0.0,
"delta": -0.1641,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9525,
"after": 4.0,
"delta": 0.0475,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2601,
"after": 0.0,
"delta": -0.2601,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9762,
"after": 1.0,
"delta": 0.0238,
"percent_delta": 0.0244,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0956,
"after": 0.0,
"delta": -0.0956,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4045,
"after": 0.0,
"delta": -0.4045,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5186,
"after": 1.0,
"delta": 0.4814,
"percent_delta": 0.9283,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5186,
"after": 1.0,
"delta": 0.4814,
"percent_delta": 0.9283,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4045,
"after": 0.0,
"delta": -0.4045,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5835,
"after": 1.0,
"delta": 0.4165,
"percent_delta": 0.7138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5835,
"after": 1.0,
"delta": 0.4165,
"percent_delta": 0.7138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.25,
"delta": 0.003,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2935,
"after": 0.25,
"delta": -0.0435,
"percent_delta": -0.1482,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3613,
"after": 0.25,
"delta": -0.1113,
"percent_delta": -0.3081,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3613,
"after": 0.25,
"delta": -0.1113,
"percent_delta": -0.3081,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.247,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2935,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3613,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.247,
"delta": -0.003,
"percent_delta": -0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2935,
"delta": 0.0435,
"percent_delta": 0.1739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3613,
"delta": 0.1113,
"percent_delta": 0.445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3613,
"delta": 0.1113,
"percent_delta": 0.445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.11,
"after": 4.0,
"delta": -0.11,
"percent_delta": -0.0268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.247,
"delta": 0.008,
"percent_delta": 0.0335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 0.0,
"delta": -0.98,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2935,
"delta": -0.0055,
"percent_delta": -0.0184,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.622,
"after": 0.0,
"delta": -0.622,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3613,
"delta": -0.0137,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.514,
"after": 0.0,
"delta": -0.514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.247,
"delta": 0.008,
"percent_delta": 0.0335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.98,
"after": 0.0,
"delta": -0.98,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.110 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.297 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.622 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.375 | - |
| predicted_SO | 0.514 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.164 | -0.012 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.953 | -0.158 |
| predicted_AVG | 0.246 | 0.007 |
| predicted_BB | 0.258 | -0.039 |
| predicted_H | 0.968 | -0.012 |
| predicted_HBP | 0.051 | - |
| predicted_HR | 0.093 | -0.007 |
| predicted_OBP | 0.297 | -0.002 |
| predicted_R | 0.574 | -0.048 |
| predicted_RBI | 0.398 | -0.022 |
| predicted_SLG | 0.369 | -0.006 |
| predicted_SO | 0.524 | 0.010 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.164 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.953 | 0.000 |
| predicted_AVG | 0.247 | 0.001 |
| predicted_BB | 0.260 | 0.003 |
| predicted_H | 0.976 | 0.008 |
| predicted_HBP | 0.051 | 0.000 |
| predicted_HR | 0.096 | 0.002 |
| predicted_OBP | 0.293 | -0.003 |
| predicted_R | 0.584 | 0.010 |
| predicted_RBI | 0.405 | 0.007 |
| predicted_SLG | 0.361 | -0.008 |
| predicted_SO | 0.519 | -0.005 |
AB rounded to 4 (raw=4.11), rates preserved: AVG=0.238 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.164 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.047 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 0.000 | -0.260 |
| predicted_H | 1.000 | 0.024 |
| predicted_HR | 0.000 | -0.096 |
| predicted_OBP | 0.250 | -0.043 |
| predicted_R | 1.000 | 0.416 |
| predicted_RBI | 0.000 | -0.405 |
| predicted_SLG | 0.250 | -0.111 |
| predicted_SO | 0.000 | -0.519 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 2.000 | 0.1667 | 0.1667 | 0.1667 | 0.1667 | 0.0000 | 0.0000 | 0.0000 | 0.1111 |
| last_10 | 0.20 | 10 | - | 36.000 | 10.000 | 2.000 | 0.000 | 0.000 | 3.000 | 5.000 | 1.000 | 6.000 | 0.2778 | 0.3000 | 0.3333 | 0.2778 | 0.0000 | 0.0833 | 0.0278 | 0.1667 |
| season | 0.60 | 74 | - | 282.000 | 78.000 | 13.000 | 0.000 | 10.000 | 37.000 | 46.000 | 22.000 | 38.000 | 0.2766 | 0.3302 | 0.4291 | 0.2766 | 0.0355 | 0.1312 | 0.0780 | 0.1348 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1480 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.7390 |
| predicted_AVG | 0.2545 |
| predicted_BB | 0.2040 |
| predicted_H | 0.9510 |
| predicted_HBP | 0.0510 |
| predicted_HR | 0.0840 |
| predicted_OBP | 0.2934 |
| predicted_R | 0.5090 |
| predicted_RBI | 0.3680 |
| predicted_SLG | 0.3620 |
| predicted_SO | 0.5370 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.1480 | 0.1641 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1100 | 3.7390 | 3.9525 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2545 | 0.2456 | model_form_blend |
| predicted_BB | 0.2970 | 0.2040 | 0.2575 | model_form_blend |
| predicted_H | 0.9800 | 0.9510 | 0.9677 | model_form_blend |
| predicted_HBP | - | 0.0510 | 0.0510 | form_only |
| predicted_HR | 0.1000 | 0.0840 | 0.0932 | model_form_blend |
| predicted_OBP | 0.2990 | 0.2934 | 0.2966 | model_form_blend |
| predicted_R | 0.6220 | 0.5090 | 0.5740 | model_form_blend |
| predicted_RBI | 0.4200 | 0.3680 | 0.3979 | model_form_blend |
| predicted_SLG | 0.3750 | 0.3620 | 0.3695 | model_form_blend |
| predicted_SO | 0.5140 | 0.5370 | 0.5238 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 261 |
| Season rows before report date | 261 |
| Report year | 2026 |
| Profile rows used | 74 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.277 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 645277 |
| playerID | 645277 |
| playerName | Ozzie Albies |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 12.1 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.333 |
| sl_xwoba | 0.31 |
| sl_xba | 0.259 |
| sl_xslg | 0.389 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 4.5 |
| sl_hard_hit_percent | 28.8 |
| sl_exit_velocity_avg | 87.1 |
| sl_launch_angle_avg | 16.6 |
| sl_whiff_percent | 20.1 |
| sl_swing_percent | 54.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.000 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.278 | 2.000 | 3.000 | Hitting_AB | 3.321 | 0.000 | -1.321 | 2.000 |
| predicted_AVG | 0.201 | 0.000 | 0.333 | Hitting_AVG | 0.097 | - | -0.097 | - |
| predicted_BB | 0.389 | 2.000 | 0.000 | Hitting_BB | 0.393 | 0.000 | 1.607 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.620 | 0.000 | 1.000 | Hitting_H | 0.321 | 0.000 | -0.321 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.247 | 0.500 | 0.333 | Hitting_OBP | 0.192 | - | 0.308 | - |
| predicted_R | 0.222 | 0.000 | 0.000 | Hitting_R | 0.321 | 0.000 | -0.321 | 0.000 |
| predicted_RBI | 0.320 | 0.000 | 0.000 | Hitting_RBI | 0.196 | 0.000 | -0.196 | 0.000 |
| predicted_SLG | 0.245 | 0.000 | 0.333 | Hitting_SLG | 0.097 | - | -0.097 | - |
| predicted_SO | 0.889 | 0.000 | 1.000 | Hitting_SO | 0.964 | 0.000 | -0.964 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.3890 -> 2.0000 (boost 1.6110, better) |
| Biggest Deboost | predicted_AB: 3.2780 -> 2.0000 (deboost -1.2780, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 0 | 4 | 0 | 4 | - | predicted_H: 0.6200 -> 0.5580 (deboost -0.0620, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2365 -> 0.2550 (boost 0.0185, better) | predicted_AVG: 0.1760 -> 0.1695 (deboost -0.0065, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.5629 -> 1.0000 (boost 0.4371, better) | predicted_BB: 0.3813 -> 0.0000 (deboost -0.3813, worse) | AB rounded to 3 (raw=3.32), rates preserved: AVG=0.169 HR/AB=0.018 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2348 -> 0.0000 (deboost -0.2348, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1695 -> 0.3330 (boost 0.1635, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_BB: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 3.0000 -> 2.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1695 (deboost -0.1635, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "673490",
"player_name": "Ha-Seong Kim",
"position": "C",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.278,
"predicted_AVG": 0.201,
"predicted_BB": 0.389,
"predicted_H": 0.62,
"predicted_HR": 0.07,
"predicted_OBP": 0.247,
"predicted_R": 0.222,
"predicted_RBI": 0.32,
"predicted_SLG": 0.245,
"predicted_SO": 0.889
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0186,
"predicted_3B": 0.0014,
"predicted_AB": 3.3214,
"predicted_AVG": 0.176,
"predicted_BB": 0.3775,
"predicted_H": 0.558,
"predicted_HBP": 0.01,
"predicted_HR": 0.0578,
"predicted_OBP": 0.2365,
"predicted_R": 0.231,
"predicted_RBI": 0.3031,
"predicted_SLG": 0.2221,
"predicted_SO": 0.8653
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0186,
"delta": 0.0186,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0014,
"delta": 0.0014,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.278,
"after": 3.3214,
"delta": 0.0434,
"percent_delta": 0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.176,
"delta": -0.025,
"percent_delta": -0.1244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.389,
"after": 0.3775,
"delta": -0.0115,
"percent_delta": -0.0296,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.558,
"delta": -0.062,
"percent_delta": -0.1,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0578,
"delta": -0.0122,
"percent_delta": -0.1743,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.247,
"after": 0.2365,
"delta": -0.0105,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.222,
"after": 0.231,
"delta": 0.009,
"percent_delta": 0.0405,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.3031,
"delta": -0.0169,
"percent_delta": -0.0528,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.245,
"after": 0.2221,
"delta": -0.0229,
"percent_delta": -0.0935,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.889,
"after": 0.8653,
"delta": -0.0237,
"percent_delta": -0.0267,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.62,
"after": 0.558,
"delta": -0.062,
"percent_delta": -0.1,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 18
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0186,
"predicted_3B": 0.0014,
"predicted_AB": 3.3214,
"predicted_AVG": 0.1695,
"predicted_BB": 0.3813,
"predicted_H": 0.5629,
"predicted_HBP": 0.01,
"predicted_HR": 0.0593,
"predicted_OBP": 0.255,
"predicted_R": 0.2348,
"predicted_RBI": 0.3081,
"predicted_SLG": 0.2295,
"predicted_SO": 0.8566
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0186,
"after": 0.0186,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0014,
"after": 0.0014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3214,
"after": 3.3214,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.176,
"after": 0.1695,
"delta": -0.0065,
"percent_delta": -0.0369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3775,
"after": 0.3813,
"delta": 0.0038,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.558,
"after": 0.5629,
"delta": 0.0049,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0578,
"after": 0.0593,
"delta": 0.0015,
"percent_delta": 0.026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2365,
"after": 0.255,
"delta": 0.0185,
"percent_delta": 0.0782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.231,
"after": 0.2348,
"delta": 0.0038,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3031,
"after": 0.3081,
"delta": 0.005,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2221,
"after": 0.2295,
"delta": 0.0074,
"percent_delta": 0.0333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8653,
"after": 0.8566,
"delta": -0.0087,
"percent_delta": -0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2365,
"after": 0.255,
"delta": 0.0185,
"percent_delta": 0.0782,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.176,
"after": 0.1695,
"delta": -0.0065,
"percent_delta": -0.0369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.32), rates preserved: AVG=0.169 HR/AB=0.018",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0186,
"after": 0.0,
"delta": -0.0186,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0014,
"after": 0.0,
"delta": -0.0014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3214,
"after": 3.0,
"delta": -0.3214,
"percent_delta": -0.0968,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3813,
"after": 0.0,
"delta": -0.3813,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5629,
"after": 1.0,
"delta": 0.4371,
"percent_delta": 0.7765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0593,
"after": 0.0,
"delta": -0.0593,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3081,
"after": 0.0,
"delta": -0.3081,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8566,
"after": 1.0,
"delta": 0.1434,
"percent_delta": 0.1674,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5629,
"after": 1.0,
"delta": 0.4371,
"percent_delta": 0.7765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3813,
"after": 0.0,
"delta": -0.3813,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2348,
"after": 0.0,
"delta": -0.2348,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2348,
"after": 0.0,
"delta": -0.2348,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1695,
"after": 0.333,
"delta": 0.1635,
"percent_delta": 0.9646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.255,
"after": 0.333,
"delta": 0.078,
"percent_delta": 0.3059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2295,
"after": 0.333,
"delta": 0.1035,
"percent_delta": 0.451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1695,
"after": 0.333,
"delta": 0.1635,
"percent_delta": 0.9646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 2.0,
"delta": -1.0,
"percent_delta": -0.3333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_AVG": 0.1695,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.255,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2295,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1695,
"delta": -0.1635,
"percent_delta": -0.4911,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.255,
"delta": -0.078,
"percent_delta": -0.2342,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2295,
"delta": -0.1035,
"percent_delta": -0.3109,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1695,
"delta": -0.1635,
"percent_delta": -0.4911,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.278,
"after": 2.0,
"delta": -1.278,
"percent_delta": -0.3899,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.1695,
"delta": -0.0315,
"percent_delta": -0.1567,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.389,
"after": 2.0,
"delta": 1.611,
"percent_delta": 4.1414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.247,
"after": 0.255,
"delta": 0.008,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.245,
"after": 0.2295,
"delta": -0.0155,
"percent_delta": -0.0633,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.889,
"after": 0.0,
"delta": -0.889,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.389,
"after": 2.0,
"delta": 1.611,
"percent_delta": 4.1414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.278,
"after": 2.0,
"delta": -1.278,
"percent_delta": -0.3899,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.278 | - |
| predicted_AVG | 0.201 | - |
| predicted_BB | 0.389 | - |
| predicted_H | 0.620 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.247 | - |
| predicted_R | 0.222 | - |
| predicted_RBI | 0.320 | - |
| predicted_SLG | 0.245 | - |
| predicted_SO | 0.889 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.019 | 0.019 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.321 | 0.043 |
| predicted_AVG | 0.176 | -0.025 |
| predicted_BB | 0.378 | -0.012 |
| predicted_H | 0.558 | -0.062 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.058 | -0.012 |
| predicted_OBP | 0.236 | -0.011 |
| predicted_R | 0.231 | 0.009 |
| predicted_RBI | 0.303 | -0.017 |
| predicted_SLG | 0.222 | -0.023 |
| predicted_SO | 0.865 | -0.024 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.019 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.321 | 0.000 |
| predicted_AVG | 0.170 | -0.006 |
| predicted_BB | 0.381 | 0.004 |
| predicted_H | 0.563 | 0.005 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.059 | 0.002 |
| predicted_OBP | 0.255 | 0.019 |
| predicted_R | 0.235 | 0.004 |
| predicted_RBI | 0.308 | 0.005 |
| predicted_SLG | 0.230 | 0.007 |
| predicted_SO | 0.857 | -0.009 |
AB rounded to 3 (raw=3.32), rates preserved: AVG=0.169 HR/AB=0.018
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.019 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.321 |
| predicted_AVG | 0.333 | 0.164 |
| predicted_BB | 0.000 | -0.381 |
| predicted_H | 1.000 | 0.437 |
| predicted_HR | 0.000 | -0.059 |
| predicted_OBP | 0.333 | 0.078 |
| predicted_R | 0.000 | -0.235 |
| predicted_RBI | 0.000 | -0.308 |
| predicted_SLG | 0.333 | 0.104 |
| predicted_SO | 1.000 | 0.143 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 2.000 | -1.000 |
| BB | 2.000 | 2.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 2.000 | 2.000 | 0.0714 | 0.1875 | 0.0714 | 0.0714 | 0.0000 | 0.0714 | 0.1429 | 0.1429 |
| last_10 | 0.20 | 10 | - | 33.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 3.000 | 10.000 | 0.0606 | 0.1389 | 0.0606 | 0.0606 | 0.0000 | 0.0606 | 0.0909 | 0.3030 |
| season | 0.60 | 18 | - | 59.000 | 5.000 | 0.000 | 0.000 | 0.000 | 3.000 | 4.000 | 7.000 | 16.000 | 0.0847 | 0.1818 | 0.0847 | 0.0848 | 0.0000 | 0.0508 | 0.1186 | 0.2712 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0520 |
| predicted_3B | 0.0040 |
| predicted_AB | 3.3990 |
| predicted_AVG | 0.1314 |
| predicted_BB | 0.3570 |
| predicted_H | 0.4470 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.0360 |
| predicted_OBP | 0.2178 |
| predicted_R | 0.2470 |
| predicted_RBI | 0.2730 |
| predicted_SLG | 0.1811 |
| predicted_SO | 0.8230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0520 | 0.0186 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0014 | model_form_blend |
| predicted_AB | 3.2780 | 3.3990 | 3.3214 | model_form_blend |
| predicted_AVG | 0.2010 | 0.1314 | 0.1760 | model_form_blend |
| predicted_BB | 0.3890 | 0.3570 | 0.3775 | model_form_blend |
| predicted_H | 0.6200 | 0.4470 | 0.5580 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.0700 | 0.0360 | 0.0578 | model_form_blend |
| predicted_OBP | 0.2470 | 0.2178 | 0.2365 | model_form_blend |
| predicted_R | 0.2220 | 0.2470 | 0.2310 | model_form_blend |
| predicted_RBI | 0.3200 | 0.2730 | 0.3031 | model_form_blend |
| predicted_SLG | 0.2450 | 0.1811 | 0.2221 | model_form_blend |
| predicted_SO | 0.8890 | 0.8230 | 0.8653 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 56 |
| Season rows before report date | 56 |
| Report year | 2026 |
| Profile rows used | 18 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 2 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.085 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 2 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_SF@ATL_2 |
| game_type | short |
| mlbID | 673490 |
| playerID | 673490 |
| playerName | Ha-Seong Kim |
| pos | SS |
| started | False |
| startingPosition | SS |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.2 |
| sl_bb_percent | 10.6 |
| sl_woba | 0.142 |
| sl_xwoba | 0.213 |
| sl_xba | 0.154 |
| sl_xslg | 0.199 |
| sl_sweet_spot_percent | 16.3 |
| sl_barrel_batted_rate | 2.4 |
| sl_hard_hit_percent | 20.9 |
| sl_exit_velocity_avg | 84.6 |
| sl_launch_angle_avg | 14.6 |
| sl_whiff_percent | 19.3 |
| sl_swing_percent | 43.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.257 | 0.000 | 0.000 | Hitting_2B | 0.325 | 0.000 | -0.325 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.050 | 3.000 | 4.000 | Hitting_AB | 3.891 | 5.000 | -0.891 | -2.000 |
| predicted_AVG | 0.253 | 0.333 | 0.250 | Hitting_AVG | 0.274 | 0.600 | 0.060 | -0.267 |
| predicted_BB | 0.419 | 1.000 | 0.000 | Hitting_BB | 0.491 | 0.000 | 0.509 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 1.000 | 1.000 | Hitting_H | 1.064 | 3.000 | -0.064 | -2.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.275 | 0.000 | -0.275 | 0.000 |
| predicted_OBP | 0.339 | 0.500 | 0.250 | Hitting_OBP | 0.355 | 0.600 | 0.145 | -0.100 |
| predicted_R | 0.703 | 1.000 | 1.000 | Hitting_R | 0.751 | 1.000 | 0.249 | 0.000 |
| predicted_RBI | 0.520 | 1.000 | 1.000 | Hitting_RBI | 0.777 | 0.000 | 0.223 | 1.000 |
| predicted_SLG | 0.473 | 0.333 | 0.250 | Hitting_SLG | 0.569 | 0.600 | -0.236 | -0.267 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Hitting_SO | 0.992 | 0.000 | 0.008 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 8 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 3 |
| Better Metrics | 5 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_BB: 0.4190 -> 1.0000 (boost 0.5810, better) |
| Biggest Deboost | predicted_AB: 4.0500 -> 3.0000 (deboost -1.0500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_AVG: 0.2530 -> 0.2693 (boost 0.0163, better) | predicted_AB: 4.0500 -> 3.9255 (deboost -0.1245, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3441 -> 0.3364 (deboost -0.0077, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_RBI: 0.5126 -> 1.0000 (boost 0.4874, better) | predicted_BB: 0.3906 -> 0.0000 (deboost -0.3906, worse) | AB rounded to 4 (raw=4.05), rates preserved: AVG=0.262 HR/AB=0.052 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.500) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6735 -> 1.0000 (boost 0.3265, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4848 -> 0.2500 (deboost -0.2348, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4848 (boost 0.2348, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621566",
"player_name": "Matt Olson",
"position": "1B",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.257,
"predicted_3B": 0.0,
"predicted_AB": 4.05,
"predicted_AVG": 0.253,
"predicted_BB": 0.419,
"predicted_H": 1.02,
"predicted_HR": 0.2,
"predicted_OBP": 0.339,
"predicted_R": 0.703,
"predicted_RBI": 0.52,
"predicted_SLG": 0.473,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2124,
"predicted_3B": 0.0004,
"predicted_AB": 3.9255,
"predicted_AVG": 0.2693,
"predicted_BB": 0.3867,
"predicted_H": 1.0519,
"predicted_HBP": 0.01,
"predicted_HR": 0.2043,
"predicted_OBP": 0.3441,
"predicted_R": 0.6626,
"predicted_RBI": 0.5043,
"predicted_SLG": 0.4847,
"predicted_SO": 0.9787
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.257,
"after": 0.2124,
"delta": -0.0446,
"percent_delta": -0.1735,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.05,
"after": 3.9255,
"delta": -0.1245,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2693,
"delta": 0.0163,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.419,
"after": 0.3867,
"delta": -0.0323,
"percent_delta": -0.0771,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0519,
"delta": 0.0319,
"percent_delta": 0.0313,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.2043,
"delta": 0.0043,
"percent_delta": 0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3441,
"delta": 0.0051,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.703,
"after": 0.6626,
"delta": -0.0404,
"percent_delta": -0.0575,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.5043,
"delta": -0.0157,
"percent_delta": -0.0302,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4847,
"delta": 0.0117,
"percent_delta": 0.0247,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.9787,
"delta": -0.0213,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2693,
"delta": 0.0163,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.05,
"after": 3.9255,
"delta": -0.1245,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 74
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2124,
"predicted_3B": 0.0004,
"predicted_AB": 3.9255,
"predicted_AVG": 0.2703,
"predicted_BB": 0.3906,
"predicted_H": 1.0612,
"predicted_HBP": 0.01,
"predicted_HR": 0.2095,
"predicted_OBP": 0.3364,
"predicted_R": 0.6735,
"predicted_RBI": 0.5126,
"predicted_SLG": 0.4848,
"predicted_SO": 0.9689
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2124,
"after": 0.2124,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9255,
"after": 3.9255,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2693,
"after": 0.2703,
"delta": 0.001,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3867,
"after": 0.3906,
"delta": 0.0039,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0519,
"after": 1.0612,
"delta": 0.0093,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2043,
"after": 0.2095,
"delta": 0.0052,
"percent_delta": 0.0255,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3441,
"after": 0.3364,
"delta": -0.0077,
"percent_delta": -0.0224,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6626,
"after": 0.6735,
"delta": 0.0109,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5043,
"after": 0.5126,
"delta": 0.0083,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4847,
"after": 0.4848,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9787,
"after": 0.9689,
"delta": -0.0098,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3441,
"after": 0.3364,
"delta": -0.0077,
"percent_delta": -0.0224,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.05), rates preserved: AVG=0.262 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2124,
"after": 0.0,
"delta": -0.2124,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9255,
"after": 4.0,
"delta": 0.0745,
"percent_delta": 0.019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3906,
"after": 0.0,
"delta": -0.3906,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0612,
"after": 1.0,
"delta": -0.0612,
"percent_delta": -0.0577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2095,
"after": 0.0,
"delta": -0.2095,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5126,
"after": 1.0,
"delta": 0.4874,
"percent_delta": 0.9508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9689,
"after": 1.0,
"delta": 0.0311,
"percent_delta": 0.0321,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5126,
"after": 1.0,
"delta": 0.4874,
"percent_delta": 0.9508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3906,
"after": 0.0,
"delta": -0.3906,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.500)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9158,
"bvp": 0.0842
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6735,
"after": 1.0,
"delta": 0.3265,
"percent_delta": 0.4848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6735,
"after": 1.0,
"delta": 0.3265,
"percent_delta": 0.4848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2703,
"after": 0.25,
"delta": -0.0203,
"percent_delta": -0.0751,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3364,
"after": 0.25,
"delta": -0.0864,
"percent_delta": -0.2568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4848,
"after": 0.25,
"delta": -0.2348,
"percent_delta": -0.4843,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4848,
"after": 0.25,
"delta": -0.2348,
"percent_delta": -0.4843,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2703,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3364,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4848,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2703,
"delta": 0.0203,
"percent_delta": 0.0813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3364,
"delta": 0.0864,
"percent_delta": 0.3454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4848,
"delta": 0.2348,
"percent_delta": 0.9391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4848,
"delta": 0.2348,
"percent_delta": 0.9391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.257,
"after": 0.0,
"delta": -0.257,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.05,
"after": 3.0,
"delta": -1.05,
"percent_delta": -0.2593,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2703,
"delta": 0.0173,
"percent_delta": 0.0684,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.419,
"after": 1.0,
"delta": 0.581,
"percent_delta": 1.3866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0,
"delta": -0.02,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3364,
"delta": -0.0026,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.703,
"after": 1.0,
"delta": 0.297,
"percent_delta": 0.4225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 1.0,
"delta": 0.48,
"percent_delta": 0.9231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4848,
"delta": 0.0118,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 5,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.419,
"after": 1.0,
"delta": 0.581,
"percent_delta": 1.3866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.05,
"after": 3.0,
"delta": -1.05,
"percent_delta": -0.2593,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.257 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.050 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.419 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.703 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.473 | - |
| predicted_SO | 1.000 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | -0.045 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.925 | -0.124 |
| predicted_AVG | 0.269 | 0.016 |
| predicted_BB | 0.387 | -0.032 |
| predicted_H | 1.052 | 0.032 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.204 | 0.004 |
| predicted_OBP | 0.344 | 0.005 |
| predicted_R | 0.663 | -0.040 |
| predicted_RBI | 0.504 | -0.016 |
| predicted_SLG | 0.485 | 0.012 |
| predicted_SO | 0.979 | -0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.925 | 0.000 |
| predicted_AVG | 0.270 | 0.001 |
| predicted_BB | 0.391 | 0.004 |
| predicted_H | 1.061 | 0.009 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.209 | 0.005 |
| predicted_OBP | 0.336 | -0.008 |
| predicted_R | 0.673 | 0.011 |
| predicted_RBI | 0.513 | 0.008 |
| predicted_SLG | 0.485 | 0.000 |
| predicted_SO | 0.969 | -0.010 |
AB rounded to 4 (raw=4.05), rates preserved: AVG=0.262 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.500)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.212 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.075 |
| predicted_AVG | 0.250 | -0.020 |
| predicted_BB | 0.000 | -0.391 |
| predicted_H | 1.000 | -0.061 |
| predicted_HR | 0.000 | -0.209 |
| predicted_OBP | 0.250 | -0.086 |
| predicted_R | 1.000 | 0.327 |
| predicted_RBI | 1.000 | 0.487 |
| predicted_SLG | 0.250 | -0.235 |
| predicted_SO | 1.000 | 0.031 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 6.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 4.000 | 0.3529 | 0.3889 | 0.3529 | 0.3529 | 0.0000 | 0.0000 | 0.0588 | 0.2353 |
| last_10 | 0.20 | 10 | - | 37.000 | 11.000 | 0.000 | 0.000 | 3.000 | 4.000 | 6.000 | 3.000 | 10.000 | 0.2973 | 0.3500 | 0.5405 | 0.2973 | 0.0811 | 0.1081 | 0.0811 | 0.2703 |
| season | 0.60 | 74 | - | 287.000 | 79.000 | 19.000 | 0.000 | 20.000 | 51.000 | 52.000 | 31.000 | 74.000 | 0.2753 | 0.3447 | 0.5505 | 0.2753 | 0.0697 | 0.1777 | 0.1080 | 0.2578 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.7570 |
| predicted_AVG | 0.2914 |
| predicted_BB | 0.3430 |
| predicted_H | 1.0950 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.2100 |
| predicted_OBP | 0.3511 |
| predicted_R | 0.6080 |
| predicted_RBI | 0.4830 |
| predicted_SLG | 0.5005 |
| predicted_SO | 0.9500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2570 | 0.1520 | 0.2124 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0500 | 3.7570 | 3.9255 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2914 | 0.2693 | model_form_blend |
| predicted_BB | 0.4190 | 0.3430 | 0.3867 | model_form_blend |
| predicted_H | 1.0200 | 1.0950 | 1.0519 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.2000 | 0.2100 | 0.2043 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3511 | 0.3441 | model_form_blend |
| predicted_R | 0.7030 | 0.6080 | 0.6626 | model_form_blend |
| predicted_RBI | 0.5200 | 0.4830 | 0.5043 | model_form_blend |
| predicted_SLG | 0.4730 | 0.5005 | 0.4847 | model_form_blend |
| predicted_SO | 1.0000 | 0.9500 | 0.9787 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 265 |
| Season rows before report date | 265 |
| Report year | 2026 |
| Profile rows used | 74 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.275 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.6 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B-RF |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 621566 |
| playerID | 621566 |
| playerName | Matt Olson |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 9.7 |
| sl_woba | 0.382 |
| sl_xwoba | 0.37 |
| sl_xba | 0.261 |
| sl_xslg | 0.533 |
| sl_sweet_spot_percent | 32.4 |
| sl_barrel_batted_rate | 14.4 |
| sl_hard_hit_percent | 52.3 |
| sl_exit_velocity_avg | 93.5 |
| sl_launch_angle_avg | 18.4 |
| sl_whiff_percent | 25.0 |
| sl_swing_percent | 46.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.132 | 1.000 | 0.000 | Hitting_2B | 0.126 | 0.000 | 0.874 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.000 | 5.000 | 4.000 | Hitting_AB | 3.851 | 1.000 | 1.149 | 4.000 |
| predicted_AVG | 0.270 | 0.400 | 0.250 | Hitting_AVG | 0.301 | 1.000 | 0.099 | -0.600 |
| predicted_BB | 0.162 | 0.000 | 0.000 | Hitting_BB | 0.135 | 0.000 | -0.135 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.005 | 0.000 | -0.005 | 0.000 |
| predicted_H | 1.080 | 2.000 | 1.000 | Hitting_H | 1.158 | 1.000 | 0.842 | 1.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.251 | 0.000 | -0.251 | 0.000 |
| predicted_OBP | 0.344 | 0.400 | 0.250 | Hitting_OBP | 0.326 | 1.000 | 0.074 | -0.600 |
| predicted_R | 0.529 | 1.000 | 1.000 | Hitting_R | 0.553 | 1.000 | 0.447 | 0.000 |
| predicted_RBI | 0.530 | 2.000 | 1.000 | Hitting_RBI | 0.656 | 0.000 | 1.344 | 2.000 |
| predicted_SLG | 0.483 | 0.600 | 0.250 | Hitting_SLG | 0.529 | 1.000 | 0.071 | -0.400 |
| predicted_SO | 0.765 | 0.000 | 1.000 | Hitting_SO | 0.763 | 0.000 | -0.763 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 7 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_RBI: 0.5300 -> 2.0000 (boost 1.4700, better) |
| Biggest Deboost | predicted_SO: 0.7650 -> 0.0000 (deboost -0.7650, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 5 | 1 | 4 | 2 | predicted_R: 0.5290 -> 0.5873 (boost 0.0583, better) | predicted_AB: 4.0000 -> 3.7650 (deboost -0.2350, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3501 -> 0.3239 (deboost -0.0262, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_RBI: 0.5149 -> 1.0000 (boost 0.4851, better) | predicted_HR: 0.1906 -> 0.0000 (deboost -0.1906, worse) | AB rounded to 4 (raw=4.00), rates preserved: AVG=0.275 HR/AB=0.048 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5970 -> 1.0000 (boost 0.4030, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4782 -> 0.2500 (deboost -0.2282, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4782 (boost 0.2282, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "671739",
"player_name": "Michael Harris II",
"position": "2B",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.132,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.27,
"predicted_BB": 0.162,
"predicted_H": 1.08,
"predicted_HR": 0.19,
"predicted_OBP": 0.344,
"predicted_R": 0.529,
"predicted_RBI": 0.53,
"predicted_SLG": 0.483,
"predicted_SO": 0.765
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1278,
"predicted_3B": 0.0004,
"predicted_AB": 3.765,
"predicted_AVG": 0.2915,
"predicted_BB": 0.1746,
"predicted_H": 1.0905,
"predicted_HBP": 0.011,
"predicted_HR": 0.1858,
"predicted_OBP": 0.3501,
"predicted_R": 0.5873,
"predicted_RBI": 0.5065,
"predicted_SLG": 0.4964,
"predicted_SO": 0.8196
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.132,
"after": 0.1278,
"delta": -0.0042,
"percent_delta": -0.0318,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.765,
"delta": -0.235,
"percent_delta": -0.0587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2915,
"delta": 0.0215,
"percent_delta": 0.0796,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.162,
"after": 0.1746,
"delta": 0.0126,
"percent_delta": 0.0778,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.08,
"after": 1.0905,
"delta": 0.0105,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.1858,
"delta": -0.0042,
"percent_delta": -0.0221,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.344,
"after": 0.3501,
"delta": 0.0061,
"percent_delta": 0.0177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 0.5873,
"delta": 0.0583,
"percent_delta": 0.1102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.5065,
"delta": -0.0235,
"percent_delta": -0.0443,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.483,
"after": 0.4964,
"delta": 0.0134,
"percent_delta": 0.0277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.765,
"after": 0.8196,
"delta": 0.0546,
"percent_delta": 0.0714,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.529,
"after": 0.5873,
"delta": 0.0583,
"percent_delta": 0.1102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.765,
"delta": -0.235,
"percent_delta": -0.0587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1278,
"predicted_3B": 0.0004,
"predicted_AB": 3.765,
"predicted_AVG": 0.2922,
"predicted_BB": 0.1763,
"predicted_H": 1.1001,
"predicted_HBP": 0.011,
"predicted_HR": 0.1906,
"predicted_OBP": 0.3239,
"predicted_R": 0.597,
"predicted_RBI": 0.5149,
"predicted_SLG": 0.4782,
"predicted_SO": 0.8114
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1278,
"after": 0.1278,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.765,
"after": 3.765,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2915,
"after": 0.2922,
"delta": 0.0007,
"percent_delta": 0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1746,
"after": 0.1763,
"delta": 0.0017,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0905,
"after": 1.1001,
"delta": 0.0096,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1858,
"after": 0.1906,
"delta": 0.0048,
"percent_delta": 0.0258,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3501,
"after": 0.3239,
"delta": -0.0262,
"percent_delta": -0.0748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5873,
"after": 0.597,
"delta": 0.0097,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5065,
"after": 0.5149,
"delta": 0.0084,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4964,
"after": 0.4782,
"delta": -0.0182,
"percent_delta": -0.0367,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8196,
"after": 0.8114,
"delta": -0.0082,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3501,
"after": 0.3239,
"delta": -0.0262,
"percent_delta": -0.0748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.00), rates preserved: AVG=0.275 HR/AB=0.048",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1278,
"after": 0.0,
"delta": -0.1278,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.765,
"after": 4.0,
"delta": 0.235,
"percent_delta": 0.0624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1763,
"after": 0.0,
"delta": -0.1763,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1001,
"after": 1.0,
"delta": -0.1001,
"percent_delta": -0.091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1906,
"after": 0.0,
"delta": -0.1906,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5149,
"after": 1.0,
"delta": 0.4851,
"percent_delta": 0.9421,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8114,
"after": 1.0,
"delta": 0.1886,
"percent_delta": 0.2324,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5149,
"after": 1.0,
"delta": 0.4851,
"percent_delta": 0.9421,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.1906,
"after": 0.0,
"delta": -0.1906,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.597,
"after": 1.0,
"delta": 0.403,
"percent_delta": 0.675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.597,
"after": 1.0,
"delta": 0.403,
"percent_delta": 0.675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2922,
"after": 0.25,
"delta": -0.0422,
"percent_delta": -0.1444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3239,
"after": 0.25,
"delta": -0.0739,
"percent_delta": -0.2282,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4782,
"after": 0.25,
"delta": -0.2282,
"percent_delta": -0.4772,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4782,
"after": 0.25,
"delta": -0.2282,
"percent_delta": -0.4772,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2922,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3239,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4782,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2922,
"delta": 0.0422,
"percent_delta": 0.1688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3239,
"delta": 0.0739,
"percent_delta": 0.2954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4782,
"delta": 0.2282,
"percent_delta": 0.9127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4782,
"delta": 0.2282,
"percent_delta": 0.9127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.132,
"after": 1.0,
"delta": 0.868,
"percent_delta": 6.5758,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2922,
"delta": 0.0222,
"percent_delta": 0.0822,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.162,
"after": 0.0,
"delta": -0.162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.08,
"after": 2.0,
"delta": 0.92,
"percent_delta": 0.8519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.344,
"after": 0.3239,
"delta": -0.0201,
"percent_delta": -0.0584,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.529,
"after": 1.0,
"delta": 0.471,
"percent_delta": 0.8904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 2.0,
"delta": 1.47,
"percent_delta": 2.7736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.483,
"after": 0.4782,
"delta": -0.0048,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.765,
"after": 0.0,
"delta": -0.765,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.53,
"after": 2.0,
"delta": 1.47,
"percent_delta": 2.7736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.765,
"after": 0.0,
"delta": -0.765,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.132 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.000 | - |
| predicted_AVG | 0.270 | - |
| predicted_BB | 0.162 | - |
| predicted_H | 1.080 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.344 | - |
| predicted_R | 0.529 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.483 | - |
| predicted_SO | 0.765 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.128 | -0.004 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.765 | -0.235 |
| predicted_AVG | 0.291 | 0.021 |
| predicted_BB | 0.175 | 0.013 |
| predicted_H | 1.091 | 0.010 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.186 | -0.004 |
| predicted_OBP | 0.350 | 0.006 |
| predicted_R | 0.587 | 0.058 |
| predicted_RBI | 0.506 | -0.024 |
| predicted_SLG | 0.496 | 0.013 |
| predicted_SO | 0.820 | 0.055 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.128 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.765 | 0.000 |
| predicted_AVG | 0.292 | 0.001 |
| predicted_BB | 0.176 | 0.002 |
| predicted_H | 1.100 | 0.010 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.191 | 0.005 |
| predicted_OBP | 0.324 | -0.026 |
| predicted_R | 0.597 | 0.010 |
| predicted_RBI | 0.515 | 0.008 |
| predicted_SLG | 0.478 | -0.018 |
| predicted_SO | 0.811 | -0.008 |
AB rounded to 4 (raw=4.00), rates preserved: AVG=0.275 HR/AB=0.048
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.128 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.235 |
| predicted_AVG | 0.250 | -0.042 |
| predicted_BB | 0.000 | -0.176 |
| predicted_H | 1.000 | -0.100 |
| predicted_HR | 0.000 | -0.191 |
| predicted_OBP | 0.250 | -0.074 |
| predicted_R | 1.000 | 0.403 |
| predicted_RBI | 1.000 | 0.485 |
| predicted_SLG | 0.250 | -0.228 |
| predicted_SO | 1.000 | 0.189 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 5.000 | 0.000 | 0.000 | 1.000 | 1.000 | 5.000 | 1.000 | 5.000 | 0.3571 | 0.4000 | 0.5714 | 0.3571 | 0.0714 | 0.0714 | 0.0714 | 0.3571 |
| last_10 | 0.20 | 10 | - | 33.000 | 12.000 | 2.000 | 0.000 | 1.000 | 4.000 | 7.000 | 2.000 | 11.000 | 0.3636 | 0.4000 | 0.5152 | 0.3636 | 0.0303 | 0.1212 | 0.0606 | 0.3333 |
| season | 0.60 | 68 | - | 246.000 | 76.000 | 9.000 | 0.000 | 14.000 | 41.000 | 36.000 | 11.000 | 52.000 | 0.3089 | 0.3398 | 0.5163 | 0.3089 | 0.0569 | 0.1667 | 0.0447 | 0.2114 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1220 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.4400 |
| predicted_AVG | 0.3213 |
| predicted_BB | 0.1920 |
| predicted_H | 1.1050 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.1800 |
| predicted_OBP | 0.3586 |
| predicted_R | 0.6680 |
| predicted_RBI | 0.4740 |
| predicted_SLG | 0.5149 |
| predicted_SO | 0.8950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1320 | 0.1220 | 0.1278 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0000 | 3.4400 | 3.7650 | model_form_blend |
| predicted_AVG | 0.2700 | 0.3213 | 0.2915 | model_form_blend |
| predicted_BB | 0.1620 | 0.1920 | 0.1746 | model_form_blend |
| predicted_H | 1.0800 | 1.1050 | 1.0905 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.1900 | 0.1800 | 0.1858 | model_form_blend |
| predicted_OBP | 0.3440 | 0.3586 | 0.3501 | model_form_blend |
| predicted_R | 0.5290 | 0.6680 | 0.5873 | model_form_blend |
| predicted_RBI | 0.5300 | 0.4740 | 0.5065 | model_form_blend |
| predicted_SLG | 0.4830 | 0.5149 | 0.4964 | model_form_blend |
| predicted_SO | 0.7650 | 0.8950 | 0.8196 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 215 |
| Season rows before report date | 215 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.309 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_SF@ATL |
| game_type | short |
| mlbID | 671739 |
| playerID | 671739 |
| playerName | Michael Harris II |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 4.6 |
| sl_woba | 0.37 |
| sl_xwoba | 0.384 |
| sl_xba | 0.308 |
| sl_xslg | 0.55 |
| sl_sweet_spot_percent | 30.9 |
| sl_barrel_batted_rate | 15.0 |
| sl_hard_hit_percent | 51.5 |
| sl_exit_velocity_avg | 92.3 |
| sl_launch_angle_avg | 11.5 |
| sl_whiff_percent | 26.4 |
| sl_swing_percent | 55.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.162 | 0.000 | 0.000 | Hitting_2B | 0.155 | 0.000 | -0.155 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.610 | 4.000 | 4.000 | Hitting_AB | 3.754 | 5.000 | 0.246 | -1.000 |
| predicted_AVG | 0.230 | 0.250 | 0.250 | Hitting_AVG | 0.219 | 0.600 | 0.031 | -0.350 |
| predicted_BB | 0.338 | 0.000 | 0.000 | Hitting_BB | 0.325 | 0.000 | -0.325 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 0.830 | 1.000 | 1.000 | Hitting_H | 0.821 | 3.000 | 0.179 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.123 | 0.000 | -0.123 | 0.000 |
| predicted_OBP | 0.303 | 0.250 | 0.250 | Hitting_OBP | 0.293 | 0.600 | -0.043 | -0.350 |
| predicted_R | 0.419 | 1.000 | 0.000 | Hitting_R | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_RBI | 0.400 | 1.000 | 0.000 | Hitting_RBI | 0.528 | 1.000 | 0.472 | 0.000 |
| predicted_SLG | 0.365 | 0.250 | 0.250 | Hitting_SLG | 0.367 | 0.600 | -0.117 | -0.350 |
| predicted_SO | 1.162 | 2.000 | 1.000 | Hitting_SO | 1.246 | 1.000 | 0.754 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 4 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_SO: 1.1620 -> 2.0000 (boost 0.8380, worse) |
| Biggest Deboost | predicted_BB: 0.3380 -> 0.0000 (deboost -0.3380, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_R: 0.4190 -> 0.3542 (deboost -0.0648, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3017 -> 0.2954 (deboost -0.0063, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 3 | 5 | predicted_AB: 3.5761 -> 4.0000 (boost 0.4239, better) | predicted_RBI: 0.3945 -> 0.0000 (deboost -0.3945, worse) | AB rounded to 4 (raw=3.61), rates preserved: AVG=0.227 HR/AB=0.025 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3600 -> 0.0000 (deboost -0.3600, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2296 -> 0.2500 (boost 0.0204, better) | predicted_SLG: 0.3605 -> 0.2500 (deboost -0.1105, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 3 | 0 | 2 | 1 | predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3605 (boost 0.1105, better) | predicted_AVG: 0.2500 -> 0.2296 (deboost -0.0204, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663586",
"player_name": "Austin Riley",
"position": "3B",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.162,
"predicted_3B": 0.014,
"predicted_AB": 3.61,
"predicted_AVG": 0.23,
"predicted_BB": 0.338,
"predicted_H": 0.83,
"predicted_HR": 0.1,
"predicted_OBP": 0.303,
"predicted_R": 0.419,
"predicted_RBI": 0.4,
"predicted_SLG": 0.365,
"predicted_SO": 1.162
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1777,
"predicted_3B": 0.0115,
"predicted_AB": 3.5761,
"predicted_AVG": 0.2277,
"predicted_BB": 0.3308,
"predicted_H": 0.8139,
"predicted_HBP": 0.066,
"predicted_HR": 0.0869,
"predicted_OBP": 0.3017,
"predicted_R": 0.3542,
"predicted_RBI": 0.3881,
"predicted_SLG": 0.3562,
"predicted_SO": 1.1582
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.162,
"after": 0.1777,
"delta": 0.0157,
"percent_delta": 0.0969,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0115,
"delta": -0.0025,
"percent_delta": -0.1786,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.61,
"after": 3.5761,
"delta": -0.0339,
"percent_delta": -0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2277,
"delta": -0.0023,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.338,
"after": 0.3308,
"delta": -0.0072,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 0.8139,
"delta": -0.0161,
"percent_delta": -0.0194,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0869,
"delta": -0.0131,
"percent_delta": -0.131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.3017,
"delta": -0.0013,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.419,
"after": 0.3542,
"delta": -0.0648,
"percent_delta": -0.1547,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.3881,
"delta": -0.0119,
"percent_delta": -0.0298,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.365,
"after": 0.3562,
"delta": -0.0088,
"percent_delta": -0.0241,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.162,
"after": 1.1582,
"delta": -0.0038,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.419,
"after": 0.3542,
"delta": -0.0648,
"percent_delta": -0.1547,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 74
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1777,
"predicted_3B": 0.0115,
"predicted_AB": 3.5761,
"predicted_AVG": 0.2296,
"predicted_BB": 0.3341,
"predicted_H": 0.8211,
"predicted_HBP": 0.066,
"predicted_HR": 0.0891,
"predicted_OBP": 0.2954,
"predicted_R": 0.36,
"predicted_RBI": 0.3945,
"predicted_SLG": 0.3605,
"predicted_SO": 1.1466
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1777,
"after": 0.1777,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0115,
"after": 0.0115,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5761,
"after": 3.5761,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2277,
"after": 0.2296,
"delta": 0.0019,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3308,
"after": 0.3341,
"delta": 0.0033,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8139,
"after": 0.8211,
"delta": 0.0072,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.066,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0869,
"after": 0.0891,
"delta": 0.0022,
"percent_delta": 0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3017,
"after": 0.2954,
"delta": -0.0063,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3542,
"after": 0.36,
"delta": 0.0058,
"percent_delta": 0.0164,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3881,
"after": 0.3945,
"delta": 0.0064,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3562,
"after": 0.3605,
"delta": 0.0043,
"percent_delta": 0.0121,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.1582,
"after": 1.1466,
"delta": -0.0116,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3017,
"after": 0.2954,
"delta": -0.0063,
"percent_delta": -0.0209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.61), rates preserved: AVG=0.227 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1777,
"after": 0.0,
"delta": -0.1777,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0115,
"after": 0.0,
"delta": -0.0115,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5761,
"after": 4.0,
"delta": 0.4239,
"percent_delta": 0.1185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3341,
"after": 0.0,
"delta": -0.3341,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8211,
"after": 1.0,
"delta": 0.1789,
"percent_delta": 0.2179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.0,
"delta": -0.066,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0891,
"after": 0.0,
"delta": -0.0891,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3945,
"after": 0.0,
"delta": -0.3945,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1466,
"after": 1.0,
"delta": -0.1466,
"percent_delta": -0.1279,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5761,
"after": 4.0,
"delta": 0.4239,
"percent_delta": 0.1185,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3945,
"after": 0.0,
"delta": -0.3945,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2296,
"after": 0.25,
"delta": 0.0204,
"percent_delta": 0.0889,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2954,
"after": 0.25,
"delta": -0.0454,
"percent_delta": -0.1537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3605,
"after": 0.25,
"delta": -0.1105,
"percent_delta": -0.3065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2296,
"after": 0.25,
"delta": 0.0204,
"percent_delta": 0.0889,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3605,
"after": 0.25,
"delta": -0.1105,
"percent_delta": -0.3065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2296,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2954,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3605,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2296,
"delta": -0.0204,
"percent_delta": -0.0816,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2954,
"delta": 0.0454,
"percent_delta": 0.1817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3605,
"delta": 0.1105,
"percent_delta": 0.4419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3605,
"delta": 0.1105,
"percent_delta": 0.4419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2296,
"delta": -0.0204,
"percent_delta": -0.0816,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.162,
"after": 0.0,
"delta": -0.162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.61,
"after": 4.0,
"delta": 0.39,
"percent_delta": 0.108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2296,
"delta": -0.0004,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.338,
"after": 0.0,
"delta": -0.338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 1.0,
"delta": 0.17,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.2954,
"delta": -0.0076,
"percent_delta": -0.0251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.419,
"after": 1.0,
"delta": 0.581,
"percent_delta": 1.3866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 1.0,
"delta": 0.6,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.365,
"after": 0.3605,
"delta": -0.0045,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.162,
"after": 2.0,
"delta": 0.838,
"percent_delta": 0.7212,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 5,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.162,
"after": 2.0,
"delta": 0.838,
"percent_delta": 0.7212,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.338,
"after": 0.0,
"delta": -0.338,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.610 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.338 | - |
| predicted_H | 0.830 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.303 | - |
| predicted_R | 0.419 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.365 | - |
| predicted_SO | 1.162 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | 0.016 |
| predicted_3B | 0.011 | -0.003 |
| predicted_AB | 3.576 | -0.034 |
| predicted_AVG | 0.228 | -0.002 |
| predicted_BB | 0.331 | -0.007 |
| predicted_H | 0.814 | -0.016 |
| predicted_HBP | 0.066 | - |
| predicted_HR | 0.087 | -0.013 |
| predicted_OBP | 0.302 | -0.001 |
| predicted_R | 0.354 | -0.065 |
| predicted_RBI | 0.388 | -0.012 |
| predicted_SLG | 0.356 | -0.009 |
| predicted_SO | 1.158 | -0.004 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | 0.000 |
| predicted_3B | 0.011 | 0.000 |
| predicted_AB | 3.576 | 0.000 |
| predicted_AVG | 0.230 | 0.002 |
| predicted_BB | 0.334 | 0.003 |
| predicted_H | 0.821 | 0.007 |
| predicted_HBP | 0.066 | 0.000 |
| predicted_HR | 0.089 | 0.002 |
| predicted_OBP | 0.295 | -0.006 |
| predicted_R | 0.360 | 0.006 |
| predicted_RBI | 0.395 | 0.006 |
| predicted_SLG | 0.360 | 0.004 |
| predicted_SO | 1.147 | -0.012 |
AB rounded to 4 (raw=3.61), rates preserved: AVG=0.227 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.178 |
| predicted_3B | 0.000 | -0.011 |
| predicted_AB | 4.000 | 0.424 |
| predicted_AVG | 0.250 | 0.020 |
| predicted_BB | 0.000 | -0.334 |
| predicted_H | 1.000 | 0.179 |
| predicted_HR | 0.000 | -0.089 |
| predicted_OBP | 0.250 | -0.045 |
| predicted_R | 0.000 | -0.360 |
| predicted_RBI | 0.000 | -0.395 |
| predicted_SLG | 0.250 | -0.110 |
| predicted_SO | 1.000 | -0.147 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 6.000 | 0.2353 | 0.2778 | 0.2941 | 0.2353 | 0.0000 | 0.0588 | 0.0588 | 0.3529 |
| last_10 | 0.20 | 10 | - | 33.000 | 8.000 | 3.000 | 0.000 | 0.000 | 2.000 | 0.000 | 4.000 | 12.000 | 0.2424 | 0.3421 | 0.3333 | 0.2424 | 0.0000 | 0.0606 | 0.1212 | 0.3636 |
| season | 0.60 | 74 | - | 266.000 | 56.000 | 12.000 | 1.000 | 8.000 | 35.000 | 31.000 | 25.000 | 86.000 | 0.2105 | 0.2910 | 0.3534 | 0.2105 | 0.0301 | 0.1316 | 0.0940 | 0.3233 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1990 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.5300 |
| predicted_AVG | 0.2245 |
| predicted_BB | 0.3210 |
| predicted_H | 0.7920 |
| predicted_HBP | 0.0660 |
| predicted_HR | 0.0690 |
| predicted_OBP | 0.2999 |
| predicted_R | 0.2660 |
| predicted_RBI | 0.3720 |
| predicted_SLG | 0.3441 |
| predicted_SO | 1.1530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1620 | 0.1990 | 0.1777 | model_form_blend |
| predicted_3B | 0.0140 | 0.0080 | 0.0115 | model_form_blend |
| predicted_AB | 3.6100 | 3.5300 | 3.5761 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2245 | 0.2277 | model_form_blend |
| predicted_BB | 0.3380 | 0.3210 | 0.3308 | model_form_blend |
| predicted_H | 0.8300 | 0.7920 | 0.8139 | model_form_blend |
| predicted_HBP | - | 0.0660 | 0.0660 | form_only |
| predicted_HR | 0.1000 | 0.0690 | 0.0869 | model_form_blend |
| predicted_OBP | 0.3030 | 0.2999 | 0.3017 | model_form_blend |
| predicted_R | 0.4190 | 0.2660 | 0.3542 | model_form_blend |
| predicted_RBI | 0.4000 | 0.3720 | 0.3881 | model_form_blend |
| predicted_SLG | 0.3650 | 0.3441 | 0.3562 | model_form_blend |
| predicted_SO | 1.1620 | 1.1530 | 1.1582 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 252 |
| Season rows before report date | 252 |
| Report year | 2026 |
| Profile rows used | 74 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.211 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.6 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 663586 |
| playerID | 663586 |
| playerName | Austin Riley |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.5 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.29 |
| sl_xwoba | 0.302 |
| sl_xba | 0.212 |
| sl_xslg | 0.39 |
| sl_sweet_spot_percent | 30.8 |
| sl_barrel_batted_rate | 10.4 |
| sl_hard_hit_percent | 45.1 |
| sl_exit_velocity_avg | 91.2 |
| sl_launch_angle_avg | 19.4 |
| sl_whiff_percent | 32.1 |
| sl_swing_percent | 46.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.118 | 0.000 | 0.000 | Hitting_2B | 0.123 | 0.000 | -0.123 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.090 | 3.000 | 4.000 | Hitting_AB | 3.968 | 5.000 | -0.968 | -2.000 |
| predicted_AVG | 0.256 | 0.000 | 0.250 | Hitting_AVG | 0.297 | 0.200 | -0.297 | -0.200 |
| predicted_BB | 0.471 | 1.000 | 0.000 | Hitting_BB | 0.507 | 0.000 | 0.493 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.014 | 0.000 | -0.014 | 0.000 |
| predicted_H | 1.050 | 0.000 | 1.000 | Hitting_H | 1.178 | 1.000 | -1.178 | -1.000 |
| predicted_HR | 0.290 | 0.000 | 0.000 | Hitting_HR | 0.274 | 0.000 | -0.274 | 0.000 |
| predicted_OBP | 0.355 | 0.250 | 0.250 | Hitting_OBP | 0.383 | 0.200 | -0.133 | 0.050 |
| predicted_R | 0.824 | 0.000 | 1.000 | Hitting_R | 0.845 | 1.000 | -0.845 | -1.000 |
| predicted_RBI | 0.760 | 0.000 | 1.000 | Hitting_RBI | 0.813 | 0.000 | -0.813 | 0.000 |
| predicted_SLG | 0.535 | 0.000 | 0.250 | Hitting_SLG | 0.535 | 0.200 | -0.535 | -0.200 |
| predicted_SO | 0.961 | 0.000 | 1.000 | Hitting_SO | 0.945 | 2.000 | -0.945 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.4710 -> 1.0000 (boost 0.5290, better) |
| Biggest Deboost | predicted_AB: 4.0900 -> 3.0000 (deboost -1.0900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_SLG: 0.5350 -> 0.5627 (boost 0.0277, better) | predicted_AB: 4.0900 -> 3.9070 (deboost -0.1830, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.5627 -> 0.5468 (deboost -0.0159, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_RBI: 0.7759 -> 1.0000 (boost 0.2241, better) | predicted_BB: 0.4757 -> 0.0000 (deboost -0.4757, worse) | AB rounded to 4 (raw=4.09), rates preserved: AVG=0.261 HR/AB=0.078 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7957 -> 1.0000 (boost 0.2043, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5468 -> 0.2500 (deboost -0.2968, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 1 | 5 | 2 | 4 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5468 (boost 0.2968, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686948",
"player_name": "Drake Baldwin",
"position": "SS",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.118,
"predicted_3B": 0.0,
"predicted_AB": 4.09,
"predicted_AVG": 0.256,
"predicted_BB": 0.471,
"predicted_H": 1.05,
"predicted_HR": 0.29,
"predicted_OBP": 0.355,
"predicted_R": 0.824,
"predicted_RBI": 0.76,
"predicted_SLG": 0.535,
"predicted_SO": 0.961
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1097,
"predicted_3B": 0.0008,
"predicted_AB": 3.907,
"predicted_AVG": 0.2715,
"predicted_BB": 0.471,
"predicted_H": 1.0583,
"predicted_HBP": 0.033,
"predicted_HR": 0.3112,
"predicted_OBP": 0.3624,
"predicted_R": 0.7828,
"predicted_RBI": 0.7633,
"predicted_SLG": 0.5627,
"predicted_SO": 0.9668
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.118,
"after": 0.1097,
"delta": -0.0083,
"percent_delta": -0.0703,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.09,
"after": 3.907,
"delta": -0.183,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2715,
"delta": 0.0155,
"percent_delta": 0.0605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.471,
"after": 0.471,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0583,
"delta": 0.0083,
"percent_delta": 0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.29,
"after": 0.3112,
"delta": 0.0212,
"percent_delta": 0.0731,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.355,
"after": 0.3624,
"delta": 0.0074,
"percent_delta": 0.0208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.824,
"after": 0.7828,
"delta": -0.0412,
"percent_delta": -0.05,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.76,
"after": 0.7633,
"delta": 0.0033,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.535,
"after": 0.5627,
"delta": 0.0277,
"percent_delta": 0.0518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.961,
"after": 0.9668,
"delta": 0.0058,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.535,
"after": 0.5627,
"delta": 0.0277,
"percent_delta": 0.0518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.09,
"after": 3.907,
"delta": -0.183,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 51
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1097,
"predicted_3B": 0.0008,
"predicted_AB": 3.907,
"predicted_AVG": 0.2733,
"predicted_BB": 0.4757,
"predicted_H": 1.0676,
"predicted_HBP": 0.033,
"predicted_HR": 0.3192,
"predicted_OBP": 0.3521,
"predicted_R": 0.7957,
"predicted_RBI": 0.7759,
"predicted_SLG": 0.5468,
"predicted_SO": 0.9571
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1097,
"after": 0.1097,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.907,
"after": 3.907,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2715,
"after": 0.2733,
"delta": 0.0018,
"percent_delta": 0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.471,
"after": 0.4757,
"delta": 0.0047,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0583,
"after": 1.0676,
"delta": 0.0093,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3112,
"after": 0.3192,
"delta": 0.008,
"percent_delta": 0.0257,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3624,
"after": 0.3521,
"delta": -0.0103,
"percent_delta": -0.0284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7828,
"after": 0.7957,
"delta": 0.0129,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7633,
"after": 0.7759,
"delta": 0.0126,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5627,
"after": 0.5468,
"delta": -0.0159,
"percent_delta": -0.0283,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9668,
"after": 0.9571,
"delta": -0.0097,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5627,
"after": 0.5468,
"delta": -0.0159,
"percent_delta": -0.0283,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.09), rates preserved: AVG=0.261 HR/AB=0.078",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1097,
"after": 0.0,
"delta": -0.1097,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.907,
"after": 4.0,
"delta": 0.093,
"percent_delta": 0.0238,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4757,
"after": 0.0,
"delta": -0.4757,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0676,
"after": 1.0,
"delta": -0.0676,
"percent_delta": -0.0633,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.0,
"delta": -0.033,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3192,
"after": 0.0,
"delta": -0.3192,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7759,
"after": 1.0,
"delta": 0.2241,
"percent_delta": 0.2888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9571,
"after": 1.0,
"delta": 0.0429,
"percent_delta": 0.0448,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.7759,
"after": 1.0,
"delta": 0.2241,
"percent_delta": 0.2888,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4757,
"after": 0.0,
"delta": -0.4757,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7957,
"after": 1.0,
"delta": 0.2043,
"percent_delta": 0.2568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7957,
"after": 1.0,
"delta": 0.2043,
"percent_delta": 0.2568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2733,
"after": 0.25,
"delta": -0.0233,
"percent_delta": -0.0853,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3521,
"after": 0.25,
"delta": -0.1021,
"percent_delta": -0.29,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5468,
"after": 0.25,
"delta": -0.2968,
"percent_delta": -0.5428,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5468,
"after": 0.25,
"delta": -0.2968,
"percent_delta": -0.5428,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2733,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3521,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5468,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2733,
"delta": 0.0233,
"percent_delta": 0.093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3521,
"delta": 0.1021,
"percent_delta": 0.4086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5468,
"delta": 0.2968,
"percent_delta": 1.1873,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5468,
"delta": 0.2968,
"percent_delta": 1.1873,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.118,
"after": 0.0,
"delta": -0.118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.09,
"after": 3.0,
"delta": -1.09,
"percent_delta": -0.2665,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2733,
"delta": 0.0173,
"percent_delta": 0.0676,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.471,
"after": 1.0,
"delta": 0.529,
"percent_delta": 1.1231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 0.0,
"delta": -1.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.355,
"after": 0.3521,
"delta": -0.0029,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.824,
"after": 0.0,
"delta": -0.824,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.76,
"after": 0.0,
"delta": -0.76,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.535,
"after": 0.5468,
"delta": 0.0118,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.961,
"after": 0.0,
"delta": -0.961,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.471,
"after": 1.0,
"delta": 0.529,
"percent_delta": 1.1231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.09,
"after": 3.0,
"delta": -1.09,
"percent_delta": -0.2665,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.118 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.090 | - |
| predicted_AVG | 0.256 | - |
| predicted_BB | 0.471 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.290 | - |
| predicted_OBP | 0.355 | - |
| predicted_R | 0.824 | - |
| predicted_RBI | 0.760 | - |
| predicted_SLG | 0.535 | - |
| predicted_SO | 0.961 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | -0.008 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.907 | -0.183 |
| predicted_AVG | 0.272 | 0.016 |
| predicted_BB | 0.471 | 0.000 |
| predicted_H | 1.058 | 0.008 |
| predicted_HBP | 0.033 | - |
| predicted_HR | 0.311 | 0.021 |
| predicted_OBP | 0.362 | 0.007 |
| predicted_R | 0.783 | -0.041 |
| predicted_RBI | 0.763 | 0.003 |
| predicted_SLG | 0.563 | 0.028 |
| predicted_SO | 0.967 | 0.006 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.907 | 0.000 |
| predicted_AVG | 0.273 | 0.002 |
| predicted_BB | 0.476 | 0.005 |
| predicted_H | 1.068 | 0.009 |
| predicted_HBP | 0.033 | 0.000 |
| predicted_HR | 0.319 | 0.008 |
| predicted_OBP | 0.352 | -0.010 |
| predicted_R | 0.796 | 0.013 |
| predicted_RBI | 0.776 | 0.013 |
| predicted_SLG | 0.547 | -0.016 |
| predicted_SO | 0.957 | -0.010 |
AB rounded to 4 (raw=4.09), rates preserved: AVG=0.261 HR/AB=0.078
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.110 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.093 |
| predicted_AVG | 0.250 | -0.023 |
| predicted_BB | 0.000 | -0.476 |
| predicted_H | 1.000 | -0.068 |
| predicted_HR | 0.000 | -0.319 |
| predicted_OBP | 0.250 | -0.102 |
| predicted_R | 1.000 | 0.204 |
| predicted_RBI | 1.000 | 0.224 |
| predicted_SLG | 0.250 | -0.297 |
| predicted_SO | 1.000 | 0.043 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 4.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 3.000 | 5.000 | 0.2667 | 0.3684 | 0.6667 | 0.2667 | 0.1333 | 0.2667 | 0.2000 | 0.3333 |
| last_10 | 0.20 | 10 | - | 34.000 | 11.000 | 1.000 | 0.000 | 5.000 | 8.000 | 7.000 | 4.000 | 10.000 | 0.3235 | 0.3846 | 0.7941 | 0.3235 | 0.1471 | 0.2353 | 0.1177 | 0.2941 |
| season | 0.60 | 51 | - | 199.000 | 60.000 | 6.000 | 0.000 | 15.000 | 40.000 | 42.000 | 24.000 | 49.000 | 0.3015 | 0.3833 | 0.5578 | 0.3015 | 0.0754 | 0.2010 | 0.1206 | 0.2462 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0980 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.6500 |
| predicted_AVG | 0.2933 |
| predicted_BB | 0.4710 |
| predicted_H | 1.0700 |
| predicted_HBP | 0.0330 |
| predicted_HR | 0.3410 |
| predicted_OBP | 0.3727 |
| predicted_R | 0.7250 |
| predicted_RBI | 0.7680 |
| predicted_SLG | 0.6015 |
| predicted_SO | 0.9750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1180 | 0.0980 | 0.1097 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 4.0900 | 3.6500 | 3.9070 | model_form_blend |
| predicted_AVG | 0.2560 | 0.2933 | 0.2715 | model_form_blend |
| predicted_BB | 0.4710 | 0.4710 | 0.4710 | model_form_blend |
| predicted_H | 1.0500 | 1.0700 | 1.0583 | model_form_blend |
| predicted_HBP | - | 0.0330 | 0.0330 | form_only |
| predicted_HR | 0.2900 | 0.3410 | 0.3112 | model_form_blend |
| predicted_OBP | 0.3550 | 0.3727 | 0.3624 | model_form_blend |
| predicted_R | 0.8240 | 0.7250 | 0.7828 | model_form_blend |
| predicted_RBI | 0.7600 | 0.7680 | 0.7633 | model_form_blend |
| predicted_SLG | 0.5350 | 0.6015 | 0.5627 | model_form_blend |
| predicted_SO | 0.9610 | 0.9750 | 0.9668 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 219 |
| Season rows before report date | 219 |
| Report year | 2026 |
| Profile rows used | 51 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.302 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 686948 |
| playerID | 686948 |
| playerName | Drake Baldwin |
| pos | C |
| started | True |
| startingPosition | DH |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 21.7 |
| sl_bb_percent | 10.6 |
| sl_woba | 0.398 |
| sl_xwoba | 0.41 |
| sl_xba | 0.297 |
| sl_xslg | 0.58 |
| sl_sweet_spot_percent | 41.3 |
| sl_barrel_batted_rate | 18.7 |
| sl_hard_hit_percent | 52.7 |
| sl_exit_velocity_avg | 92.5 |
| sl_launch_angle_avg | 11.4 |
| sl_whiff_percent | 23.6 |
| sl_swing_percent | 50.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.138 | 1.000 | 0.000 | Hitting_2B | 0.140 | 0.000 | 0.860 | 1.000 |
| predicted_3B | 0.015 | 0.000 | 0.000 | Hitting_3B | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_AB | 2.831 | 4.000 | 3.000 | Hitting_AB | 3.140 | 3.000 | 0.860 | 1.000 |
| predicted_AVG | 0.242 | 0.500 | 0.333 | Hitting_AVG | 0.218 | 0.000 | 0.282 | 0.500 |
| predicted_BB | 0.292 | 0.000 | 0.000 | Hitting_BB | 0.339 | 1.000 | -0.339 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.650 | 2.000 | 1.000 | Hitting_H | 0.684 | 0.000 | 1.316 | 2.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_OBP | 0.300 | 0.500 | 0.333 | Hitting_OBP | 0.305 | 0.250 | 0.195 | 0.250 |
| predicted_R | 0.369 | 1.000 | 0.000 | Hitting_R | 0.462 | 0.000 | 0.538 | 1.000 |
| predicted_RBI | 0.300 | 1.000 | 0.000 | Hitting_RBI | 0.275 | 0.000 | 0.725 | 1.000 |
| predicted_SLG | 0.316 | 0.750 | 0.333 | Hitting_SLG | 0.320 | 0.000 | 0.430 | 0.750 |
| predicted_SO | 0.785 | 0.000 | 1.000 | Hitting_SO | 0.865 | 1.000 | -0.865 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 7 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_H: 0.6500 -> 2.0000 (boost 1.3500, better) |
| Biggest Deboost | predicted_SO: 0.7850 -> 0.0000 (deboost -0.7850, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 0 | 3 | predicted_SO: 0.7850 -> 0.8647 (boost 0.0797, worse) | predicted_AVG: 0.2420 -> 0.2256 (deboost -0.0164, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3009 -> 0.3314 (boost 0.0305, better) | predicted_AVG: 0.2256 -> 0.2201 (deboost -0.0055, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_H: 0.6324 -> 1.0000 (boost 0.3676, better) | predicted_BB: 0.3137 -> 0.0000 (deboost -0.3137, worse) | AB rounded to 3 (raw=2.87), rates preserved: AVG=0.220 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3323 -> 0.0000 (deboost -0.3323, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 2 | 0 | 2 | 0 | predicted_AVG: 0.2201 -> 0.3330 (boost 0.1129, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 5 | 1 | 6 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.3330 -> 0.2201 (deboost -0.1129, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "573262",
"player_name": "Mike Yastrzemski",
"position": "LF",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.138,
"predicted_3B": 0.015,
"predicted_AB": 2.831,
"predicted_AVG": 0.242,
"predicted_BB": 0.292,
"predicted_H": 0.65,
"predicted_HR": 0.07,
"predicted_OBP": 0.3,
"predicted_R": 0.369,
"predicted_RBI": 0.3,
"predicted_SLG": 0.316,
"predicted_SO": 0.785
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1194,
"predicted_3B": 0.0129,
"predicted_AB": 2.8735,
"predicted_AVG": 0.2256,
"predicted_BB": 0.3106,
"predicted_H": 0.6269,
"predicted_HBP": 0.046,
"predicted_HR": 0.0568,
"predicted_OBP": 0.2981,
"predicted_R": 0.3269,
"predicted_RBI": 0.2785,
"predicted_SLG": 0.3009,
"predicted_SO": 0.8647
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.138,
"after": 0.1194,
"delta": -0.0186,
"percent_delta": -0.1348,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0129,
"delta": -0.0021,
"percent_delta": -0.14,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.831,
"after": 2.8735,
"delta": 0.0425,
"percent_delta": 0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2256,
"delta": -0.0164,
"percent_delta": -0.0678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.292,
"after": 0.3106,
"delta": 0.0186,
"percent_delta": 0.0637,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 0.6269,
"delta": -0.0231,
"percent_delta": -0.0355,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0568,
"delta": -0.0132,
"percent_delta": -0.1886,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2981,
"delta": -0.0019,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.369,
"after": 0.3269,
"delta": -0.0421,
"percent_delta": -0.1141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 0.2785,
"delta": -0.0215,
"percent_delta": -0.0717,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.316,
"after": 0.3009,
"delta": -0.0151,
"percent_delta": -0.0478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.785,
"after": 0.8647,
"delta": 0.0797,
"percent_delta": 0.1015,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.785,
"after": 0.8647,
"delta": 0.0797,
"percent_delta": 0.1015,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2256,
"delta": -0.0164,
"percent_delta": -0.0678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 65
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1194,
"predicted_3B": 0.0129,
"predicted_AB": 2.8735,
"predicted_AVG": 0.2201,
"predicted_BB": 0.3137,
"predicted_H": 0.6324,
"predicted_HBP": 0.046,
"predicted_HR": 0.0583,
"predicted_OBP": 0.2969,
"predicted_R": 0.3323,
"predicted_RBI": 0.2831,
"predicted_SLG": 0.3314,
"predicted_SO": 0.8561
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1194,
"after": 0.1194,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0129,
"after": 0.0129,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8735,
"after": 2.8735,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2256,
"after": 0.2201,
"delta": -0.0055,
"percent_delta": -0.0244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3106,
"after": 0.3137,
"delta": 0.0031,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6269,
"after": 0.6324,
"delta": 0.0055,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.046,
"after": 0.046,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0568,
"after": 0.0583,
"delta": 0.0015,
"percent_delta": 0.0264,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2981,
"after": 0.2969,
"delta": -0.0012,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3269,
"after": 0.3323,
"delta": 0.0054,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2785,
"after": 0.2831,
"delta": 0.0046,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3009,
"after": 0.3314,
"delta": 0.0305,
"percent_delta": 0.1014,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8647,
"after": 0.8561,
"delta": -0.0086,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3009,
"after": 0.3314,
"delta": 0.0305,
"percent_delta": 0.1014,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2256,
"after": 0.2201,
"delta": -0.0055,
"percent_delta": -0.0244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.87), rates preserved: AVG=0.220 HR/AB=0.020",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1194,
"after": 0.0,
"delta": -0.1194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0129,
"after": 0.0,
"delta": -0.0129,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8735,
"after": 3.0,
"delta": 0.1265,
"percent_delta": 0.044,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3137,
"after": 0.0,
"delta": -0.3137,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6324,
"after": 1.0,
"delta": 0.3676,
"percent_delta": 0.5813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.046,
"after": 0.0,
"delta": -0.046,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0583,
"after": 0.0,
"delta": -0.0583,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2831,
"after": 0.0,
"delta": -0.2831,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8561,
"after": 1.0,
"delta": 0.1439,
"percent_delta": 0.1681,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6324,
"after": 1.0,
"delta": 0.3676,
"percent_delta": 0.5813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3137,
"after": 0.0,
"delta": -0.3137,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3323,
"after": 0.0,
"delta": -0.3323,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3323,
"after": 0.0,
"delta": -0.3323,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2201,
"after": 0.333,
"delta": 0.1129,
"percent_delta": 0.5129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2969,
"after": 0.333,
"delta": 0.0361,
"percent_delta": 0.1216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3314,
"after": 0.333,
"delta": 0.0016,
"percent_delta": 0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2201,
"after": 0.333,
"delta": 0.1129,
"percent_delta": 0.5129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2201,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2969,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3314,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2201,
"delta": -0.1129,
"percent_delta": -0.3391,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2969,
"delta": -0.0361,
"percent_delta": -0.1086,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3314,
"delta": -0.0016,
"percent_delta": -0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2201,
"delta": -0.1129,
"percent_delta": -0.3391,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.138,
"after": 1.0,
"delta": 0.862,
"percent_delta": 6.2464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0,
"delta": -0.015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.831,
"after": 4.0,
"delta": 1.169,
"percent_delta": 0.4129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2201,
"delta": -0.0219,
"percent_delta": -0.0905,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.292,
"after": 0.0,
"delta": -0.292,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2969,
"delta": -0.0031,
"percent_delta": -0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.369,
"after": 1.0,
"delta": 0.631,
"percent_delta": 1.71,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.316,
"after": 0.3314,
"delta": 0.0154,
"percent_delta": 0.0487,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.785,
"after": 0.0,
"delta": -0.785,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 7,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.785,
"after": 0.0,
"delta": -0.785,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.138 | - |
| predicted_3B | 0.015 | - |
| predicted_AB | 2.831 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.292 | - |
| predicted_H | 0.650 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.300 | - |
| predicted_R | 0.369 | - |
| predicted_RBI | 0.300 | - |
| predicted_SLG | 0.316 | - |
| predicted_SO | 0.785 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.119 | -0.019 |
| predicted_3B | 0.013 | -0.002 |
| predicted_AB | 2.873 | 0.042 |
| predicted_AVG | 0.226 | -0.016 |
| predicted_BB | 0.311 | 0.019 |
| predicted_H | 0.627 | -0.023 |
| predicted_HBP | 0.046 | - |
| predicted_HR | 0.057 | -0.013 |
| predicted_OBP | 0.298 | -0.002 |
| predicted_R | 0.327 | -0.042 |
| predicted_RBI | 0.279 | -0.021 |
| predicted_SLG | 0.301 | -0.015 |
| predicted_SO | 0.865 | 0.080 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.119 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 2.873 | 0.000 |
| predicted_AVG | 0.220 | -0.006 |
| predicted_BB | 0.314 | 0.003 |
| predicted_H | 0.632 | 0.005 |
| predicted_HBP | 0.046 | 0.000 |
| predicted_HR | 0.058 | 0.001 |
| predicted_OBP | 0.297 | -0.001 |
| predicted_R | 0.332 | 0.005 |
| predicted_RBI | 0.283 | 0.005 |
| predicted_SLG | 0.331 | 0.030 |
| predicted_SO | 0.856 | -0.009 |
AB rounded to 3 (raw=2.87), rates preserved: AVG=0.220 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.119 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 3.000 | 0.127 |
| predicted_AVG | 0.333 | 0.113 |
| predicted_BB | 0.000 | -0.314 |
| predicted_H | 1.000 | 0.368 |
| predicted_HR | 0.000 | -0.058 |
| predicted_OBP | 0.333 | 0.036 |
| predicted_R | 0.000 | -0.332 |
| predicted_RBI | 0.000 | -0.283 |
| predicted_SLG | 0.333 | 0.002 |
| predicted_SO | 1.000 | 0.144 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 2.000 | 7.000 | 0.1538 | 0.2667 | 0.1538 | 0.1538 | 0.0000 | 0.0769 | 0.1538 | 0.5385 |
| last_10 | 0.20 | 10 | - | 29.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 11.000 | 0.1379 | 0.2647 | 0.1379 | 0.1379 | 0.0000 | 0.0345 | 0.1379 | 0.3793 |
| season | 0.60 | 65 | - | 184.000 | 42.000 | 9.000 | 1.000 | 3.000 | 17.000 | 24.000 | 19.000 | 51.000 | 0.2283 | 0.3107 | 0.3370 | 0.2283 | 0.0163 | 0.0924 | 0.1033 | 0.2772 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0930 |
| predicted_3B | 0.0100 |
| predicted_AB | 2.9340 |
| predicted_AVG | 0.2023 |
| predicted_BB | 0.3370 |
| predicted_H | 0.5940 |
| predicted_HBP | 0.0460 |
| predicted_HR | 0.0380 |
| predicted_OBP | 0.2953 |
| predicted_R | 0.2670 |
| predicted_RBI | 0.2480 |
| predicted_SLG | 0.2795 |
| predicted_SO | 0.9780 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1380 | 0.0930 | 0.1194 | model_form_blend |
| predicted_3B | 0.0150 | 0.0100 | 0.0129 | model_form_blend |
| predicted_AB | 2.8310 | 2.9340 | 2.8735 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2023 | 0.2256 | model_form_blend |
| predicted_BB | 0.2920 | 0.3370 | 0.3106 | model_form_blend |
| predicted_H | 0.6500 | 0.5940 | 0.6269 | model_form_blend |
| predicted_HBP | - | 0.0460 | 0.0460 | form_only |
| predicted_HR | 0.0700 | 0.0380 | 0.0568 | model_form_blend |
| predicted_OBP | 0.3000 | 0.2953 | 0.2981 | model_form_blend |
| predicted_R | 0.3690 | 0.2670 | 0.3269 | model_form_blend |
| predicted_RBI | 0.3000 | 0.2480 | 0.2785 | model_form_blend |
| predicted_SLG | 0.3160 | 0.2795 | 0.3009 | model_form_blend |
| predicted_SO | 0.7850 | 0.9780 | 0.8647 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 171 |
| Season rows before report date | 171 |
| Report year | 2026 |
| Profile rows used | 65 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.228 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF-LF |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 573262 |
| playerID | 573262 |
| playerName | Mike Yastrzemski |
| pos | LF |
| started | True |
| startingPosition | RF |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.5 |
| sl_bb_percent | 9.6 |
| sl_woba | 0.298 |
| sl_xwoba | 0.287 |
| sl_xba | 0.225 |
| sl_xslg | 0.314 |
| sl_sweet_spot_percent | 30.1 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 41.4 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 15.9 |
| sl_whiff_percent | 24.8 |
| sl_swing_percent | 41.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.186 | 0.000 | 0.000 | Hitting_2B | 0.233 | 0.000 | -0.233 | 0.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.039 | 0.000 | -0.039 | 0.000 |
| predicted_AB | 3.657 | 3.000 | 4.000 | Hitting_AB | 3.806 | 4.000 | -0.806 | -1.000 |
| predicted_AVG | 0.252 | 0.333 | 0.250 | Hitting_AVG | 0.256 | 0.250 | 0.077 | 0.083 |
| predicted_BB | 0.271 | 1.000 | 0.000 | Hitting_BB | 0.267 | 1.000 | 0.733 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.039 | 0.000 | -0.039 | 0.000 |
| predicted_H | 0.850 | 1.000 | 1.000 | Hitting_H | 0.974 | 1.000 | 0.026 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.069 | 1.000 | -0.069 | -1.000 |
| predicted_OBP | 0.319 | 0.500 | 0.250 | Hitting_OBP | 0.311 | 0.400 | 0.189 | 0.100 |
| predicted_R | 0.414 | 1.000 | 0.000 | Hitting_R | 0.418 | 1.000 | 0.582 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.569 | 2.000 | -0.569 | -2.000 |
| predicted_SLG | 0.403 | 0.333 | 0.250 | Hitting_SLG | 0.392 | 1.000 | -0.059 | -0.667 |
| predicted_SO | 0.600 | 0.000 | 1.000 | Hitting_SO | 0.629 | 0.000 | -0.629 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_BB: 0.2710 -> 1.0000 (boost 0.7290, better) |
| Biggest Deboost | predicted_AB: 3.6570 -> 3.0000 (deboost -0.6570, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_H: 0.8500 -> 0.9027 (boost 0.0527, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3206 -> 0.3021 (deboost -0.0185, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 0.5644 -> 1.0000 (boost 0.4356, worse) | predicted_BB: 0.2716 -> 0.0000 (deboost -0.2716, worse) | AB rounded to 4 (raw=3.66), rates preserved: AVG=0.249 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3982 -> 0.0000 (deboost -0.3982, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4035 -> 0.2500 (deboost -0.1535, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 3 | 2 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4035 (boost 0.1535, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "643289",
"player_name": "Mauricio Dubón",
"position": "CF",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.186,
"predicted_3B": 0.029,
"predicted_AB": 3.657,
"predicted_AVG": 0.252,
"predicted_BB": 0.271,
"predicted_H": 0.85,
"predicted_HR": 0.11,
"predicted_OBP": 0.319,
"predicted_R": 0.414,
"predicted_RBI": 0.52,
"predicted_SLG": 0.403,
"predicted_SO": 0.6
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1569,
"predicted_3B": 0.0239,
"predicted_AB": 3.6418,
"predicted_AVG": 0.2593,
"predicted_BB": 0.2689,
"predicted_H": 0.9027,
"predicted_HBP": 0.019,
"predicted_HR": 0.1151,
"predicted_OBP": 0.3206,
"predicted_R": 0.3917,
"predicted_RBI": 0.5558,
"predicted_SLG": 0.4069,
"predicted_SO": 0.5701
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.1569,
"delta": -0.0291,
"percent_delta": -0.1565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0239,
"delta": -0.0051,
"percent_delta": -0.1759,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.657,
"after": 3.6418,
"delta": -0.0152,
"percent_delta": -0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2593,
"delta": 0.0073,
"percent_delta": 0.029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.271,
"after": 0.2689,
"delta": -0.0021,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 0.9027,
"delta": 0.0527,
"percent_delta": 0.062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1151,
"delta": 0.0051,
"percent_delta": 0.0464,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.3206,
"delta": 0.0016,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.414,
"after": 0.3917,
"delta": -0.0223,
"percent_delta": -0.0539,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.5558,
"delta": 0.0358,
"percent_delta": 0.0688,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4069,
"delta": 0.0039,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6,
"after": 0.5701,
"delta": -0.0299,
"percent_delta": -0.0498,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.85,
"after": 0.9027,
"delta": 0.0527,
"percent_delta": 0.062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1569,
"predicted_3B": 0.0239,
"predicted_AB": 3.6418,
"predicted_AVG": 0.2501,
"predicted_BB": 0.2716,
"predicted_H": 0.9106,
"predicted_HBP": 0.019,
"predicted_HR": 0.118,
"predicted_OBP": 0.3021,
"predicted_R": 0.3982,
"predicted_RBI": 0.565,
"predicted_SLG": 0.4035,
"predicted_SO": 0.5644
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1569,
"after": 0.1569,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0239,
"after": 0.0239,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6418,
"after": 3.6418,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2593,
"after": 0.2501,
"delta": -0.0092,
"percent_delta": -0.0355,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2689,
"after": 0.2716,
"delta": 0.0027,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9027,
"after": 0.9106,
"delta": 0.0079,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1151,
"after": 0.118,
"delta": 0.0029,
"percent_delta": 0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3206,
"after": 0.3021,
"delta": -0.0185,
"percent_delta": -0.0577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3917,
"after": 0.3982,
"delta": 0.0065,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5558,
"after": 0.565,
"delta": 0.0092,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4069,
"after": 0.4035,
"delta": -0.0034,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.5701,
"after": 0.5644,
"delta": -0.0057,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3206,
"after": 0.3021,
"delta": -0.0185,
"percent_delta": -0.0577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.66), rates preserved: AVG=0.249 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1569,
"after": 0.0,
"delta": -0.1569,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0239,
"after": 0.0,
"delta": -0.0239,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6418,
"after": 4.0,
"delta": 0.3582,
"percent_delta": 0.0984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2716,
"after": 0.0,
"delta": -0.2716,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9106,
"after": 1.0,
"delta": 0.0894,
"percent_delta": 0.0982,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.118,
"after": 0.0,
"delta": -0.118,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.565,
"after": 1.0,
"delta": 0.435,
"percent_delta": 0.7699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5644,
"after": 1.0,
"delta": 0.4356,
"percent_delta": 0.7718,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.5644,
"after": 1.0,
"delta": 0.4356,
"percent_delta": 0.7718,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2716,
"after": 0.0,
"delta": -0.2716,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3982,
"after": 0.0,
"delta": -0.3982,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3982,
"after": 0.0,
"delta": -0.3982,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2501,
"after": 0.25,
"delta": -0.0001,
"percent_delta": -0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3021,
"after": 0.25,
"delta": -0.0521,
"percent_delta": -0.1725,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4035,
"after": 0.25,
"delta": -0.1535,
"percent_delta": -0.3804,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4035,
"after": 0.25,
"delta": -0.1535,
"percent_delta": -0.3804,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2501,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3021,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4035,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2501,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3021,
"delta": 0.0521,
"percent_delta": 0.2084,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4035,
"delta": 0.1535,
"percent_delta": 0.614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4035,
"delta": 0.1535,
"percent_delta": 0.614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.0,
"delta": -0.186,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.657,
"after": 3.0,
"delta": -0.657,
"percent_delta": -0.1797,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2501,
"delta": -0.0019,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.271,
"after": 1.0,
"delta": 0.729,
"percent_delta": 2.69,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 1.0,
"delta": 0.15,
"percent_delta": 0.1765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.3021,
"delta": -0.0169,
"percent_delta": -0.053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.414,
"after": 1.0,
"delta": 0.586,
"percent_delta": 1.4155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4035,
"delta": 0.0005,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.271,
"after": 1.0,
"delta": 0.729,
"percent_delta": 2.69,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.657,
"after": 3.0,
"delta": -0.657,
"percent_delta": -0.1797,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.186 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.657 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.271 | - |
| predicted_H | 0.850 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.319 | - |
| predicted_R | 0.414 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.403 | - |
| predicted_SO | 0.600 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.157 | -0.029 |
| predicted_3B | 0.024 | -0.005 |
| predicted_AB | 3.642 | -0.015 |
| predicted_AVG | 0.259 | 0.007 |
| predicted_BB | 0.269 | -0.002 |
| predicted_H | 0.903 | 0.053 |
| predicted_HBP | 0.019 | - |
| predicted_HR | 0.115 | 0.005 |
| predicted_OBP | 0.321 | 0.002 |
| predicted_R | 0.392 | -0.022 |
| predicted_RBI | 0.556 | 0.036 |
| predicted_SLG | 0.407 | 0.004 |
| predicted_SO | 0.570 | -0.030 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.157 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 3.642 | 0.000 |
| predicted_AVG | 0.250 | -0.009 |
| predicted_BB | 0.272 | 0.003 |
| predicted_H | 0.911 | 0.008 |
| predicted_HBP | 0.019 | 0.000 |
| predicted_HR | 0.118 | 0.003 |
| predicted_OBP | 0.302 | -0.019 |
| predicted_R | 0.398 | 0.007 |
| predicted_RBI | 0.565 | 0.009 |
| predicted_SLG | 0.404 | -0.003 |
| predicted_SO | 0.564 | -0.006 |
AB rounded to 4 (raw=3.66), rates preserved: AVG=0.249 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.157 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 4.000 | 0.358 |
| predicted_AVG | 0.250 | -0.000 |
| predicted_BB | 0.000 | -0.272 |
| predicted_H | 1.000 | 0.089 |
| predicted_HR | 0.000 | -0.118 |
| predicted_OBP | 0.250 | -0.052 |
| predicted_R | 0.000 | -0.398 |
| predicted_RBI | 1.000 | 0.435 |
| predicted_SLG | 0.250 | -0.154 |
| predicted_SO | 1.000 | 0.436 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 5.000 | 0.000 | 0.000 | 1.000 | 4.000 | 1.000 | 1.000 | 1.000 | 0.2941 | 0.3333 | 0.4706 | 0.2941 | 0.0588 | 0.2353 | 0.0588 | 0.0588 |
| last_10 | 0.20 | 10 | - | 36.000 | 10.000 | 0.000 | 0.000 | 1.000 | 5.000 | 3.000 | 3.000 | 5.000 | 0.2778 | 0.3333 | 0.3611 | 0.2778 | 0.0278 | 0.1389 | 0.0833 | 0.1389 |
| season | 0.60 | 70 | - | 256.000 | 67.000 | 13.000 | 2.000 | 7.000 | 41.000 | 29.000 | 19.000 | 42.000 | 0.2617 | 0.3177 | 0.4102 | 0.2617 | 0.0273 | 0.1602 | 0.0742 | 0.1641 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1170 |
| predicted_3B | 0.0170 |
| predicted_AB | 3.6210 |
| predicted_AVG | 0.2694 |
| predicted_BB | 0.2660 |
| predicted_H | 0.9750 |
| predicted_HBP | 0.0190 |
| predicted_HR | 0.1220 |
| predicted_OBP | 0.3229 |
| predicted_R | 0.3610 |
| predicted_RBI | 0.6050 |
| predicted_SLG | 0.4122 |
| predicted_SO | 0.5290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1860 | 0.1170 | 0.1569 | model_form_blend |
| predicted_3B | 0.0290 | 0.0170 | 0.0239 | model_form_blend |
| predicted_AB | 3.6570 | 3.6210 | 3.6418 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2694 | 0.2593 | model_form_blend |
| predicted_BB | 0.2710 | 0.2660 | 0.2689 | model_form_blend |
| predicted_H | 0.8500 | 0.9750 | 0.9027 | model_form_blend |
| predicted_HBP | - | 0.0190 | 0.0190 | form_only |
| predicted_HR | 0.1100 | 0.1220 | 0.1151 | model_form_blend |
| predicted_OBP | 0.3190 | 0.3229 | 0.3206 | model_form_blend |
| predicted_R | 0.4140 | 0.3610 | 0.3917 | model_form_blend |
| predicted_RBI | 0.5200 | 0.6050 | 0.5558 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4122 | 0.4069 | model_form_blend |
| predicted_SO | 0.6000 | 0.5290 | 0.5701 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 232 |
| Season rows before report date | 232 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.262 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF-SS |
| gameID | 20260617_SF@ATL_2 |
| game_type | full |
| mlbID | 643289 |
| playerID | 643289 |
| playerName | Mauricio Dubón |
| pos | SS |
| started | True |
| startingPosition | CF |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 15.2 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.319 |
| sl_xwoba | 0.322 |
| sl_xba | 0.27 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 38.5 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 28.6 |
| sl_exit_velocity_avg | 86.6 |
| sl_launch_angle_avg | 15.8 |
| sl_whiff_percent | 17.1 |
| sl_swing_percent | 51.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.073 | 0.000 | 0.000 | Hitting_2B | 0.117 | 0.000 | -0.117 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_AB | 2.891 | 3.000 | 3.000 | Hitting_AB | 3.212 | 0.000 | -0.212 | 3.000 |
| predicted_AVG | 0.266 | 0.000 | 0.333 | Hitting_AVG | 0.325 | - | -0.325 | - |
| predicted_BB | 0.127 | 1.000 | 0.000 | Hitting_BB | 0.168 | 0.000 | 0.832 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.630 | 0.000 | 1.000 | Hitting_H | 1.044 | 0.000 | -1.044 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.124 | 0.000 | -0.124 | 0.000 |
| predicted_OBP | 0.290 | 0.250 | 0.333 | Hitting_OBP | 0.359 | 0.000 | -0.109 | 0.250 |
| predicted_R | 0.418 | 0.000 | 0.000 | Hitting_R | 0.526 | 0.000 | -0.526 | 0.000 |
| predicted_RBI | 0.400 | 0.000 | 0.000 | Hitting_RBI | 0.642 | 1.000 | -0.642 | -1.000 |
| predicted_SLG | 0.372 | 0.000 | 0.333 | Hitting_SLG | 0.482 | - | -0.482 | - |
| predicted_SO | 0.418 | 1.000 | 0.000 | Hitting_SO | 0.453 | 0.000 | 0.547 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.1270 -> 1.0000 (boost 0.8730, better) |
| Biggest Deboost | predicted_H: 0.6300 -> 0.0000 (deboost -0.6300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 2 | 2 | predicted_AB: 2.8910 -> 2.9860 (boost 0.0950, better) | predicted_AVG: 0.2660 -> 0.2561 (deboost -0.0099, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2561 -> 0.2300 (deboost -0.0261, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_H: 0.6868 -> 1.0000 (boost 0.3132, better) | predicted_RBI: 0.4495 -> 0.0000 (deboost -0.4495, worse) | AB rounded to 3 (raw=2.99), rates preserved: AVG=0.230 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4071 -> 0.0000 (deboost -0.4071, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2300 -> 0.3330 (boost 0.1030, better) | predicted_SLG: 0.3571 -> 0.3330 (deboost -0.0241, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3571 (boost 0.0241, better) | predicted_AVG: 0.3330 -> 0.2300 (deboost -0.1030, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "642086",
"player_name": "Dominic Smith",
"position": "RF",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.073,
"predicted_3B": 0.018,
"predicted_AB": 2.891,
"predicted_AVG": 0.266,
"predicted_BB": 0.127,
"predicted_H": 0.63,
"predicted_HR": 0.09,
"predicted_OBP": 0.29,
"predicted_R": 0.418,
"predicted_RBI": 0.4,
"predicted_SLG": 0.372,
"predicted_SO": 0.418
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0689,
"predicted_3B": 0.0156,
"predicted_AB": 2.986,
"predicted_AVG": 0.2561,
"predicted_BB": 0.1526,
"predicted_H": 0.6808,
"predicted_HBP": 0.014,
"predicted_HR": 0.0908,
"predicted_OBP": 0.2867,
"predicted_R": 0.4005,
"predicted_RBI": 0.4422,
"predicted_SLG": 0.3663,
"predicted_SO": 0.418
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.073,
"after": 0.0689,
"delta": -0.0041,
"percent_delta": -0.0562,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0156,
"delta": -0.0024,
"percent_delta": -0.1333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.891,
"after": 2.986,
"delta": 0.095,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2561,
"delta": -0.0099,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.127,
"after": 0.1526,
"delta": 0.0256,
"percent_delta": 0.2016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.63,
"after": 0.6808,
"delta": 0.0508,
"percent_delta": 0.0806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0908,
"delta": 0.0008,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2867,
"delta": -0.0033,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.418,
"after": 0.4005,
"delta": -0.0175,
"percent_delta": -0.0419,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.4422,
"delta": 0.0422,
"percent_delta": 0.1055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3663,
"delta": -0.0057,
"percent_delta": -0.0153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.418,
"after": 0.418,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.891,
"after": 2.986,
"delta": 0.095,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2561,
"delta": -0.0099,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 55
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0689,
"predicted_3B": 0.0156,
"predicted_AB": 2.986,
"predicted_AVG": 0.23,
"predicted_BB": 0.1541,
"predicted_H": 0.6868,
"predicted_HBP": 0.014,
"predicted_HR": 0.0931,
"predicted_OBP": 0.2678,
"predicted_R": 0.4071,
"predicted_RBI": 0.4495,
"predicted_SLG": 0.3571,
"predicted_SO": 0.4138
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0689,
"after": 0.0689,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0156,
"after": 0.0156,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.986,
"after": 2.986,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2561,
"after": 0.23,
"delta": -0.0261,
"percent_delta": -0.1019,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1526,
"after": 0.1541,
"delta": 0.0015,
"percent_delta": 0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6808,
"after": 0.6868,
"delta": 0.006,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.014,
"after": 0.014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0908,
"after": 0.0931,
"delta": 0.0023,
"percent_delta": 0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2867,
"after": 0.2678,
"delta": -0.0189,
"percent_delta": -0.0659,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4005,
"after": 0.4071,
"delta": 0.0066,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4422,
"after": 0.4495,
"delta": 0.0073,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3663,
"after": 0.3571,
"delta": -0.0092,
"percent_delta": -0.0251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.418,
"after": 0.4138,
"delta": -0.0042,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2561,
"after": 0.23,
"delta": -0.0261,
"percent_delta": -0.1019,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.99), rates preserved: AVG=0.230 HR/AB=0.031",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0689,
"after": 0.0,
"delta": -0.0689,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0156,
"after": 0.0,
"delta": -0.0156,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.986,
"after": 3.0,
"delta": 0.014,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1541,
"after": 0.0,
"delta": -0.1541,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6868,
"after": 1.0,
"delta": 0.3132,
"percent_delta": 0.456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0931,
"after": 0.0,
"delta": -0.0931,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4495,
"after": 0.0,
"delta": -0.4495,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4138,
"after": 0.0,
"delta": -0.4138,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6868,
"after": 1.0,
"delta": 0.3132,
"percent_delta": 0.456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4495,
"after": 0.0,
"delta": -0.4495,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4071,
"after": 0.0,
"delta": -0.4071,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4071,
"after": 0.0,
"delta": -0.4071,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.333,
"delta": 0.103,
"percent_delta": 0.4478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2678,
"after": 0.333,
"delta": 0.0652,
"percent_delta": 0.2435,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3571,
"after": 0.333,
"delta": -0.0241,
"percent_delta": -0.0675,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.333,
"delta": 0.103,
"percent_delta": 0.4478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3571,
"after": 0.333,
"delta": -0.0241,
"percent_delta": -0.0675,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.23,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2678,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3571,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.23,
"delta": -0.103,
"percent_delta": -0.3093,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2678,
"delta": -0.0652,
"percent_delta": -0.1958,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3571,
"delta": 0.0241,
"percent_delta": 0.0723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3571,
"delta": 0.0241,
"percent_delta": 0.0723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.23,
"delta": -0.103,
"percent_delta": -0.3093,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.073,
"after": 0.0,
"delta": -0.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.891,
"after": 3.0,
"delta": 0.109,
"percent_delta": 0.0377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.23,
"delta": -0.036,
"percent_delta": -0.1353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.127,
"after": 1.0,
"delta": 0.873,
"percent_delta": 6.874,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2678,
"delta": -0.0222,
"percent_delta": -0.0766,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.418,
"after": 0.0,
"delta": -0.418,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3571,
"delta": -0.0149,
"percent_delta": -0.0401,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.418,
"after": 1.0,
"delta": 0.582,
"percent_delta": 1.3923,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.127,
"after": 1.0,
"delta": 0.873,
"percent_delta": 6.874,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.073 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 2.891 | - |
| predicted_AVG | 0.266 | - |
| predicted_BB | 0.127 | - |
| predicted_H | 0.630 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.290 | - |
| predicted_R | 0.418 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 0.418 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | -0.004 |
| predicted_3B | 0.016 | -0.002 |
| predicted_AB | 2.986 | 0.095 |
| predicted_AVG | 0.256 | -0.010 |
| predicted_BB | 0.153 | 0.026 |
| predicted_H | 0.681 | 0.051 |
| predicted_HBP | 0.014 | - |
| predicted_HR | 0.091 | 0.001 |
| predicted_OBP | 0.287 | -0.003 |
| predicted_R | 0.401 | -0.017 |
| predicted_RBI | 0.442 | 0.042 |
| predicted_SLG | 0.366 | -0.006 |
| predicted_SO | 0.418 | 0.000 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | 0.000 |
| predicted_3B | 0.016 | 0.000 |
| predicted_AB | 2.986 | 0.000 |
| predicted_AVG | 0.230 | -0.026 |
| predicted_BB | 0.154 | 0.001 |
| predicted_H | 0.687 | 0.006 |
| predicted_HBP | 0.014 | 0.000 |
| predicted_HR | 0.093 | 0.002 |
| predicted_OBP | 0.268 | -0.019 |
| predicted_R | 0.407 | 0.007 |
| predicted_RBI | 0.450 | 0.007 |
| predicted_SLG | 0.357 | -0.009 |
| predicted_SO | 0.414 | -0.004 |
AB rounded to 3 (raw=2.99), rates preserved: AVG=0.230 HR/AB=0.031
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.069 |
| predicted_3B | 0.000 | -0.016 |
| predicted_AB | 3.000 | 0.014 |
| predicted_AVG | 0.333 | 0.103 |
| predicted_BB | 0.000 | -0.154 |
| predicted_H | 1.000 | 0.313 |
| predicted_HR | 0.000 | -0.093 |
| predicted_OBP | 0.333 | 0.065 |
| predicted_R | 0.000 | -0.407 |
| predicted_RBI | 0.000 | -0.450 |
| predicted_SLG | 0.333 | -0.024 |
| predicted_SO | 0.000 | -0.414 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 1.000 | 1.000 | 0.2000 | 0.2353 | 0.2000 | 0.2000 | 0.0000 | 0.1333 | 0.0667 | 0.0667 |
| last_10 | 0.20 | 10 | - | 33.000 | 5.000 | 0.000 | 0.000 | 1.000 | 5.000 | 3.000 | 3.000 | 3.000 | 0.1515 | 0.2105 | 0.2424 | 0.1515 | 0.0303 | 0.1515 | 0.0909 | 0.0909 |
| season | 0.60 | 55 | - | 159.000 | 45.000 | 4.000 | 1.000 | 6.000 | 29.000 | 23.000 | 7.000 | 23.000 | 0.2830 | 0.3118 | 0.4340 | 0.2830 | 0.0377 | 0.1824 | 0.0440 | 0.1447 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0630 |
| predicted_3B | 0.0120 |
| predicted_AB | 3.1250 |
| predicted_AVG | 0.2417 |
| predicted_BB | 0.1900 |
| predicted_H | 0.7550 |
| predicted_HBP | 0.0140 |
| predicted_HR | 0.0920 |
| predicted_OBP | 0.2818 |
| predicted_R | 0.3750 |
| predicted_RBI | 0.5040 |
| predicted_SLG | 0.3580 |
| predicted_SO | 0.4180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0730 | 0.0630 | 0.0689 | model_form_blend |
| predicted_3B | 0.0180 | 0.0120 | 0.0156 | model_form_blend |
| predicted_AB | 2.8910 | 3.1250 | 2.9860 | model_form_blend |
| predicted_AVG | 0.2660 | 0.2417 | 0.2561 | model_form_blend |
| predicted_BB | 0.1270 | 0.1900 | 0.1526 | model_form_blend |
| predicted_H | 0.6300 | 0.7550 | 0.6808 | model_form_blend |
| predicted_HBP | - | 0.0140 | 0.0140 | form_only |
| predicted_HR | 0.0900 | 0.0920 | 0.0908 | model_form_blend |
| predicted_OBP | 0.2900 | 0.2818 | 0.2867 | model_form_blend |
| predicted_R | 0.4180 | 0.3750 | 0.4005 | model_form_blend |
| predicted_RBI | 0.4000 | 0.5040 | 0.4422 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3580 | 0.3663 | model_form_blend |
| predicted_SO | 0.4180 | 0.4180 | 0.4180 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 137 |
| Season rows before report date | 137 |
| Report year | 2026 |
| Profile rows used | 55 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.283 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 1 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260617_SF@ATL_2 |
| game_type | ph |
| mlbID | 642086 |
| note | Hit a sacrifice fly for Mateo in the 6th. |
| playerID | 642086 |
| playerName | Dominic Smith |
| pos | DH |
| started | False |
| startingPosition | PH |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-17 |
| sl_k_percent | 13.1 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.326 |
| sl_xwoba | 0.339 |
| sl_xba | 0.284 |
| sl_xslg | 0.448 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 35.9 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 14.9 |
| sl_whiff_percent | 19.2 |
| sl_swing_percent | 52.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 1.400 | 1.000 | -1.400 | -1.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 1.333 | 1.000 | 1.667 | 2.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 2.933 | 4.000 | 3.067 | 2.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 4.040 | 5.100 | 1.160 | 0.100 |
| predicted_SO | 8.000 | 8.000 | 8.000 | Pitching_SO | 3.400 | 4.000 | 4.600 | 4.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 2 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 2 |
| Better Metrics | 1 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_ER: 4.0000 -> 3.0000 (deboost -1.0000, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 2 | 0 | 2 | 1 | 1 | - | predicted_ER: 4.0000 -> 3.0000 (deboost -1.0000, better) | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "527048",
"player_name": "Martín Pérez",
"position": "Starter",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 4.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.6667,
"predicted_SO": 8.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 3.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_SO": 8.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_ER",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 3.0,
"predicted_H": 6.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_R": 3.0,
"predicted_SO": 8.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.2,
"after": 5.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 8.0,
"after": 8.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_ER",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 4.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 8.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | 0.000 |
| predicted_ER | 3.000 | -1.000 |
| predicted_H | 6.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.200 | -0.467 |
| predicted_SO | 8.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 26.000 | 11.000 | 21.000 | 10.000 | 23.000 | 2.000 | 3.8077 | 1.1923 | 0.4231 | 0.8077 | 0.3846 | 0.8846 | 0.0769 |
| last_10 | 0.35 | 10 | 41.200 | 15.000 | 31.000 | 15.000 | 41.000 | 5.000 | 3.2400 | 1.1040 | 0.3600 | 0.7440 | 0.3600 | 0.9840 | 0.1200 |
| season | 0.20 | 14 | 62.000 | 20.000 | 44.000 | 21.000 | 51.000 | 6.000 | 2.9032 | 1.0484 | 0.3226 | 0.7097 | 0.3387 | 0.8226 | 0.0968 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8040 |
| predicted_ER | 2.0340 |
| predicted_ERA | 3.7124 |
| predicted_H | 4.0450 |
| predicted_HR | 0.5380 |
| predicted_IP | 5.0000 |
| predicted_SO | 4.5110 |
| predicted_WHIP | 1.1865 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 1.8040 | 0.9720 | model_form_blend |
| predicted_ER | 4.0000 | 2.0340 | 2.9407 | model_form_blend |
| predicted_ERA | - | 3.7124 | 3.7124 | form_only |
| predicted_H | 6.0000 | 4.0450 | 4.9466 | model_form_blend |
| predicted_HR | 1.0000 | 0.5380 | 0.7511 | model_form_blend |
| predicted_IP | 5.2000 | 5.0000 | 5.1000 | model_form_blend |
| predicted_SO | 8.0000 | 4.5110 | 6.1201 | model_form_blend |
| predicted_WHIP | - | 1.1865 | 1.1865 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 6 |
| R | 3 |
| ER | 3 |
| BB | 0 |
| SO | 8 |
| HR | 1 |
| BF | 23 |
| Pitches | 101 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 20 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.90 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 9 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.1 |
| Pitching_Pitches | 71 |
| Pitching_R | 1 |
| Pitching_SO | 4 |
| Pitching_Strikes | 43 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260613_ATL@NYM |
| game_type | full |
| mlbID | 527048 |
| playerID | 527048 |
| playerName | Martín Pérez |
| pos | P |
| started | True |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-13 |
| sl_k_percent | 20.8 |
| sl_bb_percent | 8.6 |
| sl_woba | 0.28 |
| sl_xwoba | 0.314 |
| sl_sweet_spot_percent | 36.3 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 38.0 |
| sl_whiff_percent | 22.5 |
| sl_swing_percent | 43.6 |
| sl_avg_best_speed | 77.038395714 |
| sl_avg_hyper_speed | 94.021039641 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.152 | 0.000 | 1.848 | 2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.121 | 0.000 | -0.121 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.455 | 1.000 | 0.545 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.861 | 0.200 | 0.139 | 0.800 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 1.212 | 1.000 | 1.788 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "669276",
"player_name": "Dylan Lee",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 3.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 0.000 | 1.000 | 2.000 | 6.000 | 0.000 | 0.0000 | 0.7500 | 0.0000 | 0.2500 | 0.5000 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.000 | 2.000 | 5.000 | 3.000 | 12.000 | 1.000 | 2.0000 | 0.8889 | 0.2222 | 0.5556 | 0.3333 | 1.3333 | 0.1111 |
| season | 0.20 | 33 | 31.200 | 4.000 | 15.000 | 5.000 | 40.000 | 1.000 | 1.1368 | 0.6316 | 0.1263 | 0.4737 | 0.1579 | 1.2632 | 0.0316 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3380 |
| predicted_ER | 0.2560 |
| predicted_ERA | 2.5133 |
| predicted_H | 0.6000 |
| predicted_HR | 0.0820 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0920 |
| predicted_WHIP | 1.0240 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.3380 | 1.2307 | model_form_blend |
| predicted_ER | 0.0000 | 0.2560 | 0.1185 | model_form_blend |
| predicted_ERA | - | 2.5133 | 2.5133 | form_only |
| predicted_H | 1.0000 | 0.6000 | 0.8149 | model_form_blend |
| predicted_HR | 0.0000 | 0.0820 | 0.0380 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 3.0000 | 1.0920 | 2.1168 | model_form_blend |
| predicted_WHIP | - | 1.0240 | 1.0240 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 33 |
| Season rows before report date | 33 |
| Report year | 2026 |
| Profile rows used | 33 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| SO | 3 |
| HR | 0 |
| BF | 6 |
| Pitches | 29 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.14 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 7 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260613_ATL@NYM |
| game_type | full |
| mlbID | 669276 |
| playerID | 669276 |
| playerName | Dylan Lee |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-13 |
| sl_k_percent | 34.8 |
| sl_bb_percent | 4.3 |
| sl_woba | 0.182 |
| sl_xwoba | 0.212 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 4.3 |
| sl_hard_hit_percent | 32.9 |
| sl_whiff_percent | 38.2 |
| sl_swing_percent | 53.8 |
| sl_avg_best_speed | 76.405903235 |
| sl_avg_hyper_speed | 92.915306029 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.227 | 1.000 | -0.227 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.136 | 0.000 | -0.136 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.818 | 1.000 | -0.818 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.018 | 1.000 | -0.018 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.227 | 1.000 | -0.227 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "628452",
"player_name": "Raisel Iglesias",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 1.000 | 6.000 | 2.000 | 6.000 | 1.000 | 1.5882 | 1.4118 | 0.1765 | 1.0588 | 0.3529 | 1.0588 | 0.1765 |
| last_10 | 0.35 | 10 | 10.200 | 3.000 | 12.000 | 3.000 | 12.000 | 1.000 | 2.5312 | 1.4062 | 0.2812 | 1.1250 | 0.2812 | 1.1250 | 0.0938 |
| season | 0.20 | 22 | 23.100 | 3.000 | 18.000 | 5.000 | 27.000 | 1.000 | 1.1571 | 0.9857 | 0.1286 | 0.7714 | 0.2143 | 1.1571 | 0.0429 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3330 |
| predicted_ER | 0.3580 |
| predicted_ERA | 3.2210 |
| predicted_H | 0.9980 |
| predicted_HR | 0.1340 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0170 |
| predicted_WHIP | 1.3311 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3330 | 0.1434 | model_form_blend |
| predicted_ER | 0.0000 | 0.3580 | 0.1542 | model_form_blend |
| predicted_ERA | - | 3.2210 | 3.2210 | form_only |
| predicted_H | 0.0000 | 0.9980 | 0.4299 | model_form_blend |
| predicted_HR | 0.0000 | 0.1340 | 0.0577 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0170 | 1.0073 | model_form_blend |
| predicted_WHIP | - | 1.3311 | 1.3311 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 22 |
| Season rows before report date | 22 |
| Report year | 2026 |
| Profile rows used | 22 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.16 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260613_ATL@NYM |
| game_type | full |
| mlbID | 628452 |
| playerID | 628452 |
| playerName | Raisel Iglesias |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-13 |
| sl_k_percent | 30.3 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.25 |
| sl_xwoba | 0.238 |
| sl_sweet_spot_percent | 26.3 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 29.8 |
| sl_whiff_percent | 32.6 |
| sl_swing_percent | 53.6 |
| sl_avg_best_speed | 77.402738929 |
| sl_avg_hyper_speed | 92.533713393 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.633 | 0.000 | 0.367 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.983 | 1.000 | 0.017 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.867 | 1.000 | 0.133 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663158",
"player_name": "Robert Suarez",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 3.000 | 0.000 | 4.000 | 0.000 | 0.0000 | 0.5625 | 0.0000 | 0.5625 | 0.0000 | 0.7500 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 1.000 | 6.000 | 0.000 | 7.000 | 1.000 | 0.8710 | 0.5806 | 0.0968 | 0.5806 | 0.0000 | 0.6774 | 0.0968 |
| season | 0.20 | 30 | 30.200 | 2.000 | 19.000 | 5.000 | 26.000 | 1.000 | 0.5870 | 0.7826 | 0.0652 | 0.6196 | 0.1630 | 0.8478 | 0.0326 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1820 |
| predicted_ER | 0.2520 |
| predicted_ERA | 2.2646 |
| predicted_H | 0.7580 |
| predicted_HR | 0.0880 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8310 |
| predicted_WHIP | 0.9395 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1820 | 0.0836 | model_form_blend |
| predicted_ER | 0.0000 | 0.2520 | 0.1158 | model_form_blend |
| predicted_ERA | - | 2.2646 | 2.2646 | form_only |
| predicted_H | 1.0000 | 0.7580 | 0.8888 | model_form_blend |
| predicted_HR | 0.0000 | 0.0880 | 0.0404 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8310 | 0.9223 | model_form_blend |
| predicted_WHIP | - | 0.9395 | 0.9395 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 30 |
| Season rows before report date | 30 |
| Report year | 2026 |
| Profile rows used | 30 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 4 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.59 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260613_ATL@NYM |
| game_type | full |
| mlbID | 663158 |
| playerID | 663158 |
| playerName | Robert Suarez |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-13 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 4.4 |
| sl_woba | 0.195 |
| sl_xwoba | 0.271 |
| sl_sweet_spot_percent | 32.9 |
| sl_barrel_batted_rate | 3.7 |
| sl_hard_hit_percent | 30.5 |
| sl_whiff_percent | 24.8 |
| sl_swing_percent | 54.3 |
| sl_avg_best_speed | 71.444455 |
| sl_avg_hyper_speed | 92.602231375 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.450 | 0.000 | -0.450 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.350 | 0.000 | 0.650 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.000 | 0.000 | 0.000 | 1.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 1.295 | 1.000 | -1.195 | -0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.650 | 3.000 | -0.650 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 2 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_ER: 0.0000 -> 1.0000 (boost 1.0000, worse) |
| Biggest Deboost | predicted_IP: 0.3333 -> 0.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_run_redistribution | 2 | 1 | 1 | 0 | 2 | predicted_ER: 0.0000 -> 1.0000 (boost 1.0000, worse) | predicted_IP: 0.3333 -> 0.1000 (deboost -0.2333, worse) | Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "800311",
"player_name": "Didier Fuentes",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.3333,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_run_redistribution",
"description": "Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent.",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.333 | - |
| predicted_SO | 1.000 | - |
Runs moved off a protected strong starter and assigned to bullpen exposure to keep team totals coherent.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | 0.000 |
| predicted_ER | 1.000 | 1.000 |
| predicted_H | 1.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 0.100 | -0.233 |
| predicted_SO | 1.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 4.000 | 0.000 | 6.000 | 0.000 | 0.0000 | 0.7500 | 0.0000 | 0.7500 | 0.0000 | 1.1250 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 1.000 | 9.000 | 2.000 | 11.000 | 0.000 | 0.9310 | 1.1379 | 0.1035 | 0.9310 | 0.2069 | 1.1379 | 0.0000 |
| season | 0.20 | 20 | 28.000 | 7.000 | 20.000 | 9.000 | 33.000 | 1.000 | 2.2500 | 1.0357 | 0.2500 | 0.7143 | 0.3214 | 1.1786 | 0.0357 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1750 |
| predicted_ER | 0.2030 |
| predicted_ERA | 2.5431 |
| predicted_H | 0.6370 |
| predicted_HR | 0.0520 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7510 |
| predicted_WHIP | 1.1296 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1750 | 0.0787 | model_form_blend |
| predicted_ER | 0.0000 | 0.2030 | 0.0913 | model_form_blend |
| predicted_ERA | - | 2.5431 | 2.5431 | form_only |
| predicted_H | 1.0000 | 0.6370 | 0.8367 | model_form_blend |
| predicted_HR | 0.0000 | 0.0520 | 0.0234 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7510 | 0.8880 | model_form_blend |
| predicted_WHIP | - | 1.1296 | 1.1296 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 20 |
| Season rows before report date | 20 |
| Report year | 2026 |
| Profile rows used | 20 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 2 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.25 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260613_ATL@NYM |
| game_type | full |
| mlbID | 800311 |
| playerID | 800311 |
| playerName | Didier Fuentes |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-13 |
| sl_k_percent | 29.2 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.25 |
| sl_xwoba | 0.263 |
| sl_sweet_spot_percent | 26.1 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 31.9 |
| sl_whiff_percent | 28.0 |
| sl_swing_percent | 49.6 |
| sl_avg_best_speed | 78.794589118 |
| sl_avg_hyper_speed | 93.06628209 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | STL 4 - 3 KC | STL | 0.547 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | STL 6 - 1 KC | STL | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.9000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5466 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 5.795 | 5.786 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 6 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 4 | 3 | 0.5466 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 4 | 3 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 4 | 3 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 6 | 1 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4031488833746898,
"base_low_score_probability": 0.4160463192721257,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": -0.012897435897435916,
"confidence": 0.6154999999999999,
"factors": {
"environmental": 0.969,
"pitcher_form": 1.0,
"team_form": 1.0,
"situational": 1.0,
"combined": 0.969
},
"prediction": "normal_scoring",
"expected_total_runs": 7,
"pre_simulation_expected_total_runs": 9.9,
"low_score_model_expected_total_runs": 9.9,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 174,
"near_bucket_sample_size": 174,
"medium_bucket_sample_size": 220,
"wide_bucket_sample_size": 229,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5805,
"bayesian_hit_rate": 0.5729,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.9062,
"confidence_cap": 0.78,
"raw_pick_probability": 0.52,
"calibrated_pick_probability": 0.5466,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "KC",
"games": 75,
"wins": 30,
"losses": 45,
"win_pct": 0.4,
"runs_scored": 301,
"runs_allowed": 352,
"run_differential": -51,
"run_differential_per_game": -0.68,
"available": true
},
"away": {
"team": "STL",
"games": 72,
"wins": 40,
"losses": 32,
"win_pct": 0.5555555555555556,
"runs_scored": 326,
"runs_allowed": 315,
"run_differential": 11,
"run_differential_per_game": 0.1527777777777778,
"available": true
},
"run_differential_edge_per_game": -0.8328,
"win_pct_edge": -0.1556,
"quality_edge": -1.0661,
"margin_adjustment": -0.4478,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.21,
"home_runs": 2.975,
"home_win_probability": 0.48
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "STL",
"guardrail_predicted_team": "STL",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "STL",
"output_opponent_team": "KC",
"final_score_winner": "STL",
"pre_simulation_winner": "STL",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "STL 4 - 3 KC",
"winner": "STL"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "STL 6 - 1 KC",
"winner": "STL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 2,
"home_run_delta": -2,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "KC",
"games": 75,
"wins": 30,
"losses": 45,
"win_pct": 0.4,
"runs_scored": 301,
"runs_allowed": 352,
"run_differential": -51,
"run_differential_per_game": -0.68,
"available": true
},
"away": {
"team": "STL",
"games": 72,
"wins": 40,
"losses": 32,
"win_pct": 0.5555555555555556,
"runs_scored": 326,
"runs_allowed": 315,
"run_differential": 11,
"run_differential_per_game": 0.1527777777777778,
"available": true
}
}
}{
"applied": false,
"raw_margin": -0.2353,
"final_margin": -0.2353,
"margin_cap": 2.0,
"season_quality_edge": 1.0661,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.524085,
"final_confidence": 0.524085,
"confidence_cap": 0.66,
"score_gap": 0.2353,
"calibration_sample_size": 174,
"calibration_empirical_hit_rate": 0.5805,
"calibration_bayesian_hit_rate": 0.5729,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.0661,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "STL 4 - 3 KC",
"winner": "STL"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "STL 6 - 1 KC",
"winner": "STL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 2,
"home_run_delta": -2,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 4,
"home_runs": 3,
"confidence": 0.546576,
"home_win_probability": 0.45342400000000005,
"away_win_probability": 0.546576,
"predicted_score_text": "STL 4 - 3 KC",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "STL",
"original_runs": 4,
"run_delta": 0.3038,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 33.0,
"quality": 0.3570963446438524,
"contact": 0.5879847236029635,
"power": 0.42000760300414425,
"discipline": 0.07358660295241323,
"xwoba": 0.3398787878787879,
"recent_xwoba": 0.3398787878787879,
"barrel": 8.00909090909091,
"ab_hard_contact": -0.10852326459244555,
"ab_bat_speed": 70.89874003553597,
"ab_strikeout_rate": 0.20505077051422863,
"available_players": 7,
"top_players": [
{
"player_id": "676475",
"player_name": "Alec Burleson",
"position": "1B",
"weight": 4.0,
"quality": 1.307394932543869,
"contact": 1.5037110813689576,
"power": 1.456846188404678,
"discipline": 0.3120108287217327,
"xwoba": 0.39,
"recent_xwoba": 0.39,
"barrel": 11.5,
"ab_hard_contact": 1.4454951966649892,
"ab_bat_speed": 71.2597854030501,
"ab_strikeout_rate": 0.15980392156862747,
"available": 1.0
},
{
"player_id": "691023",
"player_name": "Jordan Walker",
"position": "RF",
"weight": 4.0,
"quality": 1.1238904446019644,
"contact": 1.2768949399123755,
"power": 1.6604297076830754,
"discipline": -0.567078340279201,
"xwoba": 0.37,
"recent_xwoba": 0.37,
"barrel": 14.1,
"ab_hard_contact": 1.2036417727091187,
"ab_bat_speed": 77.65222766884531,
"ab_strikeout_rate": 0.25653594771241833,
"available": 1.0
},
{
"player_id": "802139",
"player_name": "JJ Wetherholt",
"position": "2B",
"weight": 4.0,
"quality": 0.5750139653300903,
"contact": 0.7429160935071464,
"power": 0.4422965262103176,
"discipline": 0.53434556261529,
"xwoba": 0.354,
"recent_xwoba": 0.354,
"barrel": 7.5,
"ab_hard_contact": 0.35983528611111343,
"ab_bat_speed": 70.76903297682709,
"ab_strikeout_rate": 0.18725490196078431,
"available": 1.0
},
{
"player_id": "671056",
"player_name": "Iván Herrera",
"position": "DH",
"weight": 4.0,
"quality": 0.6116828392584406,
"contact": 0.9015695312132312,
"power": 0.23485652304853735,
"discipline": 0.8795829820585921,
"xwoba": 0.369,
"recent_xwoba": 0.369,
"barrel": 7.0,
"ab_hard_contact": 1.1314161752564633,
"ab_bat_speed": 72.79067895299146,
"ab_strikeout_rate": 0.1825174825174825,
"available": 1.0
},
{
"player_id": "665877",
"player_name": "José Fermín",
"position": "CF",
"weight": 3.0,
"quality": -0.2649669669805066,
"contact": -0.7962614466422462,
"power": -1.2245828315765896,
"discipline": 0.37548141695702697,
"xwoba": 0.264,
"recent_xwoba": 0.264,
"barrel": 1.2,
"ab_hard_contact": -1.2748947267698985,
"ab_bat_speed": 65.39455555555556,
"ab_strikeout_rate": 0.19333333333333333,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "702070",
"player_name": "Noah Cameron",
"quality": -0.20405674534838358,
"contact": -0.3086105985234922,
"command": 0.05299999999999985,
"movement": -0.5782112579420529,
"xwoba": 0.32,
"whiff": 23.9,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "KC",
"original_runs": 3,
"run_delta": 0.4548,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 30.0,
"quality": 0.16624039223487783,
"contact": 0.12645704152830184,
"power": 0.24271981504558252,
"discipline": 0.01248222578958172,
"xwoba": 0.31670000000000004,
"recent_xwoba": 0.31670000000000004,
"barrel": 9.139999999999999,
"ab_hard_contact": 0.12972963424498005,
"ab_bat_speed": 71.52244992632572,
"ab_strikeout_rate": 0.23341347688173084,
"available_players": 9,
"top_players": [
{
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"position": "SS",
"weight": 4.0,
"quality": 1.3898873957075368,
"contact": 1.7059225749559086,
"power": 1.3960832807047787,
"discipline": 0.41155725469953125,
"xwoba": 0.387,
"recent_xwoba": 0.387,
"barrel": 11.8,
"ab_hard_contact": 1.640522756952706,
"ab_bat_speed": 72.66099828532236,
"ab_strikeout_rate": 0.1765432098765432,
"available": 1.0
},
{
"player_id": "695506",
"player_name": "Jac Caglianone",
"position": "1B",
"weight": 3.0,
"quality": 0.7263057692061335,
"contact": 0.980750115068152,
"power": 1.3636671178998407,
"discipline": -0.5600866102538575,
"xwoba": 0.356,
"recent_xwoba": 0.356,
"barrel": 14.2,
"ab_hard_contact": 0.49277092942537754,
"ab_bat_speed": 75.01769517330742,
"ab_strikeout_rate": 0.31411564625850336,
"available": 1.0
},
{
"player_id": "686555",
"player_name": "Isaac Collins",
"position": "LF",
"weight": 3.0,
"quality": -0.1778530199446606,
"contact": -0.24696597415547375,
"power": -0.47237876832982345,
"discipline": 0.3944576074332174,
"xwoba": 0.308,
"recent_xwoba": 0.308,
"barrel": 6.8,
"ab_hard_contact": -0.0711944142155232,
"ab_bat_speed": 71.07328395061728,
"ab_strikeout_rate": 0.27999999999999997,
"available": 1.0
},
{
"player_id": "521692",
"player_name": "Salvador Perez",
"position": "C",
"weight": 4.0,
"quality": -0.2426593623056289,
"contact": -0.4512410189865688,
"power": -0.08396955002636533,
"discipline": -0.5306660189404092,
"xwoba": 0.282,
"recent_xwoba": 0.282,
"barrel": 7.8,
"ab_hard_contact": -0.23062909576540688,
"ab_bat_speed": 70.49782451923078,
"ab_strikeout_rate": 0.21298076923076922,
"available": 1.0
},
{
"player_id": "695600",
"player_name": "Carter Jensen",
"position": "DH",
"weight": 4.0,
"quality": -0.250669003994217,
"contact": -0.5097082969823828,
"power": 0.05140174889282134,
"discipline": -0.4316478347436534,
"xwoba": 0.282,
"recent_xwoba": 0.282,
"barrel": 8.9,
"ab_hard_contact": -0.3504412126197644,
"ab_bat_speed": 72.7519387755102,
"ab_strikeout_rate": 0.3064625850340136,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "669461",
"player_name": "Matthew Liberatore",
"quality": -0.7153251454214273,
"contact": -1.2454630043774606,
"command": -0.156857142857143,
"movement": -0.29242507879834484,
"xwoba": 0.359,
"whiff": 22.5,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 4,
"home_runs": 3,
"predicted_score_text": "STL 4 - 3 KC",
"confidence": 0.546576,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": false,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "STL 4 - 3 KC",
"winner": "STL"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "STL 6 - 1 KC",
"winner": "STL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 2,
"home_run_delta": -2,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away STL | True | 1.0399 | 1.0399 | 1 | 9 | 0 |
| Home KC | True | 1.0209 | 1.0209 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Iván Herrera | 37 | 1.0619 | 0.8254 | neutral | 0.3690 | 0.2670 | 0.4210 | 7 | 41.70 | 89.60 | 7.20 | 19.70 | 15.30 | 12.80 | 0.0857 |
| LF | Nelson Velázquez | 248 | 1.0623 | 0.8302 | neutral | 0.4240 | 0.3240 | 0.6240 | 15.80 | 68.40 | 93.40 | 7.60 | 32.70 | 27.60 | 3.40 | 0.1143 |
| 2B | JJ Wetherholt | 12 | 1.0634 | 0.8456 | neutral | 0.3540 | 0.2560 | 0.4410 | 7.50 | 46 | 90.30 | 14.60 | 21.30 | 16.20 | 10.70 | 0.4000 |
| RF | Jordan Walker | 9 | 1.1051 | 1.4014 | neutral | 0.3700 | 0.2840 | 0.5210 | 14.10 | 52.70 | 94.70 | 13.10 | 30.80 | 25.20 | 6.90 | -0.2286 |
| SS | Masyn Winn | 154 | 0.9951 | -0.0654 | neutral | 0.3080 | 0.2590 | 0.3300 | 3.20 | 33.30 | 87.20 | 12.50 | 22.70 | 20 | 9.10 | 0.6000 |
| 3B | Blaze Jordan | 267 | 0.9901 | -0.1320 | negative_batter_regression | 0.2840 | 0.2270 | 0.3910 | 5.30 | 57.90 | 93.60 | 0.80 | 17.50 | 9.10 | 4.50 | -2 |
| 1B | Alec Burleson | 67 | 1.1252 | 1.6700 | neutral | 0.3900 | 0.2970 | 0.5580 | 11.50 | 47.70 | 91.60 | 12.10 | 20.80 | 15.40 | 8.40 | 0.8286 |
| CF | José Fermín | 418 | 0.9663 | -0.4487 | negative_batter_regression | 0.2640 | 0.2240 | 0.3020 | 1.20 | 31.70 | 85.80 | 18 | 14.10 | 15.70 | 7.40 | -1.2857 |
| C | Pedro Pagés | 369 | 0.9898 | -0.1356 | neutral | 0.2840 | 0.2320 | 0.3800 | 6.30 | 38.50 | 87 | 14.20 | 27.10 | 23.70 | 3.70 | 0.0857 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Jac Caglianone | 88 | 1.0767 | 1.0221 | neutral | 0.3560 | 0.2720 | 0.4730 | 14.20 | 56.80 | 93.40 | 8 | 31.30 | 29.80 | 8.50 | 0.4000 |
| CF | Lane Thomas | 237 | 1.0034 | 0.0454 | neutral | 0.3240 | 0.2290 | 0.3490 | 5.50 | 36.40 | 87 | 24.10 | 19.60 | 21.20 | 16.20 | -0.0857 |
| RF | Starling Marte | 443 | 1.0069 | 0.0917 | neutral | 0.3030 | 0.2380 | 0.3910 | 12.70 | 38.20 | 90.60 | 6 | 29.70 | 27.90 | 5.80 | 0.3143 |
| SS | Bobby Witt Jr. | 3 | 1.1297 | 1.7296 | positive_batter_regression | 0.3870 | 0.3090 | 0.5120 | 11.80 | 52.10 | 93.20 | 16.90 | 23.50 | 17 | 10.40 | 0.8857 |
| C | Salvador Perez | 559 | 0.9940 | -0.0803 | positive_batter_regression | 0.2820 | 0.2220 | 0.3780 | 7.80 | 39.90 | 88.50 | 17 | 25.30 | 19.20 | 4.10 | 0.9429 |
| DH | Carter Jensen | 220 | 0.9823 | -0.2365 | negative_batter_regression | 0.2820 | 0.2110 | 0.3530 | 8.90 | 43.40 | 90.80 | 19.90 | 30.80 | 28.20 | 9 | -0.8571 |
| 3B | Nick Loftin | 331 | 1.0013 | 0.0169 | neutral | 0.3210 | 0.2420 | 0.3500 | 5.40 | 33.30 | 86.90 | 12.70 | 15 | 12.50 | 12.50 | -0.1143 |
| LF | Isaac Collins | 528 | 0.9967 | -0.0437 | neutral | 0.3080 | 0.2260 | 0.3150 | 6.80 | 39.50 | 88.50 | 18.70 | 24.90 | 24.90 | 13.10 | 0.3143 |
| 2B | Michael Massey | 151 | 0.9973 | -0.0360 | negative_batter_regression | 0.2870 | 0.2270 | 0.4170 | 8.80 | 42.60 | 91.10 | 19.50 | 21.10 | 17.50 | 2.90 | -0.8571 |
{
"home": {
"applied": true,
"offense_factor": 1.0209,
"raw_average_factor": 1.0209,
"team_espn_average_rank": 284.44,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "1B",
"player_id": "695506",
"player_name": "Jac Caglianone",
"offense_factor": 1.0767,
"quality_score": 1.0221,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695506",
"espn_id": 4926296,
"player_name": "Jac Caglianone",
"team": "KC",
"role": "batter",
"espn_rank": 88,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 88,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 232.0,
"ab_rank": 117,
"r_value": 29.0,
"r_rank": 128,
"h_value": 62.0,
"h_rank": 89,
"avg_value": 0.2672413,
"avg_rank": 55.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 20.0,
"rbi_rank": 204,
"tb_value": 100.0,
"tb_rank": 607,
"bb_value": 22.0,
"bb_rank": 123,
"so_value": 77.0,
"so_rank": 25,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.3410852,
"obp_rank": "66",
"slg_value": 0.4310344,
"slg_rank": "72",
"ops_value": 0.7721196,
"ops_rank": 138.0,
"war_value": 1.39,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 178.0,
"k_percent": 29.8,
"bb_percent": 8.5,
"woba": 0.342,
"xwoba": 0.356,
"xba": 0.272,
"xslg": 0.473,
"sweet_spot_percent": 39.4,
"barrel_batted_rate": 14.2,
"hard_hit_percent": 56.8,
"exit_velocity_avg": 93.4,
"launch_angle_avg": 8.0,
"whiff_percent": 31.3,
"swing_percent": 49.8
},
"components": {
"expected_quality": 1.4039,
"regression_edge": 0.4,
"xwoba_edge": 1.4857,
"xba_edge": 0.9571,
"xslg_edge": 1.4429,
"barrel_edge": 1.6444,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 1.84,
"sweet_spot_edge": 1.0167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "657041",
"player_name": "Lane Thomas",
"offense_factor": 1.0034,
"quality_score": 0.0454,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657041",
"espn_id": 36409,
"player_name": "Lane Thomas",
"team": "KC",
"role": "batter",
"espn_rank": 237,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 237,
"gp_value": 60.0,
"gp_rank": 174,
"ab_value": 146.0,
"ab_rank": 245,
"r_value": 17.0,
"r_rank": 240,
"h_value": 33.0,
"h_rank": 246,
"avg_value": 0.2260273,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 5.0,
"hr_rank": 184,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 52.0,
"tb_rank": 1493,
"bb_value": 29.0,
"bb_rank": 61,
"so_value": 38.0,
"so_rank": 208,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.3575418,
"obp_rank": "-",
"slg_value": 0.3561643,
"slg_rank": "-",
"ops_value": 0.7137061,
"ops_rank": null,
"war_value": 0.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 113.0,
"k_percent": 21.2,
"bb_percent": 16.2,
"woba": 0.327,
"xwoba": 0.324,
"xba": 0.229,
"xslg": 0.349,
"sweet_spot_percent": 38.2,
"barrel_batted_rate": 5.5,
"hard_hit_percent": 36.4,
"exit_velocity_avg": 87.0,
"launch_angle_avg": 24.1,
"whiff_percent": 19.6,
"swing_percent": 39.8
},
"components": {
"expected_quality": 0.1168,
"regression_edge": -0.0857,
"xwoba_edge": 0.5714,
"xba_edge": -0.2714,
"xslg_edge": -0.3286,
"barrel_edge": -0.2889,
"hard_hit_edge": -0.3,
"exit_velocity_edge": -0.72,
"sweet_spot_edge": 0.8167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "516782",
"player_name": "Starling Marte",
"offense_factor": 1.0069,
"quality_score": 0.0917,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "516782",
"espn_id": 30830,
"player_name": "Starling Marte",
"team": "KC",
"role": "batter",
"espn_rank": 443,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 443,
"gp_value": 33.0,
"gp_rank": 338,
"ab_value": 78.0,
"ab_rank": 363,
"r_value": 6.0,
"r_rank": 398,
"h_value": 20.0,
"h_rank": 336,
"avg_value": 0.2564102,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 356,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 5.0,
"rbi_rank": 401,
"tb_value": 26.0,
"tb_rank": 2175,
"bb_value": 5.0,
"bb_rank": 382,
"so_value": 24.0,
"so_rank": 315,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3139534,
"obp_rank": "-",
"slg_value": 0.3333333,
"slg_rank": "-",
"ops_value": 0.6472867,
"ops_rank": null,
"war_value": -0.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 54.0,
"k_percent": 27.9,
"bb_percent": 5.8,
"woba": 0.292,
"xwoba": 0.303,
"xba": 0.238,
"xslg": 0.391,
"sweet_spot_percent": 30.9,
"barrel_batted_rate": 12.7,
"hard_hit_percent": 38.2,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 6.0,
"whiff_percent": 29.7,
"swing_percent": 50.2
},
"components": {
"expected_quality": 0.1857,
"regression_edge": 0.3143,
"xwoba_edge": -0.0286,
"xba_edge": -0.0143,
"xslg_edge": 0.2714,
"barrel_edge": 1.3111,
"hard_hit_edge": -0.0429,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"offense_factor": 1.1297,
"quality_score": 1.7296,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "677951",
"espn_id": 42403,
"player_name": "Bobby Witt Jr.",
"team": "KC",
"role": "batter",
"espn_rank": 3,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 3,
"gp_value": 75.0,
"gp_rank": 1,
"ab_value": 297.0,
"ab_rank": 4,
"r_value": 38.0,
"r_rank": 64,
"h_value": 86.0,
"h_rank": 4,
"avg_value": 0.2895622,
"avg_rank": 22.0,
"2b_value": 19.0,
"2b_rank": 4,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 30.0,
"rbi_rank": 113,
"tb_value": 134.0,
"tb_rank": 396,
"bb_value": 35.0,
"bb_rank": 37,
"so_value": 57.0,
"so_rank": 96,
"sb_value": 28.0,
"sb_rank": 1,
"obp_value": 0.3641791,
"obp_rank": "36",
"slg_value": 0.4511784,
"slg_rank": "55",
"ops_value": 0.8153575,
"ops_rank": 19.0,
"war_value": 4.17,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 238.0,
"k_percent": 17.0,
"bb_percent": 10.4,
"woba": 0.356,
"xwoba": 0.387,
"xba": 0.309,
"xslg": 0.512,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 52.1,
"exit_velocity_avg": 93.2,
"launch_angle_avg": 16.9,
"whiff_percent": 23.5,
"swing_percent": 47.5
},
"components": {
"expected_quality": 1.8669,
"regression_edge": 0.8857,
"xwoba_edge": 2.3714,
"xba_edge": 2.0143,
"xslg_edge": 2.0,
"barrel_edge": 1.1111,
"hard_hit_edge": 1.9429,
"exit_velocity_edge": 1.76,
"sweet_spot_edge": 0.85,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "521692",
"player_name": "Salvador Perez",
"offense_factor": 0.994,
"quality_score": -0.0803,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "521692",
"espn_id": 31127,
"player_name": "Salvador Perez",
"team": "KC",
"role": "batter",
"espn_rank": 559,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 559,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 270.0,
"ab_rank": 37,
"r_value": 25.0,
"r_rank": 167,
"h_value": 54.0,
"h_rank": 125,
"avg_value": 0.2,
"avg_rank": 156.0,
"2b_value": 6.0,
"2b_rank": 235,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 26.0,
"rbi_rank": 146,
"tb_value": 87.0,
"tb_rank": 1000,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 56.0,
"so_rank": 99,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.2439862,
"obp_rank": "163",
"slg_value": 0.3222222,
"slg_rank": "149",
"ops_value": 0.5662084,
"ops_rank": 312.0,
"war_value": -0.92,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 218.0,
"k_percent": 19.2,
"bb_percent": 4.1,
"woba": 0.249,
"xwoba": 0.282,
"xba": 0.222,
"xslg": 0.378,
"sweet_spot_percent": 31.7,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 39.9,
"exit_velocity_avg": 88.5,
"launch_angle_avg": 17.0,
"whiff_percent": 25.3,
"swing_percent": 57.7
},
"components": {
"expected_quality": -0.2477,
"regression_edge": 0.9429,
"xwoba_edge": -0.6286,
"xba_edge": -0.4714,
"xslg_edge": 0.0857,
"barrel_edge": 0.2222,
"hard_hit_edge": 0.2,
"exit_velocity_edge": -0.12,
"sweet_spot_edge": -0.2667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "695600",
"player_name": "Carter Jensen",
"offense_factor": 0.9823,
"quality_score": -0.2365,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "695600",
"espn_id": 4917812,
"player_name": "Carter Jensen",
"team": "KC",
"role": "batter",
"espn_rank": 220,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 220,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 226.0,
"ab_rank": 124,
"r_value": 31.0,
"r_rank": 109,
"h_value": 53.0,
"h_rank": 132,
"avg_value": 0.2345132,
"avg_rank": 116.0,
"2b_value": 14.0,
"2b_rank": 45,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 37.0,
"rbi_rank": 54,
"tb_value": 94.0,
"tb_rank": 817,
"bb_value": 23.0,
"bb_rank": 109,
"so_value": 72.0,
"so_rank": 42,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3019607,
"obp_rank": "131",
"slg_value": 0.4159292,
"slg_rank": "88",
"ops_value": 0.7178899,
"ops_rank": 219.0,
"war_value": 0.44,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 184.0,
"k_percent": 28.2,
"bb_percent": 9.0,
"woba": 0.312,
"xwoba": 0.282,
"xba": 0.211,
"xslg": 0.353,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 43.4,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 19.9,
"whiff_percent": 30.8,
"swing_percent": 44.8
},
"components": {
"expected_quality": -0.1893,
"regression_edge": -0.8571,
"xwoba_edge": -0.6286,
"xba_edge": -0.7857,
"xslg_edge": -0.2714,
"barrel_edge": 0.4667,
"hard_hit_edge": 0.7,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": -0.5167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "3B",
"player_id": "679845",
"player_name": "Nick Loftin",
"offense_factor": 1.0013,
"quality_score": 0.0169,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "679845",
"espn_id": 4314013,
"player_name": "Nick Loftin",
"team": "KC",
"role": "batter",
"espn_rank": 331,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 331,
"gp_value": 39.0,
"gp_rank": 314,
"ab_value": 105.0,
"ab_rank": 312,
"r_value": 14.0,
"r_rank": 287,
"h_value": 25.0,
"h_rank": 297,
"avg_value": 0.2380952,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 40.0,
"tb_rank": 1661,
"bb_value": 16.0,
"bb_rank": 193,
"so_value": 16.0,
"so_rank": 393,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3464566,
"obp_rank": "-",
"slg_value": 0.3809523,
"slg_rank": "-",
"ops_value": 0.7274089,
"ops_rank": null,
"war_value": 0.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 66.0,
"k_percent": 12.5,
"bb_percent": 12.5,
"woba": 0.325,
"xwoba": 0.321,
"xba": 0.242,
"xslg": 0.35,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 86.9,
"launch_angle_avg": 12.7,
"whiff_percent": 15.0,
"swing_percent": 39.5
},
"components": {
"expected_quality": 0.0622,
"regression_edge": -0.1143,
"xwoba_edge": 0.4857,
"xba_edge": 0.1,
"xslg_edge": -0.3143,
"barrel_edge": -0.3111,
"hard_hit_edge": -0.7429,
"exit_velocity_edge": -0.76,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "686555",
"player_name": "Isaac Collins",
"offense_factor": 0.9967,
"quality_score": -0.0437,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686555",
"espn_id": 42959,
"player_name": "Isaac Collins",
"team": "KC",
"role": "batter",
"espn_rank": 528,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 528,
"gp_value": 66.0,
"gp_rank": 132,
"ab_value": 203.0,
"ab_rank": 152,
"r_value": 25.0,
"r_rank": 167,
"h_value": 44.0,
"h_rank": 186,
"avg_value": 0.2167487,
"avg_rank": 146.0,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 20.0,
"rbi_rank": 204,
"tb_value": 61.0,
"tb_rank": 1491,
"bb_value": 32.0,
"bb_rank": 49,
"so_value": 61.0,
"so_rank": 78,
"sb_value": 3.0,
"sb_rank": 148,
"obp_value": 0.3347107,
"obp_rank": "82",
"slg_value": 0.3004926,
"slg_rank": "161",
"ops_value": 0.6352033,
"ops_rank": 243.0,
"war_value": -0.51,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 176.0,
"k_percent": 24.9,
"bb_percent": 13.1,
"woba": 0.297,
"xwoba": 0.308,
"xba": 0.226,
"xslg": 0.315,
"sweet_spot_percent": 32.0,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 39.5,
"exit_velocity_avg": 88.5,
"launch_angle_avg": 18.7,
"whiff_percent": 24.9,
"swing_percent": 39.2
},
"components": {
"expected_quality": -0.1147,
"regression_edge": 0.3143,
"xwoba_edge": 0.1143,
"xba_edge": -0.3571,
"xslg_edge": -0.8143,
"barrel_edge": 0.0,
"hard_hit_edge": 0.1429,
"exit_velocity_edge": -0.12,
"sweet_spot_edge": -0.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "686681",
"player_name": "Michael Massey",
"offense_factor": 0.9973,
"quality_score": -0.036,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "686681",
"espn_id": 4109223,
"player_name": "Michael Massey",
"team": "KC",
"role": "batter",
"espn_rank": 151,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 151,
"gp_value": 57.0,
"gp_rank": 195,
"ab_value": 161.0,
"ab_rank": 223,
"r_value": 20.0,
"r_rank": 213,
"h_value": 42.0,
"h_rank": 193,
"avg_value": 0.2608695,
"avg_rank": null,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 24.0,
"rbi_rank": 173,
"tb_value": 75.0,
"tb_rank": 1018,
"bb_value": 5.0,
"bb_rank": 382,
"so_value": 30.0,
"so_rank": 271,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2781065,
"obp_rank": "-",
"slg_value": 0.4658385,
"slg_rank": "-",
"ops_value": 0.743945,
"ops_rank": null,
"war_value": 0.88,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 113.0,
"k_percent": 17.5,
"bb_percent": 2.9,
"woba": 0.317,
"xwoba": 0.287,
"xba": 0.227,
"xslg": 0.417,
"sweet_spot_percent": 30.1,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 42.6,
"exit_velocity_avg": 91.1,
"launch_angle_avg": 19.5,
"whiff_percent": 21.1,
"swing_percent": 52.5
},
"components": {
"expected_quality": 0.058,
"regression_edge": -0.8571,
"xwoba_edge": -0.4857,
"xba_edge": -0.3286,
"xslg_edge": 0.6429,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.5857,
"exit_velocity_edge": 0.92,
"sweet_spot_edge": -0.5333,
"launch_angle_hr_bonus": 0.45
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0399,
"raw_average_factor": 1.0399,
"team_espn_average_rank": 175.67,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "671056",
"player_name": "Iván Herrera",
"offense_factor": 1.0619,
"quality_score": 0.8254,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671056",
"espn_id": 41889,
"player_name": "Ivan Herrera",
"team": "STL",
"role": "batter",
"espn_rank": 37,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 37,
"gp_value": 72.0,
"gp_rank": 37,
"ab_value": 264.0,
"ab_rank": 57,
"r_value": 48.0,
"r_rank": 13,
"h_value": 69.0,
"h_rank": 55,
"avg_value": 0.2613636,
"avg_rank": 63.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 9.0,
"hr_rank": 84,
"rbi_value": 31.0,
"rbi_rank": 104,
"tb_value": 111.0,
"tb_rank": 512,
"bb_value": 42.0,
"bb_rank": 15,
"so_value": 50.0,
"so_rank": 136,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3975535,
"obp_rank": "7",
"slg_value": 0.4204545,
"slg_rank": "83",
"ops_value": 0.818008,
"ops_rank": 76.0,
"war_value": 2.29,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 236.0,
"k_percent": 15.3,
"bb_percent": 12.8,
"woba": 0.366,
"xwoba": 0.369,
"xba": 0.267,
"xslg": 0.421,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 7.0,
"hard_hit_percent": 41.7,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 7.2,
"whiff_percent": 19.7,
"swing_percent": 43.0
},
"components": {
"expected_quality": 0.9458,
"regression_edge": 0.0857,
"xwoba_edge": 1.8571,
"xba_edge": 0.8143,
"xslg_edge": 0.7,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.4571,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": -0.3833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "676369",
"player_name": "Nelson Velázquez",
"offense_factor": 1.0623,
"quality_score": 0.8302,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676369",
"espn_id": 41047,
"player_name": "Nelson Velazquez",
"team": "STL",
"role": "batter",
"espn_rank": 248,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 248,
"gp_value": 11.0,
"gp_rank": 480,
"ab_value": 27.0,
"ab_rank": 476,
"r_value": 5.0,
"r_rank": 422,
"h_value": 9.0,
"h_rank": 421,
"avg_value": 0.3333333,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 6.0,
"rbi_rank": 383,
"tb_value": 16.0,
"tb_rank": 2142,
"bb_value": 1.0,
"bb_rank": 472,
"so_value": 8.0,
"so_rank": 460,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3793103,
"obp_rank": "-",
"slg_value": 0.5925925,
"slg_rank": "-",
"ops_value": 0.9719028,
"ops_rank": null,
"war_value": 0.3,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 27.6,
"bb_percent": 3.4,
"woba": 0.42,
"xwoba": 0.424,
"xba": 0.324,
"xslg": 0.624,
"sweet_spot_percent": 42.1,
"barrel_batted_rate": 15.8,
"hard_hit_percent": 68.4,
"exit_velocity_avg": 93.4,
"launch_angle_avg": 7.6,
"whiff_percent": 32.7,
"swing_percent": 48.5
},
"components": {
"expected_quality": 2.1266,
"regression_edge": 0.1143,
"xwoba_edge": 2.5,
"xba_edge": 2.4429,
"xslg_edge": 2.5,
"barrel_edge": 2.0,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 1.84,
"sweet_spot_edge": 1.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "802139",
"player_name": "JJ Wetherholt",
"offense_factor": 1.0634,
"quality_score": 0.8456,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "802139",
"espn_id": 4941056,
"player_name": "JJ Wetherholt",
"team": "STL",
"role": "batter",
"espn_rank": 12,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 12,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 263.0,
"ab_rank": 59,
"r_value": 45.0,
"r_rank": 26,
"h_value": 68.0,
"h_rank": 61,
"avg_value": 0.2585551,
"avg_rank": 67.0,
"2b_value": 7.0,
"2b_rank": 206,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 10.0,
"hr_rank": 69,
"rbi_value": 31.0,
"rbi_rank": 104,
"tb_value": 105.0,
"tb_rank": 862,
"bb_value": 33.0,
"bb_rank": 46,
"so_value": 50.0,
"so_rank": 136,
"sb_value": 8.0,
"sb_rank": 55,
"obp_value": 0.3603896,
"obp_rank": "41",
"slg_value": 0.3992395,
"slg_rank": "106",
"ops_value": 0.7596291,
"ops_rank": 147.0,
"war_value": 3.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 237.0,
"k_percent": 16.2,
"bb_percent": 10.7,
"woba": 0.34,
"xwoba": 0.354,
"xba": 0.256,
"xslg": 0.441,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 7.5,
"hard_hit_percent": 46.0,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 14.6,
"whiff_percent": 21.3,
"swing_percent": 43.7
},
"components": {
"expected_quality": 0.9182,
"regression_edge": 0.4,
"xwoba_edge": 1.4286,
"xba_edge": 0.5,
"xslg_edge": 0.9857,
"barrel_edge": 0.1556,
"hard_hit_edge": 1.0714,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "691023",
"player_name": "Jordan Walker",
"offense_factor": 1.1051,
"quality_score": 1.4014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691023",
"espn_id": 4684778,
"player_name": "Jordan Walker",
"team": "STL",
"role": "batter",
"espn_rank": 9,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 9,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 281.0,
"ab_rank": 22,
"r_value": 46.0,
"r_rank": 21,
"h_value": 81.0,
"h_rank": 8,
"avg_value": 0.2882562,
"avg_rank": 24.0,
"2b_value": 16.0,
"2b_rank": 17,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 18.0,
"hr_rank": 10,
"rbi_value": 56.0,
"rbi_rank": 2,
"tb_value": 151.0,
"tb_rank": 427,
"bb_value": 21.0,
"bb_rank": 138,
"so_value": 77.0,
"so_rank": 25,
"sb_value": 10.0,
"sb_rank": 37,
"obp_value": 0.3409836,
"obp_rank": "66",
"slg_value": 0.5373665,
"slg_rank": "14",
"ops_value": 0.8783501,
"ops_rank": 52.0,
"war_value": 3.35,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 223.0,
"k_percent": 25.2,
"bb_percent": 6.9,
"woba": 0.378,
"xwoba": 0.37,
"xba": 0.284,
"xslg": 0.521,
"sweet_spot_percent": 35.1,
"barrel_batted_rate": 14.1,
"hard_hit_percent": 52.7,
"exit_velocity_avg": 94.7,
"launch_angle_avg": 13.1,
"whiff_percent": 30.8,
"swing_percent": 52.3
},
"components": {
"expected_quality": 1.6668,
"regression_edge": -0.2286,
"xwoba_edge": 1.8857,
"xba_edge": 1.3,
"xslg_edge": 2.1286,
"barrel_edge": 1.6222,
"hard_hit_edge": 2.0286,
"exit_velocity_edge": 2.36,
"sweet_spot_edge": 0.3,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "691026",
"player_name": "Masyn Winn",
"offense_factor": 0.9951,
"quality_score": -0.0654,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691026",
"espn_id": 4683365,
"player_name": "Masyn Winn",
"team": "STL",
"role": "batter",
"espn_rank": 154,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 154,
"gp_value": 65.0,
"gp_rank": 144,
"ab_value": 239.0,
"ab_rank": 109,
"r_value": 27.0,
"r_rank": 147,
"h_value": 56.0,
"h_rank": 117,
"avg_value": 0.2343096,
"avg_rank": 121.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 26.0,
"rbi_rank": 146,
"tb_value": 75.0,
"tb_rank": 1208,
"bb_value": 25.0,
"bb_rank": 90,
"so_value": 55.0,
"so_rank": 106,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.3163636,
"obp_rank": "105",
"slg_value": 0.3138075,
"slg_rank": "156",
"ops_value": 0.6301711,
"ops_rank": 51.0,
"war_value": 0.86,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 197.0,
"k_percent": 20.0,
"bb_percent": 9.1,
"woba": 0.287,
"xwoba": 0.308,
"xba": 0.259,
"xslg": 0.33,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 3.2,
"hard_hit_percent": 33.3,
"exit_velocity_avg": 87.2,
"launch_angle_avg": 12.5,
"whiff_percent": 22.7,
"swing_percent": 41.6
},
"components": {
"expected_quality": -0.1826,
"regression_edge": 0.6,
"xwoba_edge": 0.1143,
"xba_edge": 0.5857,
"xslg_edge": -0.6,
"barrel_edge": -0.8,
"hard_hit_edge": -0.7429,
"exit_velocity_edge": -0.64,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "691458",
"player_name": "Blaze Jordan",
"offense_factor": 0.9901,
"quality_score": -0.132,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "691458",
"espn_id": 4722953,
"player_name": "Blaze Jordan",
"team": "STL",
"role": "batter",
"espn_rank": 267,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 267,
"gp_value": 6.0,
"gp_rank": 527,
"ab_value": 21.0,
"ab_rank": 496,
"r_value": 3.0,
"r_rank": 447,
"h_value": 6.0,
"h_rank": 457,
"avg_value": 0.2857142,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 430,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 5.0,
"rbi_rank": 401,
"tb_value": 12.0,
"tb_rank": 2126,
"bb_value": 1.0,
"bb_rank": 472,
"so_value": 2.0,
"so_rank": 534,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3181818,
"obp_rank": "-",
"slg_value": 0.5714285,
"slg_rank": "-",
"ops_value": 0.8896103,
"ops_rank": null,
"war_value": 0.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 9.1,
"bb_percent": 4.5,
"woba": 0.377,
"xwoba": 0.284,
"xba": 0.227,
"xslg": 0.391,
"sweet_spot_percent": 10.5,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 57.9,
"exit_velocity_avg": 93.6,
"launch_angle_avg": 0.8,
"whiff_percent": 17.5,
"swing_percent": 51.9
},
"components": {
"expected_quality": -0.0154,
"regression_edge": -2.0,
"xwoba_edge": -0.5714,
"xba_edge": -0.3286,
"xslg_edge": 0.2714,
"barrel_edge": -0.3333,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 1.92,
"sweet_spot_edge": -2.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "676475",
"player_name": "Alec Burleson",
"offense_factor": 1.1252,
"quality_score": 1.67,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676475",
"espn_id": 4345070,
"player_name": "Alec Burleson",
"team": "STL",
"role": "batter",
"espn_rank": 67,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 67,
"gp_value": 71.0,
"gp_rank": 49,
"ab_value": 281.0,
"ab_rank": 22,
"r_value": 39.0,
"r_rank": 57,
"h_value": 80.0,
"h_rank": 9,
"avg_value": 0.2846975,
"avg_rank": 26.0,
"2b_value": 18.0,
"2b_rank": 8,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 13.0,
"hr_rank": 39,
"rbi_value": 53.0,
"rbi_rank": 6,
"tb_value": 137.0,
"tb_rank": 522,
"bb_value": 26.0,
"bb_rank": 82,
"so_value": 48.0,
"so_rank": 146,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3472668,
"obp_rank": "58",
"slg_value": 0.4875444,
"slg_rank": "33",
"ops_value": 0.8348112,
"ops_rank": 25.0,
"war_value": 1.69,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 224.0,
"k_percent": 15.4,
"bb_percent": 8.4,
"woba": 0.361,
"xwoba": 0.39,
"xba": 0.297,
"xslg": 0.558,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 11.5,
"hard_hit_percent": 47.7,
"exit_velocity_avg": 91.6,
"launch_angle_avg": 12.1,
"whiff_percent": 20.8,
"swing_percent": 50.0
},
"components": {
"expected_quality": 1.8069,
"regression_edge": 0.8286,
"xwoba_edge": 2.4571,
"xba_edge": 1.6714,
"xslg_edge": 2.5,
"barrel_edge": 1.0444,
"hard_hit_edge": 1.3143,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "665877",
"player_name": "José Fermín",
"offense_factor": 0.9663,
"quality_score": -0.4487,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "665877",
"espn_id": 38851,
"player_name": "Jose Fermin",
"team": "STL",
"role": "batter",
"espn_rank": 418,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 418,
"gp_value": 41.0,
"gp_rank": 296,
"ab_value": 98.0,
"ab_rank": 325,
"r_value": 9.0,
"r_rank": 353,
"h_value": 26.0,
"h_rank": 288,
"avg_value": 0.2653061,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 12.0,
"rbi_rank": 292,
"tb_value": 37.0,
"tb_rank": 1838,
"bb_value": 8.0,
"bb_rank": 314,
"so_value": 17.0,
"so_rank": 383,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.317757,
"obp_rank": "-",
"slg_value": 0.377551,
"slg_rank": "-",
"ops_value": 0.695308,
"ops_rank": null,
"war_value": -0.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 68.0,
"k_percent": 15.7,
"bb_percent": 7.4,
"woba": 0.309,
"xwoba": 0.264,
"xba": 0.224,
"xslg": 0.302,
"sweet_spot_percent": 25.6,
"barrel_batted_rate": 1.2,
"hard_hit_percent": 31.7,
"exit_velocity_avg": 85.8,
"launch_angle_avg": 18.0,
"whiff_percent": 14.1,
"swing_percent": 38.9
},
"components": {
"expected_quality": -0.9501,
"regression_edge": -1.2857,
"xwoba_edge": -1.1429,
"xba_edge": -0.4143,
"xslg_edge": -1.0,
"barrel_edge": -1.2444,
"hard_hit_edge": -0.9714,
"exit_velocity_edge": -1.2,
"sweet_spot_edge": -1.2833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "686780",
"player_name": "Pedro Pagés",
"offense_factor": 0.9898,
"quality_score": -0.1356,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686780",
"espn_id": 42608,
"player_name": "Pedro Pages",
"team": "STL",
"role": "batter",
"espn_rank": 369,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 369,
"gp_value": 41.0,
"gp_rank": 296,
"ab_value": 123.0,
"ab_rank": 273,
"r_value": 12.0,
"r_rank": 310,
"h_value": 28.0,
"h_rank": 278,
"avg_value": 0.2276422,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 235,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 10.0,
"rbi_rank": 319,
"tb_value": 46.0,
"tb_rank": 1510,
"bb_value": 5.0,
"bb_rank": 382,
"so_value": 32.0,
"so_rank": 259,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.2671755,
"obp_rank": "-",
"slg_value": 0.3739837,
"slg_rank": "-",
"ops_value": 0.6411592,
"ops_rank": null,
"war_value": -0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 121.0,
"k_percent": 23.7,
"bb_percent": 3.7,
"woba": 0.281,
"xwoba": 0.284,
"xba": 0.232,
"xslg": 0.38,
"sweet_spot_percent": 32.3,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 38.5,
"exit_velocity_avg": 87.0,
"launch_angle_avg": 14.2,
"whiff_percent": 27.1,
"swing_percent": 50.6
},
"components": {
"expected_quality": -0.3007,
"regression_edge": 0.0857,
"xwoba_edge": -0.5714,
"xba_edge": -0.1857,
"xslg_edge": 0.1143,
"barrel_edge": -0.1111,
"hard_hit_edge": 0.0,
"exit_velocity_edge": -0.72,
"sweet_spot_edge": -0.1667,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away STL | True | 295 | -0.6734 | 0.9880 | 1.0572 | 0.9746 | 0.9921 | 1.1243 | neutral | 0.3590 | 0.3580 | 21.20 | 8.80 | 22.50 | 10.20 | 44.70 | |
| Home KC | True | 176 | -0.1385 | 0.9200 | 1.0118 | 0.9863 | 0.9374 | 1.0456 | neutral | 0.3200 | 0.3020 | 21.70 | 5.80 | 23.90 | 9.40 | 39.70 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away STL | True | None | 89 | 89.26 | 2297 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0264 | |
| Home KC | True | None | 90 | 86.89 | 2217 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1588 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0109 |
| home_runs_vs_away_pitcher | 1.0565 |
| home_pitcher_quality_edge | 0.5349 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "702070",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 230.0,
"k_percent": 21.7,
"bb_percent": 5.8,
"woba": 0.302,
"xwoba": 0.32,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 39.7,
"avg_best_speed": 77.521,
"avg_hyper_speed": 94.3712,
"whiff_percent": 23.9,
"swing_percent": 48.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1676,
"command_and_miss": 0.0286,
"regression_edge": -0.5143,
"xwoba_edge": -0.1429,
"barrel_edge": -0.4667,
"hard_hit_edge": -0.2,
"whiff_edge": -0.2571,
"bb_edge": 0.85,
"pitch_design_score": -0.1588
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "702070",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 90,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 90,
"pitch_usage": 0.0,
"release_speed": 86.89238376821358,
"release_spin_rate": 2216.5960244296075,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 90,
"pitch_usage": 0.0,
"release_speed": 86.89238376821358,
"release_spin_rate": 2216.5960244296075,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.8924,
"release_spin_rate": 2216.596,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1588,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1346,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.1385,
"sample_weight": 0.92,
"run_prevention_factor": 1.0118,
"strikeout_factor": 0.9863,
"walk_factor": 0.9374,
"homer_factor": 1.0456,
"woba_minus_xwoba": -0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702070",
"espn_id": 4417208,
"player_name": "Noah Cameron",
"team": "KC",
"role": "pitcher",
"espn_rank": 176,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 176,
"gp_value": 13.0,
"gp_rank": 329,
"gs_value": 13.0,
"gs_rank": 69,
"qs_value": 5.0,
"qs_rank": 51,
"era_value": 4.1142,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 70.0,
"ip_rank": 76,
"h_value": 68.0,
"h_rank": 64,
"er_value": 32.0,
"er_rank": 73,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 64.0,
"k_rank": 71,
"k_per_9_value": 8.228572,
"k_per_9_rank": 25,
"whip_value": 1.2142,
"whip_rank": null,
"war_value": 0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "669461",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 247.0,
"k_percent": 21.2,
"bb_percent": 8.8,
"woba": 0.358,
"xwoba": 0.359,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 10.2,
"hard_hit_percent": 44.7,
"avg_best_speed": 81.3665,
"avg_hyper_speed": 95.2442,
"whiff_percent": 22.5,
"swing_percent": 47.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.1045,
"command_and_miss": -0.2236,
"regression_edge": -0.0286,
"xwoba_edge": -1.2571,
"barrel_edge": -0.6444,
"hard_hit_edge": -0.9143,
"whiff_edge": -0.4571,
"bb_edge": 0.1,
"pitch_design_score": -0.0264
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669461",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 89,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 89,
"pitch_usage": 0.0,
"release_speed": 89.25733332288168,
"release_spin_rate": 2297.1598472172614,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 89,
"pitch_usage": 0.0,
"release_speed": 89.25733332288168,
"release_spin_rate": 2297.1598472172614,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.2573,
"release_spin_rate": 2297.1598,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0264,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1886,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.6734,
"sample_weight": 0.988,
"run_prevention_factor": 1.0572,
"strikeout_factor": 0.9746,
"walk_factor": 0.9921,
"homer_factor": 1.1243,
"woba_minus_xwoba": -0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669461",
"espn_id": 41173,
"player_name": "Matthew Liberatore",
"team": "STL",
"role": "pitcher",
"espn_rank": 295,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 295,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 3.0,
"qs_rank": 91,
"era_value": 4.7122,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 70.2,
"ip_rank": 72,
"h_value": 79.0,
"h_rank": 24,
"er_value": 37.0,
"er_rank": 40,
"hr_value": 14.0,
"hr_rank": 15,
"bb_value": 27.0,
"bb_rank": 42,
"k_value": 65.0,
"k_rank": 63,
"k_per_9_value": 8.278302,
"k_per_9_rank": 23,
"whip_value": 1.5,
"whip_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0109,
"home_runs_vs_away_pitcher": 1.0565,
"home_pitcher_quality_edge": 0.5349
},
"score_before": {
"away_runs": 2.9322,
"home_runs": 3.0065
},
"score_after": {
"away_runs": 2.964,
"home_runs": 3.1764,
"home_win_probability": 0.5277
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away STL | 10-51 | 0.164 | 1.10 | 2.70 | -94 | cold | strong | |
| Home KC | 13-52 | 0.200 | 1.10 | 3.90 | -181 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away STL | 40-32 | 0.556 | 11 | 0.153 | True |
| Home KC | 30-45 | 0.400 | -51 | -0.680 | True |
| Signal | - | - | -0.833 | -1.066 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target STL | - | - | 4 | - | - | - | - |
| Game target KC | - | - | 3 | - | - | - | - |
| Player finalized STL | 33 | 9 | 5 | 0 | 5 | 1 | 8 |
| Player finalized KC | 30 | 9 | 0 | 0 | 1 | 1 | 8 |
| Player model fractional STL | 32.23 | 8.04 | 4.58 | 1.24 | 4.52 | 2.63 | 6.23 |
| Player model fractional KC | 30.07 | 6.62 | 3.35 | 0.87 | 3.18 | 2.86 | 7.21 |
| Simulation box STL | 38 | 11 | 6 | 0 | 6 | 4 | 4 |
| Simulation box KC | 32 | 5 | 1 | 1 | 1 | 6 | 10 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away STL | Starter | Matthew Liberatore | 4.20 | 1 | 6 | 5 | 2 | 4.91 | 1.44 | True |
| Away STL | Middle Reliever | George Soriano | 1.10 | 0 | 1 | 0 | 2 | 3.47 | 1.19 | True |
| Away STL | Middle Reliever | JoJo Romero | 1 | 0 | 2 | 0 | 1 | 5.40 | 1.51 | True |
| Away STL | Middle Reliever | Riley O'Brien | 1 | 0 | 1 | 0 | 0 | 4.05 | 1.54 | True |
| Away STL | Middle Reliever | Ryne Stanek | 1 | 0 | 0 | 0 | 1 | 4.46 | 1.07 | True |
| Home KC | Starter | Noah Cameron | 5.20 | 5 | 3 | 7 | 2 | 3.62 | 1.10 | True |
| Home KC | Middle Reliever | Alex Lange | 1 | 0 | 1 | 1 | 0 | 3.58 | 1.39 | True |
| Home KC | Middle Reliever | Daniel Lynch IV | 1 | 0 | 0 | 1 | 2 | 5.16 | 1.26 | True |
| Home KC | Middle Reliever | Lucas Erceg | 1 | 0 | 0 | 0 | 0 | 4.21 | 1.53 | True |
| Home KC | Middle Reliever | Matt Strahm | 0.10 | 0 | 0 | 0 | 0 | 7.62 | 1.49 | True |
| Home KC | Middle Reliever | John Schreiber | 0 | 0 | 0 | 0 | 0 | 3.14 | 1.00 | True |
| Home KC | Reliever | Steven Cruz | 0 | 1 | 0 | 2 | 0 | 3.61 | 1.19 | - |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | STL | batter | SS | Masyn Winn | better | 9 | 5 | 4 | 6 | 3 | predicted_RBI | 2.5900 | boost | better |
| away | STL | batter | CF | José Fermín | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | 2.4870 | boost | better |
| away | STL | batter | LF | Nelson Velázquez | better | 11 | 6 | 5 | 7 | 4 | predicted_AB | 2.3900 | boost | better |
| away | STL | pitcher | Starter | Matthew Liberatore | worse | 2 | 1 | 1 | 0 | 2 | predicted_H | 2.0000 | boost | worse |
| away | STL | pitcher | Middle Reliever | Ryne Stanek | better | 1 | 0 | 1 | 1 | 0 | predicted_H | -2.0000 | deboost | better |
| home | KC | pitcher | Reliever | Steven Cruz | worse | 3 | 2 | 1 | 0 | 3 | predicted_H | 2.0000 | boost | worse |
| home | KC | batter | 1B | Jac Caglianone | worse | 11 | 3 | 8 | 2 | 9 | predicted_SO | 1.8680 | boost | worse |
| away | STL | batter | 2B | JJ Wetherholt | worse | 11 | 2 | 9 | 3 | 8 | predicted_BB | 1.5150 | boost | better |
| home | KC | batter | CF | Lane Thomas | better | 11 | 5 | 6 | 6 | 5 | predicted_BB | 1.5090 | boost | better |
| away | STL | batter | 3B | Blaze Jordan | worse | 11 | 3 | 8 | 2 | 9 | predicted_AB | 1.5000 | boost | better |
| home | KC | batter | RF | Starling Marte | worse | 10 | 2 | 8 | 1 | 9 | predicted_AB | 1.4000 | boost | better |
| home | KC | batter | C | Salvador Perez | worse | 11 | 1 | 10 | 0 | 11 | predicted_SO | 1.1910 | boost | worse |
| home | KC | batter | SS | Bobby Witt Jr. | worse | 11 | 3 | 8 | 2 | 9 | predicted_H | -1.1600 | deboost | worse |
| away | STL | batter | DH | Iván Herrera | better | 11 | 6 | 5 | 7 | 4 | predicted_H | 1.0300 | boost | better |
| away | STL | batter | 1B | Alec Burleson | better | 9 | 6 | 3 | 5 | 4 | predicted_H | 0.9800 | boost | better |
| home | KC | batter | LF | Isaac Collins | better | 11 | 5 | 6 | 6 | 5 | predicted_SO | -0.9520 | deboost | better |
| home | KC | batter | DH | Carter Jensen | worse | 9 | 2 | 7 | 1 | 8 | predicted_SO | 0.9240 | boost | worse |
| home | KC | batter | 2B | Michael Massey | worse | 10 | 2 | 8 | 1 | 9 | predicted_BB | 0.9070 | boost | better |
| away | STL | batter | C | Pedro Pagés | worse | 11 | 4 | 7 | 5 | 6 | predicted_2B | 0.8420 | boost | better |
| home | KC | batter | 3B | Nick Loftin | better | 10 | 5 | 5 | 6 | 4 | predicted_2B | 0.7300 | boost | better |
| away | STL | batter | RF | Jordan Walker | deboosted | 8 | 3 | 5 | 4 | 4 | predicted_BB | 0.7000 | boost | better |
| home | KC | pitcher | Starter | Noah Cameron | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | KC | pitcher | Middle Reliever | Matt Strahm | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| away | STL | pitcher | Middle Reliever | George Soriano | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | KC | pitcher | Middle Reliever | John Schreiber | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.1000 | deboost | worse |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Matthew Liberatore |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.6734 |
| ESPN Rank | 295 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0264 |
| Avg Velo | 89.2573 |
| Avg Spin | 2297.1598 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 4.2000 |
| Pre ER | 1 |
| Pre H | 5 |
| Pre BB | 2 |
| Pre SO | 6 |
| Season ERA | 4.7123 |
| Season WHIP | 1.5000 |
| Role Avg IP | 5.0480 |
| Recent Avg IP | 4.7330 |
| Last Start IP | 4.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"opponent": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"edges": {
"quality_edge": 0.3714,
"offense_edge": -0.0359,
"opponent_offense_edge": -0.1366,
"defense_strength": 0.1131,
"opponent_defense_weakness": 0.0432,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0237,
"run_prevention": 0.9483,
"strikeout": 1.0221
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669461",
"profile": {
"available": true,
"pitcher_id": "669461",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 247.0,
"k_percent": 21.2,
"bb_percent": 8.8,
"woba": 0.358,
"xwoba": 0.359,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 10.2,
"hard_hit_percent": 44.7,
"avg_best_speed": 81.3665,
"avg_hyper_speed": 95.2442,
"whiff_percent": 22.5,
"swing_percent": 47.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -1.1045,
"command_and_miss": -0.2236,
"regression_edge": -0.0286,
"xwoba_edge": -1.2571,
"barrel_edge": -0.6444,
"hard_hit_edge": -0.9143,
"whiff_edge": -0.4571,
"bb_edge": 0.1,
"pitch_design_score": -0.0264
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669461",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 89,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 89,
"pitch_usage": 0.0,
"release_speed": 89.25733332288168,
"release_spin_rate": 2297.1598472172614,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 89,
"pitch_usage": 0.0,
"release_speed": 89.25733332288168,
"release_spin_rate": 2297.1598472172614,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.2573,
"release_spin_rate": 2297.1598,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0264,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1886,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.6734,
"sample_weight": 0.988,
"run_prevention_factor": 1.0572,
"strikeout_factor": 0.9746,
"walk_factor": 0.9921,
"homer_factor": 1.1243,
"woba_minus_xwoba": -0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669461",
"espn_id": 41173,
"player_name": "Matthew Liberatore",
"team": "STL",
"role": "pitcher",
"espn_rank": 295,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 295,
"gp_value": 14.0,
"gp_rank": 279,
"gs_value": 14.0,
"gs_rank": 37,
"qs_value": 3.0,
"qs_rank": 91,
"era_value": 4.7122,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 70.2,
"ip_rank": 72,
"h_value": 79.0,
"h_rank": 24,
"er_value": 37.0,
"er_rank": 40,
"hr_value": 14.0,
"hr_rank": 15,
"bb_value": 27.0,
"bb_rank": 42,
"k_value": 65.0,
"k_rank": 63,
"k_per_9_value": 8.278302,
"k_per_9_rank": 23,
"whip_value": 1.5,
"whip_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0565,
"adjusted": 3
},
"predicted_H": {
"original": 6.0,
"factor": 1.0565,
"adjusted": 6
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9922,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.1228,
"adjusted": 1
},
"predicted_SO": {
"original": 6.0,
"factor": 0.9749,
"adjusted": 6
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 49.2,
"ER": 27,
"H": 54,
"BB": 19,
"SO": 53,
"HR": 9,
"ERA": 4.892617449664429,
"WHIP": 1.4697986577181206,
"K9": 9.604026845637582,
"HR9": 1.6308724832214763,
"games_pitched": 10,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "669461",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 89,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 89,
"pitch_usage": 0.0,
"release_speed": 89.25733332288168,
"release_spin_rate": 2297.1598472172614,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 89,
"pitch_usage": 0.0,
"release_speed": 89.25733332288168,
"release_spin_rate": 2297.1598472172614,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.2573,
"release_spin_rate": 2297.1598,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0264,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1886,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"role": "pitcher",
"player_id": "669461",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 14,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 23.2,
"ER": 14.0,
"R": 16.0,
"H": 26.0,
"BB": 9.0,
"SO": 31.0,
"HR": 5.0,
"BF": 104.0,
"Pitches": 417.0
},
"per_game": {
"IP": 4.2,
"ER": 2.8,
"R": 3.2,
"H": 5.2,
"BB": 1.8,
"SO": 6.2,
"HR": 1.0,
"BF": 20.8,
"Pitches": 83.4
},
"rates": {
"ERA": 5.3239,
"WHIP": 1.4789,
"ER_per_IP": 0.59155,
"H_per_IP": 1.09859,
"BB_per_IP": 0.38028,
"SO_per_IP": 1.30986,
"HR_per_IP": 0.21127
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 49.2,
"ER": 27.0,
"R": 29.0,
"H": 54.0,
"BB": 19.0,
"SO": 53.0,
"HR": 9.0,
"BF": 213.0,
"Pitches": 829.0
},
"per_game": {
"IP": 5.0,
"ER": 2.7,
"R": 2.9,
"H": 5.4,
"BB": 1.9,
"SO": 5.3,
"HR": 0.9,
"BF": 21.3,
"Pitches": 82.9
},
"rates": {
"ERA": 4.8926,
"WHIP": 1.4698,
"ER_per_IP": 0.54362,
"H_per_IP": 1.08725,
"BB_per_IP": 0.38255,
"SO_per_IP": 1.06711,
"HR_per_IP": 0.18121
}
},
"season": {
"games": 14,
"totals": {
"IP": 70.2,
"ER": 37.0,
"R": 39.0,
"H": 79.0,
"BB": 27.0,
"SO": 65.0,
"HR": 14.0,
"BF": 307.0,
"Pitches": 1180.0
},
"per_game": {
"IP": 5.0,
"ER": 2.6429,
"R": 2.7857,
"H": 5.6429,
"BB": 1.9286,
"SO": 4.6429,
"HR": 1.0,
"BF": 21.9286,
"Pitches": 84.2857
},
"rates": {
"ERA": 4.7123,
"WHIP": 1.5,
"ER_per_IP": 0.52358,
"H_per_IP": 1.11792,
"BB_per_IP": 0.38208,
"SO_per_IP": 0.91981,
"HR_per_IP": 0.19811
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 2.666,
"predicted_H": 5.211,
"predicted_BB": 1.842,
"predicted_SO": 5.338,
"predicted_HR": 0.902,
"predicted_ERA": 4.9079,
"predicted_WHIP": 1.4424
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4612,
"form_weight": 0.5388,
"form_reliability": 0.7368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 14.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7368,
"prior_weight": 0.2632
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 5.0,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.666,
"final": 1.8976,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 5.211,
"final": 4.1913,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.842,
"final": 1.9149,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 5.338,
"final": 5.6433,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.902,
"final": 0.9472,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.9079,
"final": 4.9079,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4424,
"final": 1.4424,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | George Soriano |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0558 |
| ESPN Rank | 172 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 2 |
| Pre SO | 1 |
| Season ERA | 2.9670 |
| Season WHIP | 1.1209 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"opponent": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"edges": {
"quality_edge": 0.3714,
"offense_edge": -0.0359,
"opponent_offense_edge": -0.1366,
"defense_strength": 0.1131,
"opponent_defense_weakness": 0.0432,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0237,
"run_prevention": 0.9483,
"strikeout": 1.0221
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "666277",
"profile": {
"available": true,
"pitcher_id": "666277",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 89.0,
"k_percent": 21.6,
"bb_percent": 8.0,
"woba": 0.285,
"xwoba": 0.325,
"sweet_spot_percent": 26.4,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 42.5,
"avg_best_speed": 80.8864,
"avg_hyper_speed": 94.9046,
"whiff_percent": 32.5,
"swing_percent": 49.4
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1762,
"command_and_miss": 0.3421,
"regression_edge": -1.1429,
"xwoba_edge": -0.2857,
"barrel_edge": -0.6667,
"hard_hit_edge": -0.6,
"whiff_edge": 0.9714,
"bb_edge": 0.3,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "666277",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.0558,
"sample_weight": 0.45,
"run_prevention_factor": 1.0047,
"strikeout_factor": 1.0152,
"walk_factor": 0.9892,
"homer_factor": 1.0387,
"woba_minus_xwoba": -0.04,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "666277",
"espn_id": 4917836,
"player_name": "George Soriano",
"team": "STL",
"role": "pitcher",
"espn_rank": 172,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 172,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.967,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 9.0,
"hld_rank": 31,
"ip_value": 30.1,
"ip_rank": 246,
"h_value": 24.0,
"h_rank": 276,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 10.0,
"bb_rank": 303,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 8.010989,
"k_per_9_rank": 30,
"whip_value": 1.1208,
"whip_rank": null,
"war_value": 0.59,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0021,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0021,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9951,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0174,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0068,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 2,
"H": 9,
"BB": 0,
"SO": 11,
"HR": 1,
"ERA": 1.6874999999999998,
"WHIP": 0.8437499999999999,
"K9": 9.281249999999998,
"HR9": 0.8437499999999999,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "666277",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.024,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5464,
"prior_weight": 0.4536
},
"role": "pitcher",
"player_id": "666277",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 0.0,
"SO": 5.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 79.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.4,
"BB": 0.0,
"SO": 1.0,
"HR": 0.2,
"BF": 4.8,
"Pitches": 15.8
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.2353,
"ER_per_IP": 0.35294,
"H_per_IP": 1.23529,
"BB_per_IP": 0.0,
"SO_per_IP": 0.88235,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 2.0,
"R": 2.0,
"H": 9.0,
"BB": 0.0,
"SO": 11.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 138.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.9,
"BB": 0.0,
"SO": 1.1,
"HR": 0.1,
"BF": 4.1,
"Pitches": 13.8
},
"rates": {
"ERA": 1.6875,
"WHIP": 0.8438,
"ER_per_IP": 0.1875,
"H_per_IP": 0.84375,
"BB_per_IP": 0.0,
"SO_per_IP": 1.03125,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 31,
"totals": {
"IP": 30.1,
"ER": 10.0,
"R": 11.0,
"H": 24.0,
"BB": 10.0,
"SO": 27.0,
"HR": 4.0,
"BF": 125.0,
"Pitches": 468.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3226,
"R": 0.3548,
"H": 0.7742,
"BB": 0.3226,
"SO": 0.871,
"HR": 0.129,
"BF": 4.0323,
"Pitches": 15.0968
},
"rates": {
"ERA": 2.967,
"WHIP": 1.1209,
"ER_per_IP": 0.32967,
"H_per_IP": 0.79121,
"BB_per_IP": 0.32967,
"SO_per_IP": 0.89011,
"HR_per_IP": 0.13187
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.386,
"predicted_H": 0.993,
"predicted_BB": 0.201,
"predicted_SO": 0.937,
"predicted_HR": 0.142,
"predicted_ERA": 3.4729,
"predicted_WHIP": 1.1941
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5416,
"form_weight": 0.4584,
"form_reliability": 0.5464,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.024,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5464,
"prior_weight": 0.4536
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.386,
"final": 0.1769,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.993,
"final": 0.4551,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.201,
"final": 1.1754,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.937,
"final": 0.9711,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.142,
"final": 0.0651,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4729,
"final": 3.4729,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1941,
"final": 1.1941,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | JoJo Romero |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2072 |
| ESPN Rank | 237 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 2 |
| Season ERA | 3.9375 |
| Season WHIP | 1.3125 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"opponent": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"edges": {
"quality_edge": 0.3714,
"offense_edge": -0.0359,
"opponent_offense_edge": -0.1366,
"defense_strength": 0.1131,
"opponent_defense_weakness": 0.0432,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0237,
"run_prevention": 0.9483,
"strikeout": 1.0221
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668941",
"profile": {
"available": true,
"pitcher_id": "668941",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 103.0,
"k_percent": 23.4,
"bb_percent": 8.8,
"woba": 0.325,
"xwoba": 0.344,
"sweet_spot_percent": 37.8,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 46.7,
"avg_best_speed": 82.264,
"avg_hyper_speed": 96.3183,
"whiff_percent": 23.1,
"swing_percent": 38.8
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.7011,
"command_and_miss": -0.0521,
"regression_edge": -0.5429,
"xwoba_edge": -0.8286,
"barrel_edge": 0.1333,
"hard_hit_edge": -1.2,
"whiff_edge": -0.3714,
"bb_edge": 0.1,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "668941",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.2072,
"sample_weight": 0.45,
"run_prevention_factor": 1.0176,
"strikeout_factor": 0.9956,
"walk_factor": 0.9964,
"homer_factor": 1.028,
"woba_minus_xwoba": -0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668941",
"espn_id": 40456,
"player_name": "JoJo Romero",
"team": "STL",
"role": "pitcher",
"espn_rank": 237,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 237,
"gp_value": 33.0,
"gp_rank": 22,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.9375,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 17.0,
"hld_rank": 1,
"ip_value": 32.0,
"ip_rank": 220,
"h_value": 30.0,
"h_rank": 211,
"er_value": 14.0,
"er_rank": 225,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 12.0,
"bb_rank": 246,
"k_value": 32.0,
"k_rank": 222,
"k_per_9_value": 9.0,
"k_per_9_rank": 27,
"whip_value": 1.3125,
"whip_rank": null,
"war_value": 0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0079,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0079,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9984,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0126,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.998,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.1,
"ER": 6,
"H": 11,
"BB": 3,
"SO": 11,
"HR": 1,
"ERA": 6.480000000000001,
"WHIP": 1.6800000000000002,
"K9": 11.880000000000003,
"HR9": 1.08,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-14T00:00:00"
}{
"available": false,
"pitcher_id": "668941",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.355,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5597,
"prior_weight": 0.4403
},
"role": "pitcher",
"player_id": "668941",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 33,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 3.0,
"R": 3.0,
"H": 6.0,
"BB": 1.0,
"SO": 4.0,
"HR": 1.0,
"BF": 19.0,
"Pitches": 68.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 1.2,
"BB": 0.2,
"SO": 0.8,
"HR": 0.2,
"BF": 3.8,
"Pitches": 13.6
},
"rates": {
"ERA": 6.75,
"WHIP": 1.75,
"ER_per_IP": 0.75,
"H_per_IP": 1.5,
"BB_per_IP": 0.25,
"SO_per_IP": 1.0,
"HR_per_IP": 0.25
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 6.0,
"R": 6.0,
"H": 11.0,
"BB": 3.0,
"SO": 11.0,
"HR": 1.0,
"BF": 40.0,
"Pitches": 144.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 1.1,
"BB": 0.3,
"SO": 1.1,
"HR": 0.1,
"BF": 4.0,
"Pitches": 14.4
},
"rates": {
"ERA": 6.48,
"WHIP": 1.68,
"ER_per_IP": 0.72,
"H_per_IP": 1.32,
"BB_per_IP": 0.36,
"SO_per_IP": 1.32,
"HR_per_IP": 0.12
}
},
"season": {
"games": 33,
"totals": {
"IP": 32.0,
"ER": 14.0,
"R": 14.0,
"H": 30.0,
"BB": 12.0,
"SO": 32.0,
"HR": 4.0,
"BF": 137.0,
"Pitches": 547.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4242,
"R": 0.4242,
"H": 0.9091,
"BB": 0.3636,
"SO": 0.9697,
"HR": 0.1212,
"BF": 4.1515,
"Pitches": 16.5758
},
"rates": {
"ERA": 3.9375,
"WHIP": 1.3125,
"ER_per_IP": 0.4375,
"H_per_IP": 0.9375,
"BB_per_IP": 0.375,
"SO_per_IP": 1.0,
"HR_per_IP": 0.125
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.51,
"predicted_H": 0.996,
"predicted_BB": 0.285,
"predicted_SO": 0.881,
"predicted_HR": 0.14,
"predicted_ERA": 5.3952,
"predicted_WHIP": 1.5056
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.536,
"form_weight": 0.464,
"form_reliability": 0.5597,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.355,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5597,
"prior_weight": 0.4403
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.51,
"final": 0.2366,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.996,
"final": 0.4621,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.285,
"final": 0.6683,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.881,
"final": 1.4808,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.14,
"final": 0.065,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.3952,
"final": 5.3952,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5056,
"final": 1.5056,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Riley O'Brien |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0604 |
| ESPN Rank | 255 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 3.7340 |
| Season WHIP | 1.2128 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"opponent": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"edges": {
"quality_edge": 0.3714,
"offense_edge": -0.0359,
"opponent_offense_edge": -0.1366,
"defense_strength": 0.1131,
"opponent_defense_weakness": 0.0432,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0237,
"run_prevention": 0.9483,
"strikeout": 1.0221
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676617",
"profile": {
"available": true,
"pitcher_id": "676617",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 96.0,
"k_percent": 24.1,
"bb_percent": 8.3,
"woba": 0.286,
"xwoba": 0.315,
"sweet_spot_percent": 30.6,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 38.8,
"avg_best_speed": 76.3884,
"avg_hyper_speed": 94.2499,
"whiff_percent": 28.3,
"swing_percent": 46.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.2585,
"command_and_miss": 0.2779,
"regression_edge": -0.8286,
"xwoba_edge": 0.0,
"barrel_edge": 0.5556,
"hard_hit_edge": -0.0714,
"whiff_edge": 0.3714,
"bb_edge": 0.225,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "676617",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0604,
"sample_weight": 0.45,
"run_prevention_factor": 0.9949,
"strikeout_factor": 1.0108,
"walk_factor": 0.9919,
"homer_factor": 0.9813,
"woba_minus_xwoba": -0.029,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676617",
"espn_id": 41509,
"player_name": "Riley O'Brien",
"team": "STL",
"role": "pitcher",
"espn_rank": 255,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 255,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 3.734,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 18.0,
"sv_rank": 3,
"hld_value": 1.0,
"hld_rank": 198,
"ip_value": 31.1,
"ip_rank": 229,
"h_value": 27.0,
"h_rank": 246,
"er_value": 13.0,
"er_rank": 243,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 32.0,
"k_rank": 222,
"k_per_9_value": 9.191489,
"k_per_9_rank": 26,
"whip_value": 1.2127,
"whip_rank": null,
"war_value": 0.26,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9977,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9977,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9964,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9916,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0049,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 7,
"H": 10,
"BB": 9,
"SO": 7,
"HR": 0,
"ERA": 6.096774193548388,
"WHIP": 1.838709677419355,
"K9": 6.096774193548388,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "676617",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.222,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5545,
"prior_weight": 0.4455
},
"role": "pitcher",
"player_id": "676617",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 6.0,
"SO": 3.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 95.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 1.2,
"SO": 0.6,
"HR": 0.0,
"BF": 4.8,
"Pitches": 19.0
},
"rates": {
"ERA": 1.8,
"WHIP": 1.8,
"ER_per_IP": 0.2,
"H_per_IP": 0.6,
"BB_per_IP": 1.2,
"SO_per_IP": 0.6,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 7.0,
"R": 8.0,
"H": 10.0,
"BB": 9.0,
"SO": 7.0,
"HR": 0.0,
"BF": 51.0,
"Pitches": 193.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7,
"R": 0.8,
"H": 1.0,
"BB": 0.9,
"SO": 0.7,
"HR": 0.0,
"BF": 5.1,
"Pitches": 19.3
},
"rates": {
"ERA": 6.0968,
"WHIP": 1.8387,
"ER_per_IP": 0.67742,
"H_per_IP": 0.96774,
"BB_per_IP": 0.87097,
"SO_per_IP": 0.67742,
"HR_per_IP": 0.0
}
},
"season": {
"games": 31,
"totals": {
"IP": 31.1,
"ER": 13.0,
"R": 15.0,
"H": 27.0,
"BB": 11.0,
"SO": 32.0,
"HR": 1.0,
"BF": 133.0,
"Pitches": 520.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4194,
"R": 0.4839,
"H": 0.871,
"BB": 0.3548,
"SO": 1.0323,
"HR": 0.0323,
"BF": 4.2903,
"Pitches": 16.7742
},
"rates": {
"ERA": 3.734,
"WHIP": 1.2128,
"ER_per_IP": 0.41489,
"H_per_IP": 0.8617,
"BB_per_IP": 0.35106,
"SO_per_IP": 1.02128,
"HR_per_IP": 0.03191
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.451,
"predicted_H": 0.867,
"predicted_BB": 0.669,
"predicted_SO": 0.812,
"predicted_HR": 0.069,
"predicted_ERA": 4.0549,
"predicted_WHIP": 1.5362
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5382,
"form_weight": 0.4618,
"form_reliability": 0.5545,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.222,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5545,
"prior_weight": 0.4455
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.451,
"final": 0.2083,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.867,
"final": 0.4004,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.669,
"final": 0.3089,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.812,
"final": 0.9132,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.069,
"final": 0.0319,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.0549,
"final": 4.0549,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5362,
"final": 1.5362,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Ryne Stanek |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0607 |
| ESPN Rank | 622 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 5.2159 |
| Season WHIP | 1.5000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"opponent": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"edges": {
"quality_edge": 0.3714,
"offense_edge": -0.0359,
"opponent_offense_edge": -0.1366,
"defense_strength": 0.1131,
"opponent_defense_weakness": 0.0432,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0237,
"run_prevention": 0.9483,
"strikeout": 1.0221
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "592773",
"profile": {
"available": true,
"pitcher_id": "592773",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 100.0,
"k_percent": 27.3,
"bb_percent": 13.6,
"woba": 0.332,
"xwoba": 0.31,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 7.9,
"hard_hit_percent": 36.8,
"avg_best_speed": 79.1564,
"avg_hyper_speed": 95.0728,
"whiff_percent": 32.5,
"swing_percent": 49.7
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.0703,
"command_and_miss": 0.4286,
"regression_edge": 0.6286,
"xwoba_edge": 0.1429,
"barrel_edge": -0.1333,
"hard_hit_edge": 0.2143,
"whiff_edge": 0.9714,
"bb_edge": -1.1,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "592773",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0607,
"sample_weight": 0.45,
"run_prevention_factor": 0.9948,
"strikeout_factor": 1.0298,
"walk_factor": 1.0396,
"homer_factor": 0.999,
"woba_minus_xwoba": 0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "592773",
"espn_id": 33301,
"player_name": "Ryne Stanek",
"team": "STL",
"role": "pitcher",
"espn_rank": 622,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 622,
"gp_value": 32.0,
"gp_rank": 31,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.2159,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 12.0,
"hld_rank": 9,
"ip_value": 29.1,
"ip_rank": 266,
"h_value": 26.0,
"h_rank": 257,
"er_value": 17.0,
"er_rank": 186,
"hr_value": 5.0,
"hr_rank": 157,
"bb_value": 18.0,
"bb_rank": 148,
"k_value": 36.0,
"k_rank": 191,
"k_per_9_value": 11.045455,
"k_per_9_rank": 19,
"whip_value": 1.5,
"whip_rank": null,
"war_value": -0.41,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9977,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9977,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0178,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9996,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0134,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 3,
"H": 6,
"BB": 2,
"SO": 9,
"HR": 3,
"ERA": 2.7,
"WHIP": 0.8,
"K9": 8.1,
"HR9": 2.7,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "592773",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.825,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5381,
"prior_weight": 0.4619
},
"role": "pitcher",
"player_id": "592773",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 3.0,
"R": 3.0,
"H": 3.0,
"BB": 0.0,
"SO": 5.0,
"HR": 3.0,
"BF": 18.0,
"Pitches": 66.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.6,
"BB": 0.0,
"SO": 1.0,
"HR": 0.6,
"BF": 3.6,
"Pitches": 13.2
},
"rates": {
"ERA": 5.4,
"WHIP": 0.6,
"ER_per_IP": 0.6,
"H_per_IP": 0.6,
"BB_per_IP": 0.0,
"SO_per_IP": 1.0,
"HR_per_IP": 0.6
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 3.0,
"R": 3.0,
"H": 6.0,
"BB": 2.0,
"SO": 9.0,
"HR": 3.0,
"BF": 38.0,
"Pitches": 146.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.6,
"BB": 0.2,
"SO": 0.9,
"HR": 0.3,
"BF": 3.8,
"Pitches": 14.6
},
"rates": {
"ERA": 2.7,
"WHIP": 0.8,
"ER_per_IP": 0.3,
"H_per_IP": 0.6,
"BB_per_IP": 0.2,
"SO_per_IP": 0.9,
"HR_per_IP": 0.3
}
},
"season": {
"games": 32,
"totals": {
"IP": 29.1,
"ER": 17.0,
"R": 19.0,
"H": 26.0,
"BB": 18.0,
"SO": 36.0,
"HR": 5.0,
"BF": 132.0,
"Pitches": 563.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5312,
"R": 0.5938,
"H": 0.8125,
"BB": 0.5625,
"SO": 1.125,
"HR": 0.1562,
"BF": 4.125,
"Pitches": 17.5938
},
"rates": {
"ERA": 5.2159,
"WHIP": 1.5,
"ER_per_IP": 0.57955,
"H_per_IP": 0.88636,
"BB_per_IP": 0.61364,
"SO_per_IP": 1.22727,
"HR_per_IP": 0.17045
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.496,
"predicted_H": 0.804,
"predicted_BB": 0.271,
"predicted_SO": 0.977,
"predicted_HR": 0.288,
"predicted_ERA": 4.4598,
"predicted_WHIP": 1.075
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5452,
"form_weight": 0.4548,
"form_reliability": 0.5381,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.825,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5381,
"prior_weight": 0.4619
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.496,
"final": 0.2256,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.804,
"final": 1.456,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.271,
"final": 0.6684,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.977,
"final": 0.4444,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.288,
"final": 0.131,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4598,
"final": 4.4598,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.075,
"final": 1.075,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.183 | 0.000 | 0.000 | Hitting_2B | 0.207 | 0.000 | -0.207 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.060 | 4.000 | 4.000 | Hitting_AB | 3.782 | 3.000 | 0.218 | 1.000 |
| predicted_AVG | 0.240 | 0.500 | 0.250 | Hitting_AVG | 0.259 | 0.333 | 0.241 | 0.167 |
| predicted_BB | 0.563 | 1.000 | 1.000 | Hitting_BB | 0.582 | 0.000 | 0.418 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.970 | 2.000 | 1.000 | Hitting_H | 0.981 | 1.000 | 1.019 | 1.000 |
| predicted_HR | 0.180 | 0.000 | 0.000 | Hitting_HR | 0.115 | 0.000 | -0.115 | 0.000 |
| predicted_OBP | 0.385 | 0.600 | 0.400 | Hitting_OBP | 0.389 | 0.500 | 0.211 | 0.100 |
| predicted_R | 0.648 | 1.000 | 1.000 | Hitting_R | 0.617 | 0.000 | 0.383 | 1.000 |
| predicted_RBI | 0.510 | 1.000 | 0.000 | Hitting_RBI | 0.460 | 0.000 | 0.540 | 1.000 |
| predicted_SLG | 0.434 | 0.500 | 0.250 | Hitting_SLG | 0.405 | 0.333 | 0.095 | 0.167 |
| predicted_SO | 0.704 | 0.000 | 1.000 | Hitting_SO | 0.797 | 0.000 | -0.797 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 7 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 0.9700 -> 2.0000 (boost 1.0300, better) |
| Biggest Deboost | predicted_SO: 0.7040 -> 0.0000 (deboost -0.7040, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 2 | 2 | 3 | 1 | predicted_OBP: 0.3850 -> 0.3982 (boost 0.0132, better) | predicted_AB: 4.0600 -> 3.8139 (deboost -0.2461, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3982 -> 0.3471 (deboost -0.0511, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_BB: 0.5766 -> 1.0000 (boost 0.4234, better) | predicted_RBI: 0.5017 -> 0.0000 (deboost -0.5017, worse) | AB rounded to 4 (raw=4.06), rates preserved: AVG=0.233 HR/AB=0.047 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7158 -> 1.0000 (boost 0.2842, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3471 -> 0.4000 (boost 0.0529, better) | predicted_SLG: 0.4420 -> 0.2500 (deboost -0.1920, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4420 (boost 0.1920, better) | predicted_OBP: 0.4000 -> 0.3471 (deboost -0.0529, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "671056",
"player_name": "Iván Herrera",
"position": "DH",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.183,
"predicted_3B": 0.0,
"predicted_AB": 4.06,
"predicted_AVG": 0.24,
"predicted_BB": 0.563,
"predicted_H": 0.97,
"predicted_HR": 0.18,
"predicted_OBP": 0.385,
"predicted_R": 0.648,
"predicted_RBI": 0.51,
"predicted_SLG": 0.434,
"predicted_SO": 0.704
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1605,
"predicted_3B": 0.0004,
"predicted_AB": 3.8139,
"predicted_AVG": 0.2444,
"predicted_BB": 0.5711,
"predicted_H": 0.9279,
"predicted_HBP": 0.451,
"predicted_HR": 0.1889,
"predicted_OBP": 0.3982,
"predicted_R": 0.6888,
"predicted_RBI": 0.4828,
"predicted_SLG": 0.4456,
"predicted_SO": 0.6135
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.1605,
"delta": -0.0225,
"percent_delta": -0.123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.06,
"after": 3.8139,
"delta": -0.2461,
"percent_delta": -0.0606,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2444,
"delta": 0.0044,
"percent_delta": 0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.563,
"after": 0.5711,
"delta": 0.0081,
"percent_delta": 0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 0.9279,
"delta": -0.0421,
"percent_delta": -0.0434,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.1889,
"delta": 0.0089,
"percent_delta": 0.0494,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.385,
"after": 0.3982,
"delta": 0.0132,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.648,
"after": 0.6888,
"delta": 0.0408,
"percent_delta": 0.063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.4828,
"delta": -0.0272,
"percent_delta": -0.0533,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.434,
"after": 0.4456,
"delta": 0.0116,
"percent_delta": 0.0267,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.704,
"after": 0.6135,
"delta": -0.0905,
"percent_delta": -0.1286,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.385,
"after": 0.3982,
"delta": 0.0132,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.06,
"after": 3.8139,
"delta": -0.2461,
"percent_delta": -0.0606,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1605,
"predicted_3B": 0.0004,
"predicted_AB": 3.8139,
"predicted_AVG": 0.2483,
"predicted_BB": 0.5766,
"predicted_H": 0.9471,
"predicted_HBP": 0.451,
"predicted_HR": 0.1924,
"predicted_OBP": 0.3471,
"predicted_R": 0.7158,
"predicted_RBI": 0.5017,
"predicted_SLG": 0.442,
"predicted_SO": 0.6075
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1605,
"after": 0.1605,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8139,
"after": 3.8139,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2444,
"after": 0.2483,
"delta": 0.0039,
"percent_delta": 0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5711,
"after": 0.5766,
"delta": 0.0055,
"percent_delta": 0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9279,
"after": 0.9471,
"delta": 0.0192,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.451,
"after": 0.451,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1889,
"after": 0.1924,
"delta": 0.0035,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3982,
"after": 0.3471,
"delta": -0.0511,
"percent_delta": -0.1283,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6888,
"after": 0.7158,
"delta": 0.027,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4828,
"after": 0.5017,
"delta": 0.0189,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4456,
"after": 0.442,
"delta": -0.0036,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6135,
"after": 0.6075,
"delta": -0.006,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3982,
"after": 0.3471,
"delta": -0.0511,
"percent_delta": -0.1283,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.06), rates preserved: AVG=0.233 HR/AB=0.047",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1605,
"after": 0.0,
"delta": -0.1605,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8139,
"after": 4.0,
"delta": 0.1861,
"percent_delta": 0.0488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5766,
"after": 1.0,
"delta": 0.4234,
"percent_delta": 0.7343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9471,
"after": 1.0,
"delta": 0.0529,
"percent_delta": 0.0559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.451,
"after": 0.0,
"delta": -0.451,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5017,
"after": 0.0,
"delta": -0.5017,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6075,
"after": 1.0,
"delta": 0.3925,
"percent_delta": 0.6461,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5766,
"after": 1.0,
"delta": 0.4234,
"percent_delta": 0.7343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5017,
"after": 0.0,
"delta": -0.5017,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7158,
"after": 1.0,
"delta": 0.2842,
"percent_delta": 0.397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.7158,
"after": 1.0,
"delta": 0.2842,
"percent_delta": 0.397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2483,
"after": 0.25,
"delta": 0.0017,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3471,
"after": 0.4,
"delta": 0.0529,
"percent_delta": 0.1524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.442,
"after": 0.25,
"delta": -0.192,
"percent_delta": -0.4344,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3471,
"after": 0.4,
"delta": 0.0529,
"percent_delta": 0.1524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.442,
"after": 0.25,
"delta": -0.192,
"percent_delta": -0.4344,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2483,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3471,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.442,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2483,
"delta": -0.0017,
"percent_delta": -0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3471,
"delta": -0.0529,
"percent_delta": -0.1324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.442,
"delta": 0.192,
"percent_delta": 0.7679,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.442,
"delta": 0.192,
"percent_delta": 0.7679,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3471,
"delta": -0.0529,
"percent_delta": -0.1324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.0,
"delta": -0.183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.06,
"after": 4.0,
"delta": -0.06,
"percent_delta": -0.0148,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2483,
"delta": 0.0083,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.563,
"after": 1.0,
"delta": 0.437,
"percent_delta": 0.7762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 2.0,
"delta": 1.03,
"percent_delta": 1.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.385,
"after": 0.3471,
"delta": -0.0379,
"percent_delta": -0.0984,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.648,
"after": 1.0,
"delta": 0.352,
"percent_delta": 0.5432,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.434,
"after": 0.442,
"delta": 0.008,
"percent_delta": 0.0184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.704,
"after": 0.0,
"delta": -0.704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.97,
"after": 2.0,
"delta": 1.03,
"percent_delta": 1.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.704,
"after": 0.0,
"delta": -0.704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.060 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.563 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.385 | - |
| predicted_R | 0.648 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.434 | - |
| predicted_SO | 0.704 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.161 | -0.022 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.814 | -0.246 |
| predicted_AVG | 0.244 | 0.004 |
| predicted_BB | 0.571 | 0.008 |
| predicted_H | 0.928 | -0.042 |
| predicted_HBP | 0.451 | - |
| predicted_HR | 0.189 | 0.009 |
| predicted_OBP | 0.398 | 0.013 |
| predicted_R | 0.689 | 0.041 |
| predicted_RBI | 0.483 | -0.027 |
| predicted_SLG | 0.446 | 0.012 |
| predicted_SO | 0.614 | -0.090 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.161 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.814 | 0.000 |
| predicted_AVG | 0.248 | 0.004 |
| predicted_BB | 0.577 | 0.005 |
| predicted_H | 0.947 | 0.019 |
| predicted_HBP | 0.451 | 0.000 |
| predicted_HR | 0.192 | 0.003 |
| predicted_OBP | 0.347 | -0.051 |
| predicted_R | 0.716 | 0.027 |
| predicted_RBI | 0.502 | 0.019 |
| predicted_SLG | 0.442 | -0.004 |
| predicted_SO | 0.608 | -0.006 |
AB rounded to 4 (raw=4.06), rates preserved: AVG=0.233 HR/AB=0.047
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.161 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.186 |
| predicted_AVG | 0.250 | 0.002 |
| predicted_BB | 1.000 | 0.423 |
| predicted_H | 1.000 | 0.053 |
| predicted_HR | 0.000 | -0.192 |
| predicted_OBP | 0.400 | 0.053 |
| predicted_R | 1.000 | 0.284 |
| predicted_RBI | 0.000 | -0.502 |
| predicted_SLG | 0.250 | -0.192 |
| predicted_SO | 1.000 | 0.392 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 3.000 | 0.000 | 0.2000 | 0.4545 | 0.6000 | 0.2000 | 0.1333 | 0.2000 | 0.2000 | 0.0000 |
| last_10 | 0.20 | 10 | - | 32.000 | 9.000 | 1.000 | 0.000 | 2.000 | 3.000 | 10.000 | 7.000 | 3.000 | 0.2812 | 0.5000 | 0.5000 | 0.2812 | 0.0625 | 0.0938 | 0.2188 | 0.0938 |
| season | 0.60 | 71 | - | 261.000 | 67.000 | 13.000 | 0.000 | 9.000 | 30.000 | 46.000 | 40.000 | 50.000 | 0.2567 | 0.3913 | 0.4100 | 0.2567 | 0.0345 | 0.1149 | 0.1533 | 0.1916 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1300 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.4810 |
| predicted_AVG | 0.2503 |
| predicted_BB | 0.5820 |
| predicted_H | 0.8710 |
| predicted_HBP | 0.4510 |
| predicted_HR | 0.2010 |
| predicted_OBP | 0.4161 |
| predicted_R | 0.7440 |
| predicted_RBI | 0.4460 |
| predicted_SLG | 0.4612 |
| predicted_SO | 0.4910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1830 | 0.1300 | 0.1605 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0600 | 3.4810 | 3.8139 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2503 | 0.2444 | model_form_blend |
| predicted_BB | 0.5630 | 0.5820 | 0.5711 | model_form_blend |
| predicted_H | 0.9700 | 0.8710 | 0.9279 | model_form_blend |
| predicted_HBP | - | 0.4510 | 0.4510 | form_only |
| predicted_HR | 0.1800 | 0.2010 | 0.1889 | model_form_blend |
| predicted_OBP | 0.3850 | 0.4161 | 0.3982 | model_form_blend |
| predicted_R | 0.6480 | 0.7440 | 0.6888 | model_form_blend |
| predicted_RBI | 0.5100 | 0.4460 | 0.4828 | model_form_blend |
| predicted_SLG | 0.4340 | 0.4612 | 0.4456 | model_form_blend |
| predicted_SO | 0.7040 | 0.4910 | 0.6135 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 261 |
| Season rows before report date | 261 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.257 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_SD@STL |
| game_type | full |
| mlbID | 671056 |
| playerID | 671056 |
| playerName | Iván Herrera |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 15.3 |
| sl_bb_percent | 12.8 |
| sl_woba | 0.366 |
| sl_xwoba | 0.369 |
| sl_xba | 0.267 |
| sl_xslg | 0.421 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 7.0 |
| sl_hard_hit_percent | 41.7 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 7.2 |
| sl_whiff_percent | 19.7 |
| sl_swing_percent | 43.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.093 | 0.000 | 0.000 | Hitting_2B | 0.091 | 0.000 | -0.091 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.610 | 5.000 | 3.000 | Hitting_AB | 2.455 | 1.000 | 2.545 | 4.000 |
| predicted_AVG | 0.282 | 0.600 | 0.333 | Hitting_AVG | 0.333 | 0.000 | 0.267 | 0.600 |
| predicted_BB | 0.093 | 0.000 | 0.000 | Hitting_BB | 0.091 | 0.000 | -0.091 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.740 | 3.000 | 1.000 | Hitting_H | 0.818 | 0.000 | 2.182 | 3.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.182 | 0.000 | -0.182 | 0.000 |
| predicted_OBP | 0.326 | 0.600 | 0.333 | Hitting_OBP | 0.379 | 0.000 | 0.221 | 0.600 |
| predicted_R | 0.463 | 1.000 | 0.000 | Hitting_R | 0.455 | 0.000 | 0.545 | 1.000 |
| predicted_RBI | 0.440 | 1.000 | 1.000 | Hitting_RBI | 0.545 | 0.000 | 0.455 | 1.000 |
| predicted_SLG | 0.463 | 0.600 | 0.333 | Hitting_SLG | 0.593 | 0.000 | 0.007 | 0.600 |
| predicted_SO | 0.741 | 0.000 | 1.000 | Hitting_SO | 0.727 | 1.000 | -0.727 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 7 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_AB: 2.6100 -> 5.0000 (boost 2.3900, better) |
| Biggest Deboost | predicted_SO: 0.7410 -> 0.0000 (deboost -0.7410, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_AB: 2.6100 -> 2.7642 (boost 0.1542, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.4703 -> 0.4912 (boost 0.0209, better) | predicted_OBP: 0.3279 -> 0.3184 (deboost -0.0095, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_RBI: 0.4801 -> 1.0000 (boost 0.5199, better) | predicted_HR: 0.1505 -> 0.0000 (deboost -0.1505, worse) | AB rounded to 3 (raw=2.76), rates preserved: AVG=0.289 HR/AB=0.054 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4852 -> 0.0000 (deboost -0.4852, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2895 -> 0.3330 (boost 0.0435, better) | predicted_SLG: 0.4912 -> 0.3330 (deboost -0.1582, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 4 | 0 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4912 (boost 0.1582, better) | predicted_AVG: 0.3330 -> 0.2895 (deboost -0.0435, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676369",
"player_name": "Nelson Velázquez",
"position": "LF",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.093,
"predicted_3B": 0.0,
"predicted_AB": 2.61,
"predicted_AVG": 0.282,
"predicted_BB": 0.093,
"predicted_H": 0.74,
"predicted_HR": 0.14,
"predicted_OBP": 0.326,
"predicted_R": 0.463,
"predicted_RBI": 0.44,
"predicted_SLG": 0.463,
"predicted_SO": 0.741
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1023,
"predicted_3B": 0.0018,
"predicted_AB": 2.7642,
"predicted_AVG": 0.2825,
"predicted_BB": 0.1159,
"predicted_H": 0.784,
"predicted_HBP": 0.049,
"predicted_HR": 0.1478,
"predicted_OBP": 0.3279,
"predicted_R": 0.4669,
"predicted_RBI": 0.462,
"predicted_SLG": 0.4703,
"predicted_SO": 0.7732
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.1023,
"delta": 0.0093,
"percent_delta": 0.1,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0018,
"delta": 0.0018,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.61,
"after": 2.7642,
"delta": 0.1542,
"percent_delta": 0.0591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.282,
"after": 0.2825,
"delta": 0.0005,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.093,
"after": 0.1159,
"delta": 0.0229,
"percent_delta": 0.2462,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 0.784,
"delta": 0.044,
"percent_delta": 0.0595,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1478,
"delta": 0.0078,
"percent_delta": 0.0557,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3279,
"delta": 0.0019,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.463,
"after": 0.4669,
"delta": 0.0039,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.462,
"delta": 0.022,
"percent_delta": 0.05,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.463,
"after": 0.4703,
"delta": 0.0073,
"percent_delta": 0.0158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.741,
"after": 0.7732,
"delta": 0.0322,
"percent_delta": 0.0435,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.61,
"after": 2.7642,
"delta": 0.1542,
"percent_delta": 0.0591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 11
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1023,
"predicted_3B": 0.0018,
"predicted_AB": 2.7642,
"predicted_AVG": 0.2895,
"predicted_BB": 0.117,
"predicted_H": 0.8002,
"predicted_HBP": 0.049,
"predicted_HR": 0.1505,
"predicted_OBP": 0.3184,
"predicted_R": 0.4852,
"predicted_RBI": 0.4801,
"predicted_SLG": 0.4912,
"predicted_SO": 0.7657
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1023,
"after": 0.1023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0018,
"after": 0.0018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7642,
"after": 2.7642,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2825,
"after": 0.2895,
"delta": 0.007,
"percent_delta": 0.0248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1159,
"after": 0.117,
"delta": 0.0011,
"percent_delta": 0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.784,
"after": 0.8002,
"delta": 0.0162,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.049,
"after": 0.049,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1478,
"after": 0.1505,
"delta": 0.0027,
"percent_delta": 0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3279,
"after": 0.3184,
"delta": -0.0095,
"percent_delta": -0.029,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4669,
"after": 0.4852,
"delta": 0.0183,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.462,
"after": 0.4801,
"delta": 0.0181,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4703,
"after": 0.4912,
"delta": 0.0209,
"percent_delta": 0.0444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7732,
"after": 0.7657,
"delta": -0.0075,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4703,
"after": 0.4912,
"delta": 0.0209,
"percent_delta": 0.0444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3279,
"after": 0.3184,
"delta": -0.0095,
"percent_delta": -0.029,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.76), rates preserved: AVG=0.289 HR/AB=0.054",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1023,
"after": 0.0,
"delta": -0.1023,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0018,
"after": 0.0,
"delta": -0.0018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7642,
"after": 3.0,
"delta": 0.2358,
"percent_delta": 0.0853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.117,
"after": 0.0,
"delta": -0.117,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8002,
"after": 1.0,
"delta": 0.1998,
"percent_delta": 0.2497,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.049,
"after": 0.0,
"delta": -0.049,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1505,
"after": 0.0,
"delta": -0.1505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4801,
"after": 1.0,
"delta": 0.5199,
"percent_delta": 1.0829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7657,
"after": 1.0,
"delta": 0.2343,
"percent_delta": 0.306,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4801,
"after": 1.0,
"delta": 0.5199,
"percent_delta": 1.0829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.1505,
"after": 0.0,
"delta": -0.1505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4852,
"after": 0.0,
"delta": -0.4852,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4852,
"after": 0.0,
"delta": -0.4852,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2895,
"after": 0.333,
"delta": 0.0435,
"percent_delta": 0.1503,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3184,
"after": 0.333,
"delta": 0.0146,
"percent_delta": 0.0459,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4912,
"after": 0.333,
"delta": -0.1582,
"percent_delta": -0.3221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2895,
"after": 0.333,
"delta": 0.0435,
"percent_delta": 0.1503,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4912,
"after": 0.333,
"delta": -0.1582,
"percent_delta": -0.3221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2895,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3184,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4912,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2895,
"delta": -0.0435,
"percent_delta": -0.1306,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3184,
"delta": -0.0146,
"percent_delta": -0.044,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4912,
"delta": 0.1582,
"percent_delta": 0.4751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4912,
"delta": 0.1582,
"percent_delta": 0.4751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2895,
"delta": -0.0435,
"percent_delta": -0.1306,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.0,
"delta": -0.093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.61,
"after": 5.0,
"delta": 2.39,
"percent_delta": 0.9157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.282,
"after": 0.2895,
"delta": 0.0075,
"percent_delta": 0.0266,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.093,
"after": 0.0,
"delta": -0.093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 3.0,
"delta": 2.26,
"percent_delta": 3.0541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3184,
"delta": -0.0076,
"percent_delta": -0.0233,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.463,
"after": 1.0,
"delta": 0.537,
"percent_delta": 1.1598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 1.0,
"delta": 0.56,
"percent_delta": 1.2727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.463,
"after": 0.4912,
"delta": 0.0282,
"percent_delta": 0.0609,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.741,
"after": 0.0,
"delta": -0.741,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.61,
"after": 5.0,
"delta": 2.39,
"percent_delta": 0.9157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.741,
"after": 0.0,
"delta": -0.741,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.093 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.610 | - |
| predicted_AVG | 0.282 | - |
| predicted_BB | 0.093 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.463 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.463 | - |
| predicted_SO | 0.741 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.102 | 0.009 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.764 | 0.154 |
| predicted_AVG | 0.282 | 0.001 |
| predicted_BB | 0.116 | 0.023 |
| predicted_H | 0.784 | 0.044 |
| predicted_HBP | 0.049 | - |
| predicted_HR | 0.148 | 0.008 |
| predicted_OBP | 0.328 | 0.002 |
| predicted_R | 0.467 | 0.004 |
| predicted_RBI | 0.462 | 0.022 |
| predicted_SLG | 0.470 | 0.007 |
| predicted_SO | 0.773 | 0.032 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.102 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.764 | 0.000 |
| predicted_AVG | 0.289 | 0.007 |
| predicted_BB | 0.117 | 0.001 |
| predicted_H | 0.800 | 0.016 |
| predicted_HBP | 0.049 | 0.000 |
| predicted_HR | 0.150 | 0.003 |
| predicted_OBP | 0.318 | -0.010 |
| predicted_R | 0.485 | 0.018 |
| predicted_RBI | 0.480 | 0.018 |
| predicted_SLG | 0.491 | 0.021 |
| predicted_SO | 0.766 | -0.007 |
AB rounded to 3 (raw=2.76), rates preserved: AVG=0.289 HR/AB=0.054
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.102 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.236 |
| predicted_AVG | 0.333 | 0.044 |
| predicted_BB | 0.000 | -0.117 |
| predicted_H | 1.000 | 0.200 |
| predicted_HR | 0.000 | -0.150 |
| predicted_OBP | 0.333 | 0.015 |
| predicted_R | 0.000 | -0.485 |
| predicted_RBI | 1.000 | 0.520 |
| predicted_SLG | 0.333 | -0.158 |
| predicted_SO | 1.000 | 0.234 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 3.000 | 2.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 10.000 | 3.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 4.000 | 0.3000 | 0.3000 | 0.6000 | 0.3000 | 0.1000 | 0.2000 | 0.0000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 24.000 | 7.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 8.000 | 0.2917 | 0.3200 | 0.4583 | 0.2917 | 0.0417 | 0.1250 | 0.0417 | 0.3333 |
| season | 0.60 | 11 | - | 27.000 | 9.000 | 1.000 | 0.000 | 2.000 | 6.000 | 5.000 | 1.000 | 8.000 | 0.3333 | 0.3793 | 0.5926 | 0.3333 | 0.0741 | 0.2222 | 0.0370 | 0.2963 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1240 |
| predicted_3B | 0.0060 |
| predicted_AB | 3.1220 |
| predicted_AVG | 0.2838 |
| predicted_BB | 0.1690 |
| predicted_H | 0.8860 |
| predicted_HBP | 0.0490 |
| predicted_HR | 0.1660 |
| predicted_OBP | 0.3322 |
| predicted_R | 0.4760 |
| predicted_RBI | 0.5130 |
| predicted_SLG | 0.4872 |
| predicted_SO | 0.8480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0930 | 0.1240 | 0.1023 | model_form_blend |
| predicted_3B | 0.0000 | 0.0060 | 0.0018 | model_form_blend |
| predicted_AB | 2.6100 | 3.1220 | 2.7642 | model_form_blend |
| predicted_AVG | 0.2820 | 0.2838 | 0.2825 | model_form_blend |
| predicted_BB | 0.0930 | 0.1690 | 0.1159 | model_form_blend |
| predicted_H | 0.7400 | 0.8860 | 0.7840 | model_form_blend |
| predicted_HBP | - | 0.0490 | 0.0490 | form_only |
| predicted_HR | 0.1400 | 0.1660 | 0.1478 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3322 | 0.3279 | model_form_blend |
| predicted_R | 0.4630 | 0.4760 | 0.4669 | model_form_blend |
| predicted_RBI | 0.4400 | 0.5130 | 0.4620 | model_form_blend |
| predicted_SLG | 0.4630 | 0.4872 | 0.4703 | model_form_blend |
| predicted_SO | 0.7410 | 0.8480 | 0.7732 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 11 |
| Season rows before report date | 11 |
| Report year | 2026 |
| Profile rows used | 11 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 3 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.333 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH |
| gameID | 20260617_SD@STL |
| game_type | ph |
| mlbID | 676369 |
| note | Struck out for Crooks in the 6th. |
| playerID | 676369 |
| playerName | Nelson Velázquez |
| pos | RF |
| started | False |
| startingPosition | PH |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 3.4 |
| sl_woba | 0.42 |
| sl_xwoba | 0.424 |
| sl_xba | 0.324 |
| sl_xslg | 0.624 |
| sl_sweet_spot_percent | 42.1 |
| sl_barrel_batted_rate | 15.8 |
| sl_hard_hit_percent | 68.4 |
| sl_exit_velocity_avg | 93.4 |
| sl_launch_angle_avg | 7.6 |
| sl_whiff_percent | 32.7 |
| sl_swing_percent | 48.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.106 | 0.000 | 0.000 | Hitting_2B | 0.120 | 0.000 | -0.120 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.380 | 3.000 | 4.000 | Hitting_AB | 3.919 | 4.000 | -0.919 | -1.000 |
| predicted_AVG | 0.250 | 0.000 | 0.250 | Hitting_AVG | 0.241 | 0.250 | -0.241 | -0.250 |
| predicted_BB | 0.485 | 2.000 | 0.000 | Hitting_BB | 0.558 | 0.000 | 1.442 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.100 | 0.000 | 1.000 | Hitting_H | 0.946 | 1.000 | -0.946 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_OBP | 0.356 | 0.400 | 0.250 | Hitting_OBP | 0.360 | 0.250 | 0.040 | 0.150 |
| predicted_R | 0.667 | 0.000 | 1.000 | Hitting_R | 0.698 | 0.000 | -0.698 | 0.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.477 | 0.000 | -0.477 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.112 | 0.000 | -0.112 | 0.000 |
| predicted_SLG | 0.417 | 0.000 | 0.250 | Hitting_SLG | 0.400 | 0.250 | -0.400 | -0.250 |
| predicted_SO | 0.742 | 0.000 | 1.000 | Hitting_SO | 0.822 | 0.000 | -0.822 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.4850 -> 2.0000 (boost 1.5150, better) |
| Biggest Deboost | predicted_AB: 4.3800 -> 3.0000 (deboost -1.3800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2500 -> 0.2682 (boost 0.0182, better) | predicted_AB: 4.3800 -> 4.2313 (deboost -0.1487, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2682 -> 0.2735 (boost 0.0053, better) | predicted_OBP: 0.3637 -> 0.3462 (deboost -0.0175, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_RBI: 0.5694 -> 1.0000 (boost 0.4306, better) | predicted_BB: 0.4700 -> 0.0000 (deboost -0.4700, worse) | AB rounded to 4 (raw=4.38), rates preserved: AVG=0.264 HR/AB=0.035 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6610 -> 1.0000 (boost 0.3390, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4042 -> 0.2500 (deboost -0.1542, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 1 | 5 | 2 | 4 | predicted_BB: 0.0000 -> 2.0000 (boost 2.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4042 (boost 0.1542, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "802139",
"player_name": "JJ Wetherholt",
"position": "2B",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.106,
"predicted_3B": 0.0,
"predicted_AB": 4.38,
"predicted_AVG": 0.25,
"predicted_BB": 0.485,
"predicted_H": 1.1,
"predicted_HR": 0.15,
"predicted_OBP": 0.356,
"predicted_R": 0.667,
"predicted_RBI": 0.55,
"predicted_SLG": 0.417,
"predicted_SO": 0.742
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0937,
"predicted_3B": 0.0004,
"predicted_AB": 4.2313,
"predicted_AVG": 0.2682,
"predicted_BB": 0.4655,
"predicted_H": 1.1339,
"predicted_HBP": 0.089,
"predicted_HR": 0.15,
"predicted_OBP": 0.3637,
"predicted_R": 0.6361,
"predicted_RBI": 0.5479,
"predicted_SLG": 0.42,
"predicted_SO": 0.734
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.106,
"after": 0.0937,
"delta": -0.0123,
"percent_delta": -0.116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.38,
"after": 4.2313,
"delta": -0.1487,
"percent_delta": -0.0339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2682,
"delta": 0.0182,
"percent_delta": 0.0728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.485,
"after": 0.4655,
"delta": -0.0195,
"percent_delta": -0.0402,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 1.1339,
"delta": 0.0339,
"percent_delta": 0.0308,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.15,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.356,
"after": 0.3637,
"delta": 0.0077,
"percent_delta": 0.0216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.6361,
"delta": -0.0309,
"percent_delta": -0.0463,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5479,
"delta": -0.0021,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.417,
"after": 0.42,
"delta": 0.003,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.742,
"after": 0.734,
"delta": -0.008,
"percent_delta": -0.0108,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2682,
"delta": 0.0182,
"percent_delta": 0.0728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.38,
"after": 4.2313,
"delta": -0.1487,
"percent_delta": -0.0339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0937,
"predicted_3B": 0.0004,
"predicted_AB": 4.2313,
"predicted_AVG": 0.2735,
"predicted_BB": 0.47,
"predicted_H": 1.1574,
"predicted_HBP": 0.089,
"predicted_HR": 0.1528,
"predicted_OBP": 0.3462,
"predicted_R": 0.661,
"predicted_RBI": 0.5694,
"predicted_SLG": 0.4042,
"predicted_SO": 0.7269
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0937,
"after": 0.0937,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2313,
"after": 4.2313,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2682,
"after": 0.2735,
"delta": 0.0053,
"percent_delta": 0.0198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4655,
"after": 0.47,
"delta": 0.0045,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1339,
"after": 1.1574,
"delta": 0.0235,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.089,
"after": 0.089,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1528,
"delta": 0.0028,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3637,
"after": 0.3462,
"delta": -0.0175,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6361,
"after": 0.661,
"delta": 0.0249,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5479,
"after": 0.5694,
"delta": 0.0215,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.42,
"after": 0.4042,
"delta": -0.0158,
"percent_delta": -0.0376,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.734,
"after": 0.7269,
"delta": -0.0071,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2682,
"after": 0.2735,
"delta": 0.0053,
"percent_delta": 0.0198,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3637,
"after": 0.3462,
"delta": -0.0175,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.38), rates preserved: AVG=0.264 HR/AB=0.035",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0937,
"after": 0.0,
"delta": -0.0937,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2313,
"after": 4.0,
"delta": -0.2313,
"percent_delta": -0.0547,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1574,
"after": 1.0,
"delta": -0.1574,
"percent_delta": -0.136,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.089,
"after": 0.0,
"delta": -0.089,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1528,
"after": 0.0,
"delta": -0.1528,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5694,
"after": 1.0,
"delta": 0.4306,
"percent_delta": 0.7562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7269,
"after": 1.0,
"delta": 0.2731,
"percent_delta": 0.3757,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5694,
"after": 1.0,
"delta": 0.4306,
"percent_delta": 0.7562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.661,
"after": 1.0,
"delta": 0.339,
"percent_delta": 0.5129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.661,
"after": 1.0,
"delta": 0.339,
"percent_delta": 0.5129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2735,
"after": 0.25,
"delta": -0.0235,
"percent_delta": -0.0859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3462,
"after": 0.25,
"delta": -0.0962,
"percent_delta": -0.2779,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4042,
"after": 0.25,
"delta": -0.1542,
"percent_delta": -0.3815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4042,
"after": 0.25,
"delta": -0.1542,
"percent_delta": -0.3815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2735,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3462,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4042,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2735,
"delta": 0.0235,
"percent_delta": 0.0941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3462,
"delta": 0.0962,
"percent_delta": 0.3846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4042,
"delta": 0.1542,
"percent_delta": 0.6168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4042,
"delta": 0.1542,
"percent_delta": 0.6168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.106,
"after": 0.0,
"delta": -0.106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.38,
"after": 3.0,
"delta": -1.38,
"percent_delta": -0.3151,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2735,
"delta": 0.0235,
"percent_delta": 0.094,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.485,
"after": 2.0,
"delta": 1.515,
"percent_delta": 3.1237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 0.0,
"delta": -1.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.356,
"after": 0.3462,
"delta": -0.0098,
"percent_delta": -0.0275,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.0,
"delta": -0.667,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.417,
"after": 0.4042,
"delta": -0.0128,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.742,
"after": 0.0,
"delta": -0.742,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.485,
"after": 2.0,
"delta": 1.515,
"percent_delta": 3.1237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.38,
"after": 3.0,
"delta": -1.38,
"percent_delta": -0.3151,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.106 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.380 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.485 | - |
| predicted_H | 1.100 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.356 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.417 | - |
| predicted_SO | 0.742 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.094 | -0.012 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.231 | -0.149 |
| predicted_AVG | 0.268 | 0.018 |
| predicted_BB | 0.466 | -0.019 |
| predicted_H | 1.134 | 0.034 |
| predicted_HBP | 0.089 | - |
| predicted_HR | 0.150 | 0.000 |
| predicted_OBP | 0.364 | 0.008 |
| predicted_R | 0.636 | -0.031 |
| predicted_RBI | 0.548 | -0.002 |
| predicted_SLG | 0.420 | 0.003 |
| predicted_SO | 0.734 | -0.008 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.094 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.231 | 0.000 |
| predicted_AVG | 0.274 | 0.005 |
| predicted_BB | 0.470 | 0.004 |
| predicted_H | 1.157 | 0.024 |
| predicted_HBP | 0.089 | 0.000 |
| predicted_HR | 0.153 | 0.003 |
| predicted_OBP | 0.346 | -0.018 |
| predicted_R | 0.661 | 0.025 |
| predicted_RBI | 0.569 | 0.021 |
| predicted_SLG | 0.404 | -0.016 |
| predicted_SO | 0.727 | -0.007 |
AB rounded to 4 (raw=4.38), rates preserved: AVG=0.264 HR/AB=0.035
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.094 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.231 |
| predicted_AVG | 0.250 | -0.024 |
| predicted_BB | 0.000 | -0.470 |
| predicted_H | 1.000 | -0.157 |
| predicted_HR | 0.000 | -0.153 |
| predicted_OBP | 0.250 | -0.096 |
| predicted_R | 1.000 | 0.339 |
| predicted_RBI | 1.000 | 0.431 |
| predicted_SLG | 0.250 | -0.154 |
| predicted_SO | 1.000 | 0.273 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 2.000 | 2.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 8.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 2.000 | 4.000 | 0.3810 | 0.4348 | 0.5238 | 0.3810 | 0.0476 | 0.1905 | 0.0952 | 0.1905 |
| last_10 | 0.20 | 10 | - | 43.000 | 14.000 | 0.000 | 0.000 | 1.000 | 6.000 | 6.000 | 4.000 | 5.000 | 0.3256 | 0.3830 | 0.3953 | 0.3256 | 0.0233 | 0.1395 | 0.0930 | 0.1163 |
| season | 0.60 | 66 | - | 258.000 | 67.000 | 7.000 | 0.000 | 10.000 | 30.000 | 44.000 | 32.000 | 49.000 | 0.2597 | 0.3609 | 0.4031 | 0.2597 | 0.0388 | 0.1163 | 0.1240 | 0.1899 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0770 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.0290 |
| predicted_AVG | 0.2929 |
| predicted_BB | 0.4390 |
| predicted_H | 1.1800 |
| predicted_HBP | 0.0890 |
| predicted_HR | 0.1500 |
| predicted_OBP | 0.3741 |
| predicted_R | 0.5940 |
| predicted_RBI | 0.5450 |
| predicted_SLG | 0.4242 |
| predicted_SO | 0.7230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1060 | 0.0770 | 0.0937 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3800 | 4.0290 | 4.2313 | model_form_blend |
| predicted_AVG | 0.2500 | 0.2929 | 0.2682 | model_form_blend |
| predicted_BB | 0.4850 | 0.4390 | 0.4655 | model_form_blend |
| predicted_H | 1.1000 | 1.1800 | 1.1339 | model_form_blend |
| predicted_HBP | - | 0.0890 | 0.0890 | form_only |
| predicted_HR | 0.1500 | 0.1500 | 0.1500 | model_form_blend |
| predicted_OBP | 0.3560 | 0.3741 | 0.3637 | model_form_blend |
| predicted_R | 0.6670 | 0.5940 | 0.6361 | model_form_blend |
| predicted_RBI | 0.5500 | 0.5450 | 0.5479 | model_form_blend |
| predicted_SLG | 0.4170 | 0.4242 | 0.4200 | model_form_blend |
| predicted_SO | 0.7420 | 0.7230 | 0.7340 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 258 |
| Season rows before report date | 258 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.26 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_SD@STL |
| game_type | full |
| mlbID | 802139 |
| playerID | 802139 |
| playerName | JJ Wetherholt |
| pos | SS |
| started | True |
| startingPosition | 2B |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 16.2 |
| sl_bb_percent | 10.7 |
| sl_woba | 0.34 |
| sl_xwoba | 0.354 |
| sl_xba | 0.256 |
| sl_xslg | 0.441 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 7.5 |
| sl_hard_hit_percent | 46.0 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 14.6 |
| sl_whiff_percent | 21.3 |
| sl_swing_percent | 43.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.229 | 0.000 | 0.000 | Hitting_2B | 0.244 | 0.000 | -0.244 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.280 | 4.000 | 4.000 | Hitting_AB | 3.938 | 4.000 | 0.062 | 0.000 |
| predicted_AVG | 0.237 | 0.250 | 0.250 | Hitting_AVG | 0.316 | 0.000 | -0.066 | 0.250 |
| predicted_BB | 0.300 | 1.000 | 0.000 | Hitting_BB | 0.384 | 0.000 | 0.616 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_H | 1.010 | 1.000 | 1.000 | Hitting_H | 1.244 | 0.000 | -0.244 | 1.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.298 | 0.000 | -0.298 | 0.000 |
| predicted_OBP | 0.291 | 0.400 | 0.250 | Hitting_OBP | 0.378 | 0.000 | 0.022 | 0.400 |
| predicted_R | 0.643 | 1.000 | 1.000 | Hitting_R | 0.748 | 0.000 | 0.252 | 1.000 |
| predicted_RBI | 0.650 | 0.000 | 1.000 | Hitting_RBI | 0.876 | 0.000 | -0.876 | 0.000 |
| predicted_SLG | 0.447 | 0.250 | 0.250 | Hitting_SLG | 0.604 | 0.000 | -0.354 | 0.250 |
| predicted_SO | 1.086 | 1.000 | 1.000 | Hitting_SO | 1.099 | 0.000 | -0.099 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | deboosted |
| Changed Metrics | 8 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_BB: 0.3000 -> 1.0000 (boost 0.7000, better) |
| Biggest Deboost | predicted_RBI: 0.6500 -> 0.0000 (deboost -0.6500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_AB: 4.2800 -> 4.1970 (deboost -0.0830, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 0 | 0 | 0 | 0 | 0 | - | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 1 | 4 | predicted_RBI: 0.6873 -> 1.0000 (boost 0.3127, better) | predicted_BB: 0.2593 -> 0.0000 (deboost -0.2593, worse) | AB rounded to 4 (raw=4.28), rates preserved: AVG=0.241 HR/AB=0.049 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6036 -> 1.0000 (boost 0.3964, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4483 -> 0.2500 (deboost -0.1983, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4483 (boost 0.1983, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691023",
"player_name": "Jordan Walker",
"position": "RF",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.229,
"predicted_3B": 0.0,
"predicted_AB": 4.28,
"predicted_AVG": 0.237,
"predicted_BB": 0.3,
"predicted_H": 1.01,
"predicted_HR": 0.2,
"predicted_OBP": 0.291,
"predicted_R": 0.643,
"predicted_RBI": 0.65,
"predicted_SLG": 0.447,
"predicted_SO": 1.086
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2155,
"predicted_3B": 0.0004,
"predicted_AB": 4.197,
"predicted_AVG": 0.2414,
"predicted_BB": 0.2568,
"predicted_H": 1.01,
"predicted_HBP": 0.02,
"predicted_HR": 0.2076,
"predicted_OBP": 0.2872,
"predicted_R": 0.5808,
"predicted_RBI": 0.6614,
"predicted_SLG": 0.451,
"predicted_SO": 1.0585
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.229,
"after": 0.2155,
"delta": -0.0135,
"percent_delta": -0.059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.28,
"after": 4.197,
"delta": -0.083,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2414,
"delta": 0.0044,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.2568,
"delta": -0.0432,
"percent_delta": -0.144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.2076,
"delta": 0.0076,
"percent_delta": 0.038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.291,
"after": 0.2872,
"delta": -0.0038,
"percent_delta": -0.0131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.643,
"after": 0.5808,
"delta": -0.0622,
"percent_delta": -0.0967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.6614,
"delta": 0.0114,
"percent_delta": 0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.451,
"delta": 0.004,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.086,
"after": 1.0585,
"delta": -0.0275,
"percent_delta": -0.0253,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.28,
"after": 4.197,
"delta": -0.083,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2155,
"predicted_3B": 0.0004,
"predicted_AB": 4.197,
"predicted_AVG": 0.2456,
"predicted_BB": 0.2593,
"predicted_H": 1.0309,
"predicted_HBP": 0.02,
"predicted_HR": 0.2115,
"predicted_OBP": 0.2895,
"predicted_R": 0.6036,
"predicted_RBI": 0.6873,
"predicted_SLG": 0.4483,
"predicted_SO": 1.0482
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2155,
"after": 0.2155,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.197,
"after": 4.197,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2414,
"after": 0.2456,
"delta": 0.0042,
"percent_delta": 0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2568,
"after": 0.2593,
"delta": 0.0025,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.0309,
"delta": 0.0209,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2076,
"after": 0.2115,
"delta": 0.0039,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2872,
"after": 0.2895,
"delta": 0.0023,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5808,
"after": 0.6036,
"delta": 0.0228,
"percent_delta": 0.0393,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6614,
"after": 0.6873,
"delta": 0.0259,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.451,
"after": 0.4483,
"delta": -0.0027,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0585,
"after": 1.0482,
"delta": -0.0103,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.28), rates preserved: AVG=0.241 HR/AB=0.049",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2155,
"after": 0.0,
"delta": -0.2155,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.197,
"after": 4.0,
"delta": -0.197,
"percent_delta": -0.0469,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2593,
"after": 0.0,
"delta": -0.2593,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0309,
"after": 1.0,
"delta": -0.0309,
"percent_delta": -0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2115,
"after": 0.0,
"delta": -0.2115,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6873,
"after": 1.0,
"delta": 0.3127,
"percent_delta": 0.455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0482,
"after": 1.0,
"delta": -0.0482,
"percent_delta": -0.046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6873,
"after": 1.0,
"delta": 0.3127,
"percent_delta": 0.455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2593,
"after": 0.0,
"delta": -0.2593,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6036,
"after": 1.0,
"delta": 0.3964,
"percent_delta": 0.6567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6036,
"after": 1.0,
"delta": 0.3964,
"percent_delta": 0.6567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2456,
"after": 0.25,
"delta": 0.0044,
"percent_delta": 0.0179,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2895,
"after": 0.25,
"delta": -0.0395,
"percent_delta": -0.1364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4483,
"after": 0.25,
"delta": -0.1983,
"percent_delta": -0.4423,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4483,
"after": 0.25,
"delta": -0.1983,
"percent_delta": -0.4423,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2456,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2895,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4483,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2456,
"delta": -0.0044,
"percent_delta": -0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2895,
"delta": 0.0395,
"percent_delta": 0.1581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4483,
"delta": 0.1983,
"percent_delta": 0.7933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4483,
"delta": 0.1983,
"percent_delta": 0.7933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.229,
"after": 0.0,
"delta": -0.229,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.28,
"after": 4.0,
"delta": -0.28,
"percent_delta": -0.0654,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2456,
"delta": 0.0086,
"percent_delta": 0.0363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.0,
"delta": -0.01,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.291,
"after": 0.2895,
"delta": -0.0015,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.643,
"after": 1.0,
"delta": 0.357,
"percent_delta": 0.5552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.447,
"after": 0.4483,
"delta": 0.0013,
"percent_delta": 0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.086,
"after": 1.0,
"delta": -0.086,
"percent_delta": -0.0792,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.229 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.280 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.300 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.291 | - |
| predicted_R | 0.643 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.447 | - |
| predicted_SO | 1.086 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.215 | -0.014 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.197 | -0.083 |
| predicted_AVG | 0.241 | 0.004 |
| predicted_BB | 0.257 | -0.043 |
| predicted_H | 1.010 | 0.000 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.208 | 0.008 |
| predicted_OBP | 0.287 | -0.004 |
| predicted_R | 0.581 | -0.062 |
| predicted_RBI | 0.661 | 0.011 |
| predicted_SLG | 0.451 | 0.004 |
| predicted_SO | 1.058 | -0.028 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.215 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.197 | 0.000 |
| predicted_AVG | 0.246 | 0.004 |
| predicted_BB | 0.259 | 0.003 |
| predicted_H | 1.031 | 0.021 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.211 | 0.004 |
| predicted_OBP | 0.289 | 0.002 |
| predicted_R | 0.604 | 0.023 |
| predicted_RBI | 0.687 | 0.026 |
| predicted_SLG | 0.448 | -0.003 |
| predicted_SO | 1.048 | -0.010 |
AB rounded to 4 (raw=4.28), rates preserved: AVG=0.241 HR/AB=0.049
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.400)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.215 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.197 |
| predicted_AVG | 0.250 | 0.004 |
| predicted_BB | 0.000 | -0.259 |
| predicted_H | 1.000 | -0.031 |
| predicted_HR | 0.000 | -0.211 |
| predicted_OBP | 0.250 | -0.039 |
| predicted_R | 1.000 | 0.396 |
| predicted_RBI | 1.000 | 0.313 |
| predicted_SLG | 0.250 | -0.198 |
| predicted_SO | 1.000 | -0.048 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 3.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 0.000 | 5.000 | 0.1429 | 0.1429 | 0.2857 | 0.1429 | 0.0476 | 0.0476 | 0.0000 | 0.2381 |
| last_10 | 0.20 | 10 | - | 45.000 | 10.000 | 3.000 | 0.000 | 2.000 | 10.000 | 3.000 | 0.000 | 9.000 | 0.2222 | 0.2222 | 0.4222 | 0.2222 | 0.0444 | 0.2222 | 0.0000 | 0.2000 |
| season | 0.60 | 70 | - | 276.000 | 80.000 | 16.000 | 0.000 | 17.000 | 53.000 | 45.000 | 21.000 | 76.000 | 0.2899 | 0.3433 | 0.5326 | 0.2899 | 0.0616 | 0.1920 | 0.0761 | 0.2754 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1970 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.0840 |
| predicted_AVG | 0.2473 |
| predicted_BB | 0.1980 |
| predicted_H | 1.0100 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.2180 |
| predicted_OBP | 0.2821 |
| predicted_R | 0.4960 |
| predicted_RBI | 0.6770 |
| predicted_SLG | 0.4565 |
| predicted_SO | 1.0210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2290 | 0.1970 | 0.2155 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2800 | 4.0840 | 4.1970 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2473 | 0.2414 | model_form_blend |
| predicted_BB | 0.3000 | 0.1980 | 0.2568 | model_form_blend |
| predicted_H | 1.0100 | 1.0100 | 1.0100 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.2000 | 0.2180 | 0.2076 | model_form_blend |
| predicted_OBP | 0.2910 | 0.2821 | 0.2872 | model_form_blend |
| predicted_R | 0.6430 | 0.4960 | 0.5808 | model_form_blend |
| predicted_RBI | 0.6500 | 0.6770 | 0.6614 | model_form_blend |
| predicted_SLG | 0.4470 | 0.4565 | 0.4510 | model_form_blend |
| predicted_SO | 1.0860 | 1.0210 | 1.0585 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 242 |
| Season rows before report date | 242 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.29 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 1 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_SD@STL |
| game_type | full |
| mlbID | 691023 |
| playerID | 691023 |
| playerName | Jordan Walker |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 25.2 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.378 |
| sl_xwoba | 0.37 |
| sl_xba | 0.284 |
| sl_xslg | 0.521 |
| sl_sweet_spot_percent | 35.1 |
| sl_barrel_batted_rate | 14.1 |
| sl_hard_hit_percent | 52.7 |
| sl_exit_velocity_avg | 94.7 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 30.8 |
| sl_swing_percent | 52.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.143 | 0.000 | 0.000 | Hitting_2B | 0.174 | 0.000 | -0.174 | 0.000 |
| predicted_3B | 0.032 | 0.000 | 0.000 | Hitting_3B | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_AB | 3.750 | 4.000 | 4.000 | Hitting_AB | 3.803 | 3.000 | 0.197 | 1.000 |
| predicted_AVG | 0.241 | 0.250 | 0.250 | Hitting_AVG | 0.230 | 0.333 | 0.020 | -0.083 |
| predicted_BB | 0.365 | 0.000 | 0.000 | Hitting_BB | 0.344 | 1.000 | -0.344 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.023 | 1.000 | -0.023 | -1.000 |
| predicted_H | 0.900 | 1.000 | 1.000 | Hitting_H | 0.876 | 1.000 | 0.124 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_OBP | 0.321 | 0.400 | 0.250 | Hitting_OBP | 0.302 | 0.500 | 0.098 | -0.100 |
| predicted_R | 0.397 | 1.000 | 0.000 | Hitting_R | 0.413 | 0.000 | 0.587 | 1.000 |
| predicted_RBI | 0.410 | 3.000 | 0.000 | Hitting_RBI | 0.440 | 0.000 | 2.560 | 3.000 |
| predicted_SLG | 0.339 | 0.250 | 0.250 | Hitting_SLG | 0.317 | 0.333 | -0.067 | -0.083 |
| predicted_SO | 0.841 | 0.000 | 1.000 | Hitting_SO | 0.839 | 0.000 | -0.839 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 9 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_RBI: 0.4100 -> 3.0000 (boost 2.5900, better) |
| Biggest Deboost | predicted_SO: 0.8410 -> 0.0000 (deboost -0.8410, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 1 | 2 | - | predicted_AB: 3.7500 -> 3.6672 (deboost -0.0828, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.3279 -> 0.3368 (boost 0.0089, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_AB: 3.6672 -> 4.0000 (boost 0.3328, better) | predicted_RBI: 0.4112 -> 0.0000 (deboost -0.4112, worse) | AB rounded to 4 (raw=3.75), rates preserved: AVG=0.243 HR/AB=0.013 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4270 -> 0.0000 (deboost -0.4270, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3368 -> 0.2500 (deboost -0.0868, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 3 | 1 | 4 | 0 | predicted_RBI: 0.0000 -> 3.0000 (boost 3.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3368 (boost 0.0868, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691026",
"player_name": "Masyn Winn",
"position": "SS",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.143,
"predicted_3B": 0.032,
"predicted_AB": 3.75,
"predicted_AVG": 0.241,
"predicted_BB": 0.365,
"predicted_H": 0.9,
"predicted_HR": 0.06,
"predicted_OBP": 0.321,
"predicted_R": 0.397,
"predicted_RBI": 0.41,
"predicted_SLG": 0.339,
"predicted_SO": 0.841
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1287,
"predicted_3B": 0.0261,
"predicted_AB": 3.6672,
"predicted_AVG": 0.2439,
"predicted_BB": 0.3894,
"predicted_H": 0.892,
"predicted_HBP": 0.044,
"predicted_HR": 0.047,
"predicted_OBP": 0.323,
"predicted_R": 0.4109,
"predicted_RBI": 0.3957,
"predicted_SLG": 0.3279,
"predicted_SO": 0.7779
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.143,
"after": 0.1287,
"delta": -0.0143,
"percent_delta": -0.1,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0261,
"delta": -0.0059,
"percent_delta": -0.1844,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.75,
"after": 3.6672,
"delta": -0.0828,
"percent_delta": -0.0221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2439,
"delta": 0.0029,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.365,
"after": 0.3894,
"delta": 0.0244,
"percent_delta": 0.0668,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.892,
"delta": -0.008,
"percent_delta": -0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.047,
"delta": -0.013,
"percent_delta": -0.2167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.323,
"delta": 0.002,
"percent_delta": 0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 0.4109,
"delta": 0.0139,
"percent_delta": 0.035,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.3957,
"delta": -0.0143,
"percent_delta": -0.0349,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3279,
"delta": -0.0111,
"percent_delta": -0.0327,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.841,
"after": 0.7779,
"delta": -0.0631,
"percent_delta": -0.075,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.75,
"after": 3.6672,
"delta": -0.0828,
"percent_delta": -0.0221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 63
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1287,
"predicted_3B": 0.0261,
"predicted_AB": 3.6672,
"predicted_AVG": 0.2483,
"predicted_BB": 0.3932,
"predicted_H": 0.9105,
"predicted_HBP": 0.044,
"predicted_HR": 0.0479,
"predicted_OBP": 0.3211,
"predicted_R": 0.427,
"predicted_RBI": 0.4112,
"predicted_SLG": 0.3368,
"predicted_SO": 0.7704
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1287,
"after": 0.1287,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0261,
"after": 0.0261,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6672,
"after": 3.6672,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2439,
"after": 0.2483,
"delta": 0.0044,
"percent_delta": 0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3894,
"after": 0.3932,
"delta": 0.0038,
"percent_delta": 0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.892,
"after": 0.9105,
"delta": 0.0185,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.044,
"after": 0.044,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.047,
"after": 0.0479,
"delta": 0.0009,
"percent_delta": 0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3211,
"delta": -0.0019,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4109,
"after": 0.427,
"delta": 0.0161,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3957,
"after": 0.4112,
"delta": 0.0155,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3279,
"after": 0.3368,
"delta": 0.0089,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7779,
"after": 0.7704,
"delta": -0.0075,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3279,
"after": 0.3368,
"delta": 0.0089,
"percent_delta": 0.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.75), rates preserved: AVG=0.243 HR/AB=0.013",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1287,
"after": 0.0,
"delta": -0.1287,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0261,
"after": 0.0,
"delta": -0.0261,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6672,
"after": 4.0,
"delta": 0.3328,
"percent_delta": 0.0908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3932,
"after": 0.0,
"delta": -0.3932,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9105,
"after": 1.0,
"delta": 0.0895,
"percent_delta": 0.0983,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.044,
"after": 0.0,
"delta": -0.044,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0479,
"after": 0.0,
"delta": -0.0479,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4112,
"after": 0.0,
"delta": -0.4112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7704,
"after": 1.0,
"delta": 0.2296,
"percent_delta": 0.298,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.6672,
"after": 4.0,
"delta": 0.3328,
"percent_delta": 0.0908,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4112,
"after": 0.0,
"delta": -0.4112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9158,
"bvp": 0.0842
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.427,
"after": 0.0,
"delta": -0.427,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.427,
"after": 0.0,
"delta": -0.427,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2483,
"after": 0.25,
"delta": 0.0017,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3211,
"after": 0.25,
"delta": -0.0711,
"percent_delta": -0.2214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3368,
"after": 0.25,
"delta": -0.0868,
"percent_delta": -0.2577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3368,
"after": 0.25,
"delta": -0.0868,
"percent_delta": -0.2577,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 3.0,
"delta": 3.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2483,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3211,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3368,
"predicted_SO": 0.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2483,
"delta": -0.0017,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3211,
"delta": 0.0711,
"percent_delta": 0.2843,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3368,
"delta": 0.0868,
"percent_delta": 0.3471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3368,
"delta": 0.0868,
"percent_delta": 0.3471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.143,
"after": 0.0,
"delta": -0.143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.75,
"after": 4.0,
"delta": 0.25,
"percent_delta": 0.0667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2483,
"delta": 0.0073,
"percent_delta": 0.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.365,
"after": 0.0,
"delta": -0.365,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.0,
"delta": 0.1,
"percent_delta": 0.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3211,
"delta": 0.0001,
"percent_delta": 0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 1.0,
"delta": 0.603,
"percent_delta": 1.5189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 3.0,
"delta": 2.59,
"percent_delta": 6.3171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3368,
"delta": -0.0022,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.841,
"after": 0.0,
"delta": -0.841,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 5,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.41,
"after": 3.0,
"delta": 2.59,
"percent_delta": 6.3171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.841,
"after": 0.0,
"delta": -0.841,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.143 | - |
| predicted_3B | 0.032 | - |
| predicted_AB | 3.750 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.365 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.321 | - |
| predicted_R | 0.397 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.339 | - |
| predicted_SO | 0.841 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | -0.014 |
| predicted_3B | 0.026 | -0.006 |
| predicted_AB | 3.667 | -0.083 |
| predicted_AVG | 0.244 | 0.003 |
| predicted_BB | 0.389 | 0.024 |
| predicted_H | 0.892 | -0.008 |
| predicted_HBP | 0.044 | - |
| predicted_HR | 0.047 | -0.013 |
| predicted_OBP | 0.323 | 0.002 |
| predicted_R | 0.411 | 0.014 |
| predicted_RBI | 0.396 | -0.014 |
| predicted_SLG | 0.328 | -0.011 |
| predicted_SO | 0.778 | -0.063 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | 0.000 |
| predicted_3B | 0.026 | 0.000 |
| predicted_AB | 3.667 | 0.000 |
| predicted_AVG | 0.248 | 0.004 |
| predicted_BB | 0.393 | 0.004 |
| predicted_H | 0.910 | 0.018 |
| predicted_HBP | 0.044 | 0.000 |
| predicted_HR | 0.048 | 0.001 |
| predicted_OBP | 0.321 | -0.002 |
| predicted_R | 0.427 | 0.016 |
| predicted_RBI | 0.411 | 0.016 |
| predicted_SLG | 0.337 | 0.009 |
| predicted_SO | 0.770 | -0.008 |
AB rounded to 4 (raw=3.75), rates preserved: AVG=0.243 HR/AB=0.013
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.129 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 4.000 | 0.333 |
| predicted_AVG | 0.250 | 0.002 |
| predicted_BB | 0.000 | -0.393 |
| predicted_H | 1.000 | 0.090 |
| predicted_HR | 0.000 | -0.048 |
| predicted_OBP | 0.250 | -0.071 |
| predicted_R | 0.000 | -0.427 |
| predicted_RBI | 0.000 | -0.411 |
| predicted_SLG | 0.250 | -0.087 |
| predicted_SO | 1.000 | 0.230 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 3.000 | 3.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 2.000 | 0.2857 | 0.3889 | 0.2857 | 0.2857 | 0.0000 | 0.0714 | 0.2143 | 0.1429 |
| last_10 | 0.20 | 10 | - | 36.000 | 9.000 | 1.000 | 0.000 | 0.000 | 4.000 | 5.000 | 4.000 | 5.000 | 0.2500 | 0.3171 | 0.2778 | 0.2500 | 0.0000 | 0.1111 | 0.1111 | 0.1389 |
| season | 0.60 | 63 | - | 235.000 | 55.000 | 9.000 | 2.000 | 2.000 | 26.000 | 25.000 | 23.000 | 53.000 | 0.2340 | 0.3097 | 0.3149 | 0.2340 | 0.0085 | 0.1106 | 0.0979 | 0.2255 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1090 |
| predicted_3B | 0.0180 |
| predicted_AB | 3.5530 |
| predicted_AVG | 0.2478 |
| predicted_BB | 0.4230 |
| predicted_H | 0.8810 |
| predicted_HBP | 0.0440 |
| predicted_HR | 0.0290 |
| predicted_OBP | 0.3257 |
| predicted_R | 0.4300 |
| predicted_RBI | 0.3760 |
| predicted_SLG | 0.3125 |
| predicted_SO | 0.6910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1430 | 0.1090 | 0.1287 | model_form_blend |
| predicted_3B | 0.0320 | 0.0180 | 0.0261 | model_form_blend |
| predicted_AB | 3.7500 | 3.5530 | 3.6672 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2478 | 0.2439 | model_form_blend |
| predicted_BB | 0.3650 | 0.4230 | 0.3894 | model_form_blend |
| predicted_H | 0.9000 | 0.8810 | 0.8920 | model_form_blend |
| predicted_HBP | - | 0.0440 | 0.0440 | form_only |
| predicted_HR | 0.0600 | 0.0290 | 0.0470 | model_form_blend |
| predicted_OBP | 0.3210 | 0.3257 | 0.3230 | model_form_blend |
| predicted_R | 0.3970 | 0.4300 | 0.4109 | model_form_blend |
| predicted_RBI | 0.4100 | 0.3760 | 0.3957 | model_form_blend |
| predicted_SLG | 0.3390 | 0.3125 | 0.3279 | model_form_blend |
| predicted_SO | 0.8410 | 0.6910 | 0.7779 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 218 |
| Season rows before report date | 218 |
| Report year | 2026 |
| Profile rows used | 63 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.234 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 1 |
| BaseRunning_PO | 1 |
| BaseRunning_SB | 0 |
| Fielding_E | 1 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_SD@STL |
| game_type | full |
| mlbID | 691026 |
| playerID | 691026 |
| playerName | Masyn Winn |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 9.1 |
| sl_woba | 0.287 |
| sl_xwoba | 0.308 |
| sl_xba | 0.259 |
| sl_xslg | 0.33 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 3.2 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 87.2 |
| sl_launch_angle_avg | 12.5 |
| sl_whiff_percent | 22.7 |
| sl_swing_percent | 41.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.167 | 0.000 | 0.000 | Hitting_2B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_3B | 0.167 | 0.000 | 0.000 | Hitting_3B | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_AB | 3.500 | 5.000 | 4.000 | Hitting_AB | 3.500 | 2.000 | 1.500 | 3.000 |
| predicted_AVG | 0.243 | 0.000 | 0.250 | Hitting_AVG | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_BB | 0.167 | 0.000 | 0.000 | Hitting_BB | 0.167 | 1.000 | -0.167 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.840 | 0.000 | 1.000 | Hitting_H | 1.000 | 0.000 | -1.000 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_OBP | 0.304 | 0.000 | 0.250 | Hitting_OBP | 0.318 | 0.333 | -0.318 | -0.333 |
| predicted_R | 0.500 | 0.000 | 1.000 | Hitting_R | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.833 | 0.000 | -0.833 | 0.000 |
| predicted_SLG | 0.452 | 0.000 | 0.250 | Hitting_SLG | 0.571 | 0.000 | -0.571 | 0.000 |
| predicted_SO | 0.333 | 1.000 | 0.000 | Hitting_SO | 0.333 | 0.000 | 0.667 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.5000 -> 5.0000 (boost 1.5000, better) |
| Biggest Deboost | predicted_H: 0.8400 -> 0.0000 (deboost -0.8400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.4520 -> 0.4610 (boost 0.0090, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.4610 -> 0.5049 (boost 0.0439, better) | predicted_OBP: 0.3032 -> 0.2860 (deboost -0.0172, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_AB: 3.5492 -> 4.0000 (boost 0.4508, better) | predicted_SO: 0.3740 -> 0.0000 (deboost -0.3740, better) | AB rounded to 4 (raw=3.55), rates preserved: AVG=0.247 HR/AB=0.042 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5313 -> 1.0000 (boost 0.4687, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.5049 -> 0.2500 (deboost -0.2549, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 1 | 4 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.5049 (boost 0.2549, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691458",
"player_name": "Blaze Jordan",
"position": "3B",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.167,
"predicted_3B": 0.167,
"predicted_AB": 3.5,
"predicted_AVG": 0.243,
"predicted_BB": 0.167,
"predicted_H": 0.84,
"predicted_HR": 0.14,
"predicted_OBP": 0.304,
"predicted_R": 0.5,
"predicted_RBI": 0.55,
"predicted_SLG": 0.452,
"predicted_SO": 0.333
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.174,
"predicted_3B": 0.1473,
"predicted_AB": 3.5492,
"predicted_AVG": 0.2443,
"predicted_BB": 0.1906,
"predicted_H": 0.8597,
"predicted_HBP": 0.019,
"predicted_HR": 0.1459,
"predicted_OBP": 0.3032,
"predicted_R": 0.5113,
"predicted_RBI": 0.5767,
"predicted_SLG": 0.461,
"predicted_SO": 0.3777
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.174,
"delta": 0.007,
"percent_delta": 0.0419,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.167,
"after": 0.1473,
"delta": -0.0197,
"percent_delta": -0.118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5,
"after": 3.5492,
"delta": 0.0492,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2443,
"delta": 0.0013,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.167,
"after": 0.1906,
"delta": 0.0236,
"percent_delta": 0.1413,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.8597,
"delta": 0.0197,
"percent_delta": 0.0235,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1459,
"delta": 0.0059,
"percent_delta": 0.0421,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3032,
"delta": -0.0008,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.5113,
"delta": 0.0113,
"percent_delta": 0.0226,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5767,
"delta": 0.0267,
"percent_delta": 0.0485,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.461,
"delta": 0.009,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.333,
"after": 0.3777,
"delta": 0.0447,
"percent_delta": 0.1342,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.461,
"delta": 0.009,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 6,
"season": 6
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.174,
"predicted_3B": 0.1473,
"predicted_AB": 3.5492,
"predicted_AVG": 0.2472,
"predicted_BB": 0.1924,
"predicted_H": 0.8775,
"predicted_HBP": 0.019,
"predicted_HR": 0.1486,
"predicted_OBP": 0.286,
"predicted_R": 0.5313,
"predicted_RBI": 0.5993,
"predicted_SLG": 0.5049,
"predicted_SO": 0.374
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.174,
"after": 0.174,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1473,
"after": 0.1473,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5492,
"after": 3.5492,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2443,
"after": 0.2472,
"delta": 0.0029,
"percent_delta": 0.0119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1906,
"after": 0.1924,
"delta": 0.0018,
"percent_delta": 0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8597,
"after": 0.8775,
"delta": 0.0178,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1459,
"after": 0.1486,
"delta": 0.0027,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3032,
"after": 0.286,
"delta": -0.0172,
"percent_delta": -0.0567,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5113,
"after": 0.5313,
"delta": 0.02,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5767,
"after": 0.5993,
"delta": 0.0226,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.461,
"after": 0.5049,
"delta": 0.0439,
"percent_delta": 0.0952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.3777,
"after": 0.374,
"delta": -0.0037,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.461,
"after": 0.5049,
"delta": 0.0439,
"percent_delta": 0.0952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3032,
"after": 0.286,
"delta": -0.0172,
"percent_delta": -0.0567,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.55), rates preserved: AVG=0.247 HR/AB=0.042",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.174,
"after": 0.0,
"delta": -0.174,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1473,
"after": 0.0,
"delta": -0.1473,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.5492,
"after": 4.0,
"delta": 0.4508,
"percent_delta": 0.127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8775,
"after": 1.0,
"delta": 0.1225,
"percent_delta": 0.1396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1486,
"after": 0.0,
"delta": -0.1486,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5993,
"after": 1.0,
"delta": 0.4007,
"percent_delta": 0.6686,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.374,
"after": 0.0,
"delta": -0.374,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5492,
"after": 4.0,
"delta": 0.4508,
"percent_delta": 0.127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.374,
"after": 0.0,
"delta": -0.374,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5313,
"after": 1.0,
"delta": 0.4687,
"percent_delta": 0.8822,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5313,
"after": 1.0,
"delta": 0.4687,
"percent_delta": 0.8822,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2472,
"after": 0.25,
"delta": 0.0028,
"percent_delta": 0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.25,
"delta": -0.036,
"percent_delta": -0.1259,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5049,
"after": 0.25,
"delta": -0.2549,
"percent_delta": -0.5049,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5049,
"after": 0.25,
"delta": -0.2549,
"percent_delta": -0.5049,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 2,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2472,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.286,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5049,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2472,
"delta": -0.0028,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.286,
"delta": 0.036,
"percent_delta": 0.1438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5049,
"delta": 0.2549,
"percent_delta": 1.0195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5049,
"delta": 0.2549,
"percent_delta": 1.0195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.5,
"after": 5.0,
"delta": 1.5,
"percent_delta": 0.4286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2472,
"delta": 0.0042,
"percent_delta": 0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.0,
"delta": -0.84,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.286,
"delta": -0.018,
"percent_delta": -0.0592,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.5049,
"delta": 0.0529,
"percent_delta": 0.117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.333,
"after": 1.0,
"delta": 0.667,
"percent_delta": 2.003,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5,
"after": 5.0,
"delta": 1.5,
"percent_delta": 0.4286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.84,
"after": 0.0,
"delta": -0.84,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.167 | - |
| predicted_3B | 0.167 | - |
| predicted_AB | 3.500 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.167 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.452 | - |
| predicted_SO | 0.333 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.174 | 0.007 |
| predicted_3B | 0.147 | -0.020 |
| predicted_AB | 3.549 | 0.049 |
| predicted_AVG | 0.244 | 0.001 |
| predicted_BB | 0.191 | 0.024 |
| predicted_H | 0.860 | 0.020 |
| predicted_HBP | 0.019 | - |
| predicted_HR | 0.146 | 0.006 |
| predicted_OBP | 0.303 | -0.001 |
| predicted_R | 0.511 | 0.011 |
| predicted_RBI | 0.577 | 0.027 |
| predicted_SLG | 0.461 | 0.009 |
| predicted_SO | 0.378 | 0.045 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.174 | 0.000 |
| predicted_3B | 0.147 | 0.000 |
| predicted_AB | 3.549 | 0.000 |
| predicted_AVG | 0.247 | 0.003 |
| predicted_BB | 0.192 | 0.002 |
| predicted_H | 0.877 | 0.018 |
| predicted_HBP | 0.019 | 0.000 |
| predicted_HR | 0.149 | 0.003 |
| predicted_OBP | 0.286 | -0.017 |
| predicted_R | 0.531 | 0.020 |
| predicted_RBI | 0.599 | 0.023 |
| predicted_SLG | 0.505 | 0.044 |
| predicted_SO | 0.374 | -0.004 |
AB rounded to 4 (raw=3.55), rates preserved: AVG=0.247 HR/AB=0.042
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.174 |
| predicted_3B | 0.000 | -0.147 |
| predicted_AB | 4.000 | 0.451 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 0.000 | -0.192 |
| predicted_H | 1.000 | 0.123 |
| predicted_HR | 0.000 | -0.149 |
| predicted_OBP | 0.250 | -0.036 |
| predicted_R | 1.000 | 0.469 |
| predicted_RBI | 1.000 | 0.401 |
| predicted_SLG | 0.250 | -0.255 |
| predicted_SO | 0.000 | -0.374 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 1.000 | 1.000 | 4.000 | 3.000 | 1.000 | 0.000 | 0.2353 | 0.2778 | 0.5882 | 0.2353 | 0.0588 | 0.2353 | 0.0588 | 0.0000 |
| last_10 | 0.20 | 6 | - | 21.000 | 6.000 | 1.000 | 1.000 | 1.000 | 5.000 | 3.000 | 1.000 | 2.000 | 0.2857 | 0.3182 | 0.5714 | 0.2857 | 0.0476 | 0.2381 | 0.0476 | 0.0952 |
| season | 0.60 | 6 | - | 21.000 | 6.000 | 1.000 | 1.000 | 1.000 | 5.000 | 3.000 | 1.000 | 2.000 | 0.2857 | 0.3182 | 0.5714 | 0.2857 | 0.0476 | 0.2381 | 0.0476 | 0.0952 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1920 |
| predicted_3B | 0.0970 |
| predicted_AB | 3.6750 |
| predicted_AVG | 0.2476 |
| predicted_BB | 0.2510 |
| predicted_H | 0.9100 |
| predicted_HBP | 0.0190 |
| predicted_HR | 0.1610 |
| predicted_OBP | 0.3012 |
| predicted_R | 0.5400 |
| predicted_RBI | 0.6450 |
| predicted_SLG | 0.4841 |
| predicted_SO | 0.4920 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.1920 | 0.1740 | model_form_blend |
| predicted_3B | 0.1670 | 0.0970 | 0.1473 | model_form_blend |
| predicted_AB | 3.5000 | 3.6750 | 3.5492 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2476 | 0.2443 | model_form_blend |
| predicted_BB | 0.1670 | 0.2510 | 0.1906 | model_form_blend |
| predicted_H | 0.8400 | 0.9100 | 0.8597 | model_form_blend |
| predicted_HBP | - | 0.0190 | 0.0190 | form_only |
| predicted_HR | 0.1400 | 0.1610 | 0.1459 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3012 | 0.3032 | model_form_blend |
| predicted_R | 0.5000 | 0.5400 | 0.5113 | model_form_blend |
| predicted_RBI | 0.5500 | 0.6450 | 0.5767 | model_form_blend |
| predicted_SLG | 0.4520 | 0.4841 | 0.4610 | model_form_blend |
| predicted_SO | 0.3330 | 0.4920 | 0.3777 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 6 |
| Season rows before report date | 6 |
| Report year | 2026 |
| Profile rows used | 6 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.286 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_SD@STL |
| game_type | full |
| mlbID | 691458 |
| playerID | 691458 |
| playerName | Blaze Jordan |
| pos | 1B |
| started | True |
| startingPosition | 3B |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 9.1 |
| sl_bb_percent | 4.5 |
| sl_woba | 0.377 |
| sl_xwoba | 0.284 |
| sl_xba | 0.227 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 10.5 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 57.9 |
| sl_exit_velocity_avg | 93.6 |
| sl_launch_angle_avg | 0.8 |
| sl_whiff_percent | 17.5 |
| sl_swing_percent | 51.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.257 | 1.000 | 0.000 | Hitting_2B | 0.289 | 0.000 | 0.711 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.160 | 5.000 | 4.000 | Hitting_AB | 4.049 | 4.000 | 0.951 | 1.000 |
| predicted_AVG | 0.245 | 0.400 | 0.250 | Hitting_AVG | 0.280 | 0.250 | 0.120 | 0.150 |
| predicted_BB | 0.357 | 0.000 | 0.000 | Hitting_BB | 0.390 | 0.000 | -0.390 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 2.000 | 1.000 | Hitting_H | 1.134 | 1.000 | 0.866 | 1.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.150 | 0.000 | -0.150 | 0.000 |
| predicted_OBP | 0.309 | 0.400 | 0.250 | Hitting_OBP | 0.344 | 0.250 | 0.056 | 0.150 |
| predicted_R | 0.557 | 1.000 | 1.000 | Hitting_R | 0.537 | 0.000 | 0.463 | 1.000 |
| predicted_RBI | 0.680 | 0.000 | 1.000 | Hitting_RBI | 0.707 | 1.000 | -0.707 | -1.000 |
| predicted_SLG | 0.475 | 0.600 | 0.250 | Hitting_SLG | 0.463 | 0.250 | 0.137 | 0.350 |
| predicted_SO | 0.686 | 1.000 | 1.000 | Hitting_SO | 0.736 | 1.000 | 0.264 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 9 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 3 |
| Better Metrics | 5 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 1.0200 -> 2.0000 (boost 0.9800, better) |
| Biggest Deboost | predicted_RBI: 0.6800 -> 0.0000 (deboost -0.6800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.4750 -> 0.4845 (boost 0.0095, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2527 -> 0.2580 (boost 0.0053, better) | predicted_SLG: 0.4845 -> 0.4788 (deboost -0.0057, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.6814 -> 1.0000 (boost 0.3186, worse) | predicted_BB: 0.3211 -> 0.0000 (deboost -0.3211, worse) | AB rounded to 4 (raw=4.16), rates preserved: AVG=0.257 HR/AB=0.053 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5837 -> 1.0000 (boost 0.4163, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4788 -> 0.2500 (deboost -0.2288, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 3 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4788 (boost 0.2288, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676475",
"player_name": "Alec Burleson",
"position": "1B",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.257,
"predicted_3B": 0.0,
"predicted_AB": 4.16,
"predicted_AVG": 0.245,
"predicted_BB": 0.357,
"predicted_H": 1.02,
"predicted_HR": 0.2,
"predicted_OBP": 0.309,
"predicted_R": 0.557,
"predicted_RBI": 0.68,
"predicted_SLG": 0.475,
"predicted_SO": 0.686
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2536,
"predicted_3B": 0.0004,
"predicted_AB": 4.1388,
"predicted_AVG": 0.2527,
"predicted_BB": 0.318,
"predicted_H": 1.0463,
"predicted_HBP": 0.02,
"predicted_HR": 0.2157,
"predicted_OBP": 0.3087,
"predicted_R": 0.5617,
"predicted_RBI": 0.7063,
"predicted_SLG": 0.4845,
"predicted_SO": 0.6881
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.257,
"after": 0.2536,
"delta": -0.0034,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.16,
"after": 4.1388,
"delta": -0.0212,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2527,
"delta": 0.0077,
"percent_delta": 0.0314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.357,
"after": 0.318,
"delta": -0.039,
"percent_delta": -0.1092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0463,
"delta": 0.0263,
"percent_delta": 0.0258,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.2157,
"delta": 0.0157,
"percent_delta": 0.0785,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3087,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.557,
"after": 0.5617,
"delta": 0.0047,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.68,
"after": 0.7063,
"delta": 0.0263,
"percent_delta": 0.0387,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.4845,
"delta": 0.0095,
"percent_delta": 0.02,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.686,
"after": 0.6881,
"delta": 0.0021,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.4845,
"delta": 0.0095,
"percent_delta": 0.02,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2536,
"predicted_3B": 0.0004,
"predicted_AB": 4.1388,
"predicted_AVG": 0.258,
"predicted_BB": 0.3211,
"predicted_H": 1.068,
"predicted_HBP": 0.02,
"predicted_HR": 0.2197,
"predicted_OBP": 0.3115,
"predicted_R": 0.5837,
"predicted_RBI": 0.734,
"predicted_SLG": 0.4788,
"predicted_SO": 0.6814
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2536,
"after": 0.2536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1388,
"after": 4.1388,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2527,
"after": 0.258,
"delta": 0.0053,
"percent_delta": 0.021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.318,
"after": 0.3211,
"delta": 0.0031,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0463,
"after": 1.068,
"delta": 0.0217,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2157,
"after": 0.2197,
"delta": 0.004,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3087,
"after": 0.3115,
"delta": 0.0028,
"percent_delta": 0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5617,
"after": 0.5837,
"delta": 0.022,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7063,
"after": 0.734,
"delta": 0.0277,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4845,
"after": 0.4788,
"delta": -0.0057,
"percent_delta": -0.0118,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6881,
"after": 0.6814,
"delta": -0.0067,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2527,
"after": 0.258,
"delta": 0.0053,
"percent_delta": 0.021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4845,
"after": 0.4788,
"delta": -0.0057,
"percent_delta": -0.0118,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.16), rates preserved: AVG=0.257 HR/AB=0.053",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2536,
"after": 0.0,
"delta": -0.2536,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1388,
"after": 4.0,
"delta": -0.1388,
"percent_delta": -0.0335,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3211,
"after": 0.0,
"delta": -0.3211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.068,
"after": 1.0,
"delta": -0.068,
"percent_delta": -0.0637,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2197,
"after": 0.0,
"delta": -0.2197,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.734,
"after": 1.0,
"delta": 0.266,
"percent_delta": 0.3624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6814,
"after": 1.0,
"delta": 0.3186,
"percent_delta": 0.4676,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6814,
"after": 1.0,
"delta": 0.3186,
"percent_delta": 0.4676,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3211,
"after": 0.0,
"delta": -0.3211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5837,
"after": 1.0,
"delta": 0.4163,
"percent_delta": 0.7132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5837,
"after": 1.0,
"delta": 0.4163,
"percent_delta": 0.7132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.25,
"delta": -0.008,
"percent_delta": -0.031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3115,
"after": 0.25,
"delta": -0.0615,
"percent_delta": -0.1974,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4788,
"after": 0.25,
"delta": -0.2288,
"percent_delta": -0.4779,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4788,
"after": 0.25,
"delta": -0.2288,
"percent_delta": -0.4779,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.258,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3115,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4788,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.258,
"delta": 0.008,
"percent_delta": 0.0321,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3115,
"delta": 0.0615,
"percent_delta": 0.2458,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4788,
"delta": 0.2288,
"percent_delta": 0.915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4788,
"delta": 0.2288,
"percent_delta": 0.915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.257,
"after": 1.0,
"delta": 0.743,
"percent_delta": 2.8911,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.16,
"after": 5.0,
"delta": 0.84,
"percent_delta": 0.2019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.258,
"delta": 0.013,
"percent_delta": 0.0531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.357,
"after": 0.0,
"delta": -0.357,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 2.0,
"delta": 0.98,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3115,
"delta": 0.0025,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.557,
"after": 1.0,
"delta": 0.443,
"percent_delta": 0.7953,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.68,
"after": 0.0,
"delta": -0.68,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.475,
"after": 0.4788,
"delta": 0.0038,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.686,
"after": 1.0,
"delta": 0.314,
"percent_delta": 0.4577,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 6,
"deboosted_metrics": 3,
"better_metrics": 5,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.02,
"after": 2.0,
"delta": 0.98,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.68,
"after": 0.0,
"delta": -0.68,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.257 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.160 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.357 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.557 | - |
| predicted_RBI | 0.680 | - |
| predicted_SLG | 0.475 | - |
| predicted_SO | 0.686 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.254 | -0.003 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.139 | -0.021 |
| predicted_AVG | 0.253 | 0.008 |
| predicted_BB | 0.318 | -0.039 |
| predicted_H | 1.046 | 0.026 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.216 | 0.016 |
| predicted_OBP | 0.309 | -0.000 |
| predicted_R | 0.562 | 0.005 |
| predicted_RBI | 0.706 | 0.026 |
| predicted_SLG | 0.484 | 0.010 |
| predicted_SO | 0.688 | 0.002 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.254 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.139 | 0.000 |
| predicted_AVG | 0.258 | 0.005 |
| predicted_BB | 0.321 | 0.003 |
| predicted_H | 1.068 | 0.022 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.220 | 0.004 |
| predicted_OBP | 0.311 | 0.003 |
| predicted_R | 0.584 | 0.022 |
| predicted_RBI | 0.734 | 0.028 |
| predicted_SLG | 0.479 | -0.006 |
| predicted_SO | 0.681 | -0.007 |
AB rounded to 4 (raw=4.16), rates preserved: AVG=0.257 HR/AB=0.053
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.254 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.139 |
| predicted_AVG | 0.250 | -0.008 |
| predicted_BB | 0.000 | -0.321 |
| predicted_H | 1.000 | -0.068 |
| predicted_HR | 0.000 | -0.220 |
| predicted_OBP | 0.250 | -0.061 |
| predicted_R | 1.000 | 0.416 |
| predicted_RBI | 1.000 | 0.266 |
| predicted_SLG | 0.250 | -0.229 |
| predicted_SO | 1.000 | 0.319 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 5.000 | 1.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 3.000 | 0.2273 | 0.2273 | 0.4091 | 0.2273 | 0.0454 | 0.1364 | 0.0000 | 0.1364 |
| last_10 | 0.20 | 10 | - | 44.000 | 11.000 | 3.000 | 0.000 | 5.000 | 10.000 | 8.000 | 2.000 | 7.000 | 0.2500 | 0.2826 | 0.6591 | 0.2500 | 0.1136 | 0.2273 | 0.0454 | 0.1591 |
| season | 0.60 | 70 | - | 277.000 | 78.000 | 18.000 | 0.000 | 13.000 | 52.000 | 39.000 | 25.000 | 48.000 | 0.2816 | 0.3431 | 0.4874 | 0.2816 | 0.0469 | 0.1877 | 0.0902 | 0.1733 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2490 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.1100 |
| predicted_AVG | 0.2632 |
| predicted_BB | 0.2650 |
| predicted_H | 1.0820 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.2370 |
| predicted_OBP | 0.3083 |
| predicted_R | 0.5680 |
| predicted_RBI | 0.7420 |
| predicted_SLG | 0.4975 |
| predicted_SO | 0.6910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2570 | 0.2490 | 0.2536 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1600 | 4.1100 | 4.1388 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2632 | 0.2527 | model_form_blend |
| predicted_BB | 0.3570 | 0.2650 | 0.3180 | model_form_blend |
| predicted_H | 1.0200 | 1.0820 | 1.0463 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.2000 | 0.2370 | 0.2157 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3083 | 0.3087 | model_form_blend |
| predicted_R | 0.5570 | 0.5680 | 0.5617 | model_form_blend |
| predicted_RBI | 0.6800 | 0.7420 | 0.7063 | model_form_blend |
| predicted_SLG | 0.4750 | 0.4975 | 0.4845 | model_form_blend |
| predicted_SO | 0.6860 | 0.6910 | 0.6881 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 246 |
| Season rows before report date | 246 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.282 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_SD@STL |
| game_type | full |
| mlbID | 676475 |
| playerID | 676475 |
| playerName | Alec Burleson |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 15.4 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.361 |
| sl_xwoba | 0.39 |
| sl_xba | 0.297 |
| sl_xslg | 0.558 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 11.5 |
| sl_hard_hit_percent | 47.7 |
| sl_exit_velocity_avg | 91.6 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 20.8 |
| sl_swing_percent | 50.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.128 | 0.000 | 0.000 | Hitting_2B | 0.119 | 0.000 | -0.119 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.513 | 5.000 | 3.000 | Hitting_AB | 2.774 | 1.000 | 2.226 | 4.000 |
| predicted_AVG | 0.271 | 0.200 | 0.333 | Hitting_AVG | 0.223 | 0.000 | -0.023 | 0.200 |
| predicted_BB | 0.179 | 0.000 | 0.000 | Hitting_BB | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.240 | 1.000 | 1.000 | Hitting_H | 0.619 | 0.000 | 0.381 | 1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.060 | 0.000 | -0.060 | 0.000 |
| predicted_OBP | 0.303 | 0.200 | 0.333 | Hitting_OBP | 0.283 | 0.000 | -0.083 | 0.200 |
| predicted_R | 0.205 | 0.000 | 0.000 | Hitting_R | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_RBI | 0.150 | 0.000 | 0.000 | Hitting_RBI | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_SLG | 0.374 | 0.200 | 0.333 | Hitting_SLG | 0.330 | 0.000 | -0.130 | 0.200 |
| predicted_SO | 0.436 | 1.000 | 1.000 | Hitting_SO | 0.524 | 0.000 | 0.476 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 2.5130 -> 5.0000 (boost 2.4870, better) |
| Biggest Deboost | predicted_R: 0.2050 -> 0.0000 (deboost -0.2050, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 6 | 0 | predicted_H: 0.2400 -> 0.4782 (boost 0.2382, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3790 -> 0.2731 (deboost -0.1059, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_SO: 0.4585 -> 1.0000 (boost 0.5415, worse) | predicted_RBI: 0.2416 -> 0.0000 (deboost -0.2416, worse) | AB rounded to 3 (raw=2.67), rates preserved: AVG=0.183 HR/AB=0.014 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2535 -> 0.0000 (deboost -0.2535, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1829 -> 0.3330 (boost 0.1501, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 5.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1829 (deboost -0.1501, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665877",
"player_name": "José Fermín",
"position": "CF",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.128,
"predicted_3B": 0.0,
"predicted_AB": 2.513,
"predicted_AVG": 0.271,
"predicted_BB": 0.179,
"predicted_H": 0.24,
"predicted_HR": 0.03,
"predicted_OBP": 0.303,
"predicted_R": 0.205,
"predicted_RBI": 0.15,
"predicted_SLG": 0.374,
"predicted_SO": 0.436
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1238,
"predicted_3B": 0.0008,
"predicted_AB": 2.6683,
"predicted_AVG": 0.2799,
"predicted_BB": 0.1724,
"predicted_H": 0.4782,
"predicted_HBP": 0.006,
"predicted_HR": 0.0377,
"predicted_OBP": 0.3144,
"predicted_R": 0.2439,
"predicted_RBI": 0.2325,
"predicted_SLG": 0.379,
"predicted_SO": 0.463
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.128,
"after": 0.1238,
"delta": -0.0042,
"percent_delta": -0.0328,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.513,
"after": 2.6683,
"delta": 0.1553,
"percent_delta": 0.0618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.2799,
"delta": 0.0089,
"percent_delta": 0.0328,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.179,
"after": 0.1724,
"delta": -0.0066,
"percent_delta": -0.0369,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 0.4782,
"delta": 0.2382,
"percent_delta": 0.9925,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0377,
"delta": 0.0077,
"percent_delta": 0.2567,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.3144,
"delta": 0.0114,
"percent_delta": 0.0376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.205,
"after": 0.2439,
"delta": 0.0389,
"percent_delta": 0.1898,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.2325,
"delta": 0.0825,
"percent_delta": 0.55,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.379,
"delta": 0.005,
"percent_delta": 0.0134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.436,
"after": 0.463,
"delta": 0.027,
"percent_delta": 0.0619,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 6,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.24,
"after": 0.4782,
"delta": 0.2382,
"percent_delta": 0.9925,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 39
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1238,
"predicted_3B": 0.0008,
"predicted_AB": 2.6683,
"predicted_AVG": 0.1829,
"predicted_BB": 0.1741,
"predicted_H": 0.4881,
"predicted_HBP": 0.006,
"predicted_HR": 0.0384,
"predicted_OBP": 0.233,
"predicted_R": 0.2535,
"predicted_RBI": 0.2416,
"predicted_SLG": 0.2731,
"predicted_SO": 0.4585
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1238,
"after": 0.1238,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6683,
"after": 2.6683,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2799,
"after": 0.1829,
"delta": -0.097,
"percent_delta": -0.3466,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1724,
"after": 0.1741,
"delta": 0.0017,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4782,
"after": 0.4881,
"delta": 0.0099,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0377,
"after": 0.0384,
"delta": 0.0007,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3144,
"after": 0.233,
"delta": -0.0814,
"percent_delta": -0.2589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2439,
"after": 0.2535,
"delta": 0.0096,
"percent_delta": 0.0394,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2325,
"after": 0.2416,
"delta": 0.0091,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.2731,
"delta": -0.1059,
"percent_delta": -0.2794,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.463,
"after": 0.4585,
"delta": -0.0045,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.379,
"after": 0.2731,
"delta": -0.1059,
"percent_delta": -0.2794,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.67), rates preserved: AVG=0.183 HR/AB=0.014",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1238,
"after": 0.0,
"delta": -0.1238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6683,
"after": 3.0,
"delta": 0.3317,
"percent_delta": 0.1243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1741,
"after": 0.0,
"delta": -0.1741,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4881,
"after": 1.0,
"delta": 0.5119,
"percent_delta": 1.0488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0384,
"after": 0.0,
"delta": -0.0384,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2416,
"after": 0.0,
"delta": -0.2416,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4585,
"after": 1.0,
"delta": 0.5415,
"percent_delta": 1.181,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.4585,
"after": 1.0,
"delta": 0.5415,
"percent_delta": 1.181,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2416,
"after": 0.0,
"delta": -0.2416,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2535,
"after": 0.0,
"delta": -0.2535,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2535,
"after": 0.0,
"delta": -0.2535,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1829,
"after": 0.333,
"delta": 0.1501,
"percent_delta": 0.8207,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.233,
"after": 0.333,
"delta": 0.1,
"percent_delta": 0.4292,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2731,
"after": 0.333,
"delta": 0.0599,
"percent_delta": 0.2193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1829,
"after": 0.333,
"delta": 0.1501,
"percent_delta": 0.8207,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.1829,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.233,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2731,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1829,
"delta": -0.1501,
"percent_delta": -0.4507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.233,
"delta": -0.1,
"percent_delta": -0.3004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2731,
"delta": -0.0599,
"percent_delta": -0.1799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1829,
"delta": -0.1501,
"percent_delta": -0.4507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.128,
"after": 0.0,
"delta": -0.128,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.513,
"after": 5.0,
"delta": 2.487,
"percent_delta": 0.9897,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.1829,
"delta": -0.0881,
"percent_delta": -0.3251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.179,
"after": 0.0,
"delta": -0.179,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 1.0,
"delta": 0.76,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.233,
"delta": -0.07,
"percent_delta": -0.231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.205,
"after": 0.0,
"delta": -0.205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.2731,
"delta": -0.1009,
"percent_delta": -0.2698,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.436,
"after": 1.0,
"delta": 0.564,
"percent_delta": 1.2936,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.513,
"after": 5.0,
"delta": 2.487,
"percent_delta": 0.9897,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.205,
"after": 0.0,
"delta": -0.205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.128 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.513 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.179 | - |
| predicted_H | 0.240 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.303 | - |
| predicted_R | 0.205 | - |
| predicted_RBI | 0.150 | - |
| predicted_SLG | 0.374 | - |
| predicted_SO | 0.436 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.124 | -0.004 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.668 | 0.155 |
| predicted_AVG | 0.280 | 0.009 |
| predicted_BB | 0.172 | -0.007 |
| predicted_H | 0.478 | 0.238 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.038 | 0.008 |
| predicted_OBP | 0.314 | 0.011 |
| predicted_R | 0.244 | 0.039 |
| predicted_RBI | 0.233 | 0.083 |
| predicted_SLG | 0.379 | 0.005 |
| predicted_SO | 0.463 | 0.027 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.124 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.668 | 0.000 |
| predicted_AVG | 0.183 | -0.097 |
| predicted_BB | 0.174 | 0.002 |
| predicted_H | 0.488 | 0.010 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.038 | 0.001 |
| predicted_OBP | 0.233 | -0.081 |
| predicted_R | 0.254 | 0.010 |
| predicted_RBI | 0.242 | 0.009 |
| predicted_SLG | 0.273 | -0.106 |
| predicted_SO | 0.459 | -0.005 |
AB rounded to 3 (raw=2.67), rates preserved: AVG=0.183 HR/AB=0.014
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.124 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.332 |
| predicted_AVG | 0.333 | 0.150 |
| predicted_BB | 0.000 | -0.174 |
| predicted_H | 1.000 | 0.512 |
| predicted_HR | 0.000 | -0.038 |
| predicted_OBP | 0.333 | 0.100 |
| predicted_R | 0.000 | -0.254 |
| predicted_RBI | 0.000 | -0.242 |
| predicted_SLG | 0.333 | 0.060 |
| predicted_SO | 1.000 | 0.541 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 2.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 5.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 0.000 | 2.000 | 0.3571 | 0.3571 | 0.3571 | 0.3571 | 0.0000 | 0.1429 | 0.0000 | 0.1429 |
| last_10 | 0.20 | 10 | - | 29.000 | 11.000 | 1.000 | 0.000 | 0.000 | 3.000 | 5.000 | 1.000 | 4.000 | 0.3793 | 0.4000 | 0.4138 | 0.3793 | 0.0000 | 0.1035 | 0.0345 | 0.1379 |
| season | 0.60 | 39 | - | 98.000 | 26.000 | 5.000 | 0.000 | 2.000 | 12.000 | 8.000 | 7.000 | 17.000 | 0.2653 | 0.3113 | 0.3776 | 0.2653 | 0.0204 | 0.1225 | 0.0714 | 0.1735 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1170 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.9160 |
| predicted_AVG | 0.2941 |
| predicted_BB | 0.1620 |
| predicted_H | 0.8580 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0500 |
| predicted_OBP | 0.3327 |
| predicted_R | 0.3060 |
| predicted_RBI | 0.3640 |
| predicted_SLG | 0.3871 |
| predicted_SO | 0.5060 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1280 | 0.1170 | 0.1238 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5130 | 2.9160 | 2.6683 | model_form_blend |
| predicted_AVG | 0.2710 | 0.2941 | 0.2799 | model_form_blend |
| predicted_BB | 0.1790 | 0.1620 | 0.1724 | model_form_blend |
| predicted_H | 0.2400 | 0.8580 | 0.4782 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0300 | 0.0500 | 0.0377 | model_form_blend |
| predicted_OBP | 0.3030 | 0.3327 | 0.3144 | model_form_blend |
| predicted_R | 0.2050 | 0.3060 | 0.2439 | model_form_blend |
| predicted_RBI | 0.1500 | 0.3640 | 0.2325 | model_form_blend |
| predicted_SLG | 0.3740 | 0.3871 | 0.3790 | model_form_blend |
| predicted_SO | 0.4360 | 0.5060 | 0.4630 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 84 |
| Season rows before report date | 84 |
| Report year | 2026 |
| Profile rows used | 39 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.265 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | PH-CF |
| gameID | 20260617_SD@STL |
| game_type | ph |
| mlbID | 665877 |
| note | Flied out for Church in the 7th. |
| playerID | 665877 |
| playerName | José Fermín |
| pos | LF |
| started | False |
| startingPosition | PH |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 15.7 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.309 |
| sl_xwoba | 0.264 |
| sl_xba | 0.224 |
| sl_xslg | 0.302 |
| sl_sweet_spot_percent | 25.6 |
| sl_barrel_batted_rate | 1.2 |
| sl_hard_hit_percent | 31.7 |
| sl_exit_velocity_avg | 85.8 |
| sl_launch_angle_avg | 18.0 |
| sl_whiff_percent | 14.1 |
| sl_swing_percent | 38.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.158 | 1.000 | 0.000 | Hitting_2B | 0.127 | 0.000 | 0.873 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.237 | 3.000 | 3.000 | Hitting_AB | 3.373 | 1.000 | -0.373 | 2.000 |
| predicted_AVG | 0.259 | 0.333 | 0.333 | Hitting_AVG | 0.232 | 0.000 | 0.101 | 0.333 |
| predicted_BB | 0.132 | 0.000 | 0.000 | Hitting_BB | 0.149 | 0.000 | -0.149 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.700 | 1.000 | 1.000 | Hitting_H | 0.784 | 0.000 | 0.216 | 1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.119 | 0.000 | -0.119 | 0.000 |
| predicted_OBP | 0.299 | 0.500 | 0.333 | Hitting_OBP | 0.272 | 0.000 | 0.228 | 0.500 |
| predicted_R | 0.316 | 1.000 | 0.000 | Hitting_R | 0.351 | 0.000 | 0.649 | 1.000 |
| predicted_RBI | 0.300 | 1.000 | 0.000 | Hitting_RBI | 0.276 | 0.000 | 0.724 | 1.000 |
| predicted_SLG | 0.403 | 0.667 | 0.333 | Hitting_SLG | 0.376 | 0.000 | 0.291 | 0.667 |
| predicted_SO | 0.842 | 0.000 | 1.000 | Hitting_SO | 0.910 | 0.000 | -0.910 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_2B: 0.1580 -> 1.0000 (boost 0.8420, better) |
| Biggest Deboost | predicted_SO: 0.8420 -> 0.0000 (deboost -0.8420, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_2B: 0.1580 -> 0.2086 (boost 0.0506, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4089 -> 0.3758 (deboost -0.0331, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.7605 -> 1.0000 (boost 0.2395, better) | predicted_RBI: 0.2966 -> 0.0000 (deboost -0.2966, worse) | AB rounded to 3 (raw=3.24), rates preserved: AVG=0.235 HR/AB=0.024 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3238 -> 0.0000 (deboost -0.3238, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2376 -> 0.3330 (boost 0.0954, better) | predicted_SLG: 0.3758 -> 0.3330 (deboost -0.0428, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3758 (boost 0.0428, better) | predicted_AVG: 0.3330 -> 0.2376 (deboost -0.0954, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686780",
"player_name": "Pedro Pagés",
"position": "C",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.158,
"predicted_3B": 0.0,
"predicted_AB": 3.237,
"predicted_AVG": 0.259,
"predicted_BB": 0.132,
"predicted_H": 0.7,
"predicted_HR": 0.08,
"predicted_OBP": 0.299,
"predicted_R": 0.316,
"predicted_RBI": 0.3,
"predicted_SLG": 0.403,
"predicted_SO": 0.842
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2086,
"predicted_3B": 0.0008,
"predicted_AB": 3.2014,
"predicted_AVG": 0.2588,
"predicted_BB": 0.1296,
"predicted_H": 0.7451,
"predicted_HBP": 0.03,
"predicted_HR": 0.076,
"predicted_OBP": 0.2969,
"predicted_R": 0.3116,
"predicted_RBI": 0.2854,
"predicted_SLG": 0.4089,
"predicted_SO": 0.8048
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.158,
"after": 0.2086,
"delta": 0.0506,
"percent_delta": 0.3203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.237,
"after": 3.2014,
"delta": -0.0356,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2588,
"delta": -0.0002,
"percent_delta": -0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.132,
"after": 0.1296,
"delta": -0.0024,
"percent_delta": -0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 0.7451,
"delta": 0.0451,
"percent_delta": 0.0644,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.076,
"delta": -0.004,
"percent_delta": -0.05,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2969,
"delta": -0.0021,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.316,
"after": 0.3116,
"delta": -0.0044,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 0.2854,
"delta": -0.0146,
"percent_delta": -0.0487,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4089,
"delta": 0.0059,
"percent_delta": 0.0146,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.842,
"after": 0.8048,
"delta": -0.0372,
"percent_delta": -0.0442,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.158,
"after": 0.2086,
"delta": 0.0506,
"percent_delta": 0.3203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 38
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2086,
"predicted_3B": 0.0008,
"predicted_AB": 3.2014,
"predicted_AVG": 0.2376,
"predicted_BB": 0.1309,
"predicted_H": 0.7605,
"predicted_HBP": 0.03,
"predicted_HR": 0.0774,
"predicted_OBP": 0.2675,
"predicted_R": 0.3238,
"predicted_RBI": 0.2966,
"predicted_SLG": 0.3758,
"predicted_SO": 0.797
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2086,
"after": 0.2086,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2014,
"after": 3.2014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2588,
"after": 0.2376,
"delta": -0.0212,
"percent_delta": -0.0819,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1296,
"after": 0.1309,
"delta": 0.0013,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7451,
"after": 0.7605,
"delta": 0.0154,
"percent_delta": 0.0207,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.03,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.076,
"after": 0.0774,
"delta": 0.0014,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2969,
"after": 0.2675,
"delta": -0.0294,
"percent_delta": -0.099,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3116,
"after": 0.3238,
"delta": 0.0122,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2854,
"after": 0.2966,
"delta": 0.0112,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4089,
"after": 0.3758,
"delta": -0.0331,
"percent_delta": -0.0809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8048,
"after": 0.797,
"delta": -0.0078,
"percent_delta": -0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4089,
"after": 0.3758,
"delta": -0.0331,
"percent_delta": -0.0809,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.24), rates preserved: AVG=0.235 HR/AB=0.024",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2086,
"after": 0.0,
"delta": -0.2086,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2014,
"after": 3.0,
"delta": -0.2014,
"percent_delta": -0.0629,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1309,
"after": 0.0,
"delta": -0.1309,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7605,
"after": 1.0,
"delta": 0.2395,
"percent_delta": 0.3149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0774,
"after": 0.0,
"delta": -0.0774,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2966,
"after": 0.0,
"delta": -0.2966,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.797,
"after": 1.0,
"delta": 0.203,
"percent_delta": 0.2547,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7605,
"after": 1.0,
"delta": 0.2395,
"percent_delta": 0.3149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2966,
"after": 0.0,
"delta": -0.2966,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3238,
"after": 0.0,
"delta": -0.3238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3238,
"after": 0.0,
"delta": -0.3238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2376,
"after": 0.333,
"delta": 0.0954,
"percent_delta": 0.4015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2675,
"after": 0.333,
"delta": 0.0655,
"percent_delta": 0.2449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3758,
"after": 0.333,
"delta": -0.0428,
"percent_delta": -0.1139,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2376,
"after": 0.333,
"delta": 0.0954,
"percent_delta": 0.4015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3758,
"after": 0.333,
"delta": -0.0428,
"percent_delta": -0.1139,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2376,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2675,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3758,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2376,
"delta": -0.0954,
"percent_delta": -0.2866,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2675,
"delta": -0.0655,
"percent_delta": -0.1967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3758,
"delta": 0.0428,
"percent_delta": 0.1284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3758,
"delta": 0.0428,
"percent_delta": 0.1284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2376,
"delta": -0.0954,
"percent_delta": -0.2866,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.158,
"after": 1.0,
"delta": 0.842,
"percent_delta": 5.3291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.237,
"after": 3.0,
"delta": -0.237,
"percent_delta": -0.0732,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2376,
"delta": -0.0214,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.132,
"after": 0.0,
"delta": -0.132,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 1.0,
"delta": 0.3,
"percent_delta": 0.4286,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.2675,
"delta": -0.0315,
"percent_delta": -0.1054,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.316,
"after": 1.0,
"delta": 0.684,
"percent_delta": 2.1646,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.3758,
"delta": -0.0272,
"percent_delta": -0.0675,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.842,
"after": 0.0,
"delta": -0.842,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.158,
"after": 1.0,
"delta": 0.842,
"percent_delta": 5.3291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.842,
"after": 0.0,
"delta": -0.842,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.158 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.237 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.132 | - |
| predicted_H | 0.700 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.316 | - |
| predicted_RBI | 0.300 | - |
| predicted_SLG | 0.403 | - |
| predicted_SO | 0.842 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | 0.051 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.201 | -0.036 |
| predicted_AVG | 0.259 | -0.000 |
| predicted_BB | 0.130 | -0.002 |
| predicted_H | 0.745 | 0.045 |
| predicted_HBP | 0.030 | - |
| predicted_HR | 0.076 | -0.004 |
| predicted_OBP | 0.297 | -0.002 |
| predicted_R | 0.312 | -0.004 |
| predicted_RBI | 0.285 | -0.015 |
| predicted_SLG | 0.409 | 0.006 |
| predicted_SO | 0.805 | -0.037 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.201 | 0.000 |
| predicted_AVG | 0.238 | -0.021 |
| predicted_BB | 0.131 | 0.001 |
| predicted_H | 0.760 | 0.015 |
| predicted_HBP | 0.030 | 0.000 |
| predicted_HR | 0.077 | 0.001 |
| predicted_OBP | 0.268 | -0.029 |
| predicted_R | 0.324 | 0.012 |
| predicted_RBI | 0.297 | 0.011 |
| predicted_SLG | 0.376 | -0.033 |
| predicted_SO | 0.797 | -0.008 |
AB rounded to 3 (raw=3.24), rates preserved: AVG=0.235 HR/AB=0.024
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.167)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.209 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.201 |
| predicted_AVG | 0.333 | 0.095 |
| predicted_BB | 0.000 | -0.131 |
| predicted_H | 1.000 | 0.240 |
| predicted_HR | 0.000 | -0.077 |
| predicted_OBP | 0.333 | 0.066 |
| predicted_R | 0.000 | -0.324 |
| predicted_RBI | 0.000 | -0.297 |
| predicted_SLG | 0.333 | -0.043 |
| predicted_SO | 1.000 | 0.203 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 4.000 | 3.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 3.000 | 0.3333 | 0.3333 | 0.5833 | 0.3333 | 0.0000 | 0.0833 | 0.0000 | 0.2500 |
| last_10 | 0.20 | 10 | - | 28.000 | 8.000 | 3.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 5.000 | 0.2857 | 0.3103 | 0.3929 | 0.2857 | 0.0000 | 0.0357 | 0.0357 | 0.1786 |
| season | 0.60 | 38 | - | 123.000 | 28.000 | 6.000 | 0.000 | 4.000 | 10.000 | 12.000 | 5.000 | 32.000 | 0.2276 | 0.2672 | 0.3740 | 0.2276 | 0.0325 | 0.0813 | 0.0406 | 0.2602 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2860 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1470 |
| predicted_AVG | 0.2585 |
| predicted_BB | 0.1260 |
| predicted_H | 0.8140 |
| predicted_HBP | 0.0300 |
| predicted_HR | 0.0700 |
| predicted_OBP | 0.2936 |
| predicted_R | 0.3050 |
| predicted_RBI | 0.2630 |
| predicted_SLG | 0.4178 |
| predicted_SO | 0.7480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1580 | 0.2860 | 0.2086 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.2370 | 3.1470 | 3.2014 | model_form_blend |
| predicted_AVG | 0.2590 | 0.2585 | 0.2588 | model_form_blend |
| predicted_BB | 0.1320 | 0.1260 | 0.1296 | model_form_blend |
| predicted_H | 0.7000 | 0.8140 | 0.7451 | model_form_blend |
| predicted_HBP | - | 0.0300 | 0.0300 | form_only |
| predicted_HR | 0.0800 | 0.0700 | 0.0760 | model_form_blend |
| predicted_OBP | 0.2990 | 0.2936 | 0.2969 | model_form_blend |
| predicted_R | 0.3160 | 0.3050 | 0.3116 | model_form_blend |
| predicted_RBI | 0.3000 | 0.2630 | 0.2854 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4178 | 0.4089 | model_form_blend |
| predicted_SO | 0.8420 | 0.7480 | 0.8048 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 134 |
| Season rows before report date | 134 |
| Report year | 2026 |
| Profile rows used | 38 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.228 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 2 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_SD@STL |
| game_type | short |
| mlbID | 686780 |
| playerID | 686780 |
| playerName | Pedro Pagés |
| pos | C |
| started | False |
| startingPosition | C |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-17 |
| sl_k_percent | 23.7 |
| sl_bb_percent | 3.7 |
| sl_woba | 0.281 |
| sl_xwoba | 0.284 |
| sl_xba | 0.232 |
| sl_xslg | 0.38 |
| sl_sweet_spot_percent | 32.3 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 38.5 |
| sl_exit_velocity_avg | 87.0 |
| sl_launch_angle_avg | 14.2 |
| sl_whiff_percent | 27.1 |
| sl_swing_percent | 50.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.929 | 1.000 | 0.071 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.643 | 4.000 | -1.643 | -3.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 5.643 | 5.000 | -0.643 | 0.000 |
| predicted_IP | 4.200 | 4.200 | 4.200 | Pitching_InningsPitched | 4.914 | 4.100 | -0.714 | 0.100 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 4.643 | 4.000 | 1.357 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 2 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_H: 3.0000 -> 5.0000 (boost 2.0000, worse) |
| Biggest Deboost | predicted_IP: 5.0000 -> 4.2000 (deboost -0.8000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.0000 -> 4.2000 (deboost -0.8000, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | starter_quality_floor | 1 | 1 | 0 | 0 | 1 | predicted_H: 3.0000 -> 5.0000 (boost 2.0000, worse) | - | Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows. |
| 4 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "669461",
"player_name": "Matthew Liberatore",
"position": "Starter",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 5.0,
"predicted_SO": 6.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 4.2,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "starter_quality_floor",
"description": "Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 4.2,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.2,
"after": 4.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 4.2,
"predicted_R": 1.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.2,
"after": 4.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 3.0,
"after": 5.0,
"delta": 2.0,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 6.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 3.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 4.200 | -0.800 |
| predicted_SO | 6.000 | 0.000 |
Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 5.000 | 2.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 4.200 | 0.000 |
| predicted_SO | 6.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 23.200 | 14.000 | 26.000 | 9.000 | 31.000 | 5.000 | 5.3239 | 1.4789 | 0.5916 | 1.0986 | 0.3803 | 1.3099 | 0.2113 |
| last_10 | 0.35 | 10 | 49.200 | 27.000 | 54.000 | 19.000 | 53.000 | 9.000 | 4.8926 | 1.4698 | 0.5436 | 1.0873 | 0.3826 | 1.0671 | 0.1812 |
| season | 0.20 | 14 | 70.200 | 37.000 | 79.000 | 27.000 | 65.000 | 14.000 | 4.7123 | 1.5000 | 0.5236 | 1.1179 | 0.3821 | 0.9198 | 0.1981 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8420 |
| predicted_ER | 2.6660 |
| predicted_ERA | 4.9079 |
| predicted_H | 5.2110 |
| predicted_HR | 0.9020 |
| predicted_IP | 5.0000 |
| predicted_SO | 5.3380 |
| predicted_WHIP | 1.4424 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.8420 | 1.9149 | model_form_blend |
| predicted_ER | 1.0000 | 2.6660 | 1.8976 | model_form_blend |
| predicted_ERA | - | 4.9079 | 4.9079 | form_only |
| predicted_H | 3.0000 | 5.2110 | 4.1913 | model_form_blend |
| predicted_HR | 1.0000 | 0.9020 | 0.9472 | model_form_blend |
| predicted_IP | 5.0000 | 5.0000 | 5.0000 | model_form_blend |
| predicted_SO | 6.0000 | 5.3380 | 5.6433 | model_form_blend |
| predicted_WHIP | - | 1.4424 | 1.4424 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 14 |
| Season rows before report date | 14 |
| Report year | 2026 |
| Profile rows used | 14 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 4.2 |
| H | 5 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 6 |
| HR | 1 |
| BF | 21 |
| Pitches | 95 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 18 |
| Pitching_ER | 4 |
| Pitching_ERA | 4.71 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 4 |
| Pitching_H | 5 |
| Pitching_HBP | 0 |
| Pitching_HR | 3 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.1 |
| Pitching_Pitches | 70 |
| Pitching_R | 4 |
| Pitching_SO | 4 |
| Pitching_Strikes | 46 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260613_STL@MIN |
| game_type | full |
| mlbID | 669461 |
| playerID | 669461 |
| playerName | Matthew Liberatore |
| pos | P |
| started | True |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-13 |
| sl_k_percent | 21.2 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.358 |
| sl_xwoba | 0.359 |
| sl_sweet_spot_percent | 40.5 |
| sl_barrel_batted_rate | 10.2 |
| sl_hard_hit_percent | 44.7 |
| sl_whiff_percent | 22.5 |
| sl_swing_percent | 47.5 |
| sl_avg_best_speed | 81.366531132 |
| sl_avg_hyper_speed | 95.244232075 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.323 | 0.000 | 1.677 | 2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.323 | 1.000 | -0.323 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.774 | 3.000 | -0.774 | -3.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.835 | 1.200 | 0.265 | -0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.871 | 3.000 | 0.129 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "666277",
"player_name": "George Soriano",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 2.000 | 7.000 | 0.000 | 5.000 | 1.000 | 3.1765 | 1.2353 | 0.3529 | 1.2353 | 0.0000 | 0.8823 | 0.1765 |
| last_10 | 0.35 | 10 | 10.200 | 2.000 | 9.000 | 0.000 | 11.000 | 1.000 | 1.6875 | 0.8438 | 0.1875 | 0.8438 | 0.0000 | 1.0312 | 0.0938 |
| season | 0.20 | 31 | 30.100 | 10.000 | 24.000 | 10.000 | 27.000 | 4.000 | 2.9670 | 1.1209 | 0.3297 | 0.7912 | 0.3297 | 0.8901 | 0.1319 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2010 |
| predicted_ER | 0.3860 |
| predicted_ERA | 3.4729 |
| predicted_H | 0.9930 |
| predicted_HR | 0.1420 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9370 |
| predicted_WHIP | 1.1941 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.2010 | 1.1754 | model_form_blend |
| predicted_ER | 0.0000 | 0.3860 | 0.1769 | model_form_blend |
| predicted_ERA | - | 3.4729 | 3.4729 | form_only |
| predicted_H | 0.0000 | 0.9930 | 0.4551 | model_form_blend |
| predicted_HR | 0.0000 | 0.1420 | 0.0651 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9370 | 0.9711 | model_form_blend |
| predicted_WHIP | - | 1.1941 | 1.1941 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| SO | 1 |
| HR | 0 |
| BF | 6 |
| Pitches | 27 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 8 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.97 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 3 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 34 |
| Pitching_R | 1 |
| Pitching_SO | 3 |
| Pitching_Strikes | 25 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L, BS |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260614_STL@MIN |
| game_type | full |
| mlbID | 666277 |
| playerID | 666277 |
| playerName | George Soriano |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-14 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.285 |
| sl_xwoba | 0.325 |
| sl_sweet_spot_percent | 26.4 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 42.5 |
| sl_whiff_percent | 32.5 |
| sl_swing_percent | 49.4 |
| sl_avg_best_speed | 80.886381136 |
| sl_avg_hyper_speed | 94.904552759 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.364 | 1.000 | 0.636 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.424 | 2.000 | -0.424 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.909 | 3.000 | -0.909 | -3.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.758 | 0.100 | 0.242 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.970 | 1.000 | 1.030 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "668941",
"player_name": "JoJo Romero",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 3.000 | 6.000 | 1.000 | 4.000 | 1.000 | 6.7500 | 1.7500 | 0.7500 | 1.5000 | 0.2500 | 1.0000 | 0.2500 |
| last_10 | 0.35 | 10 | 8.100 | 6.000 | 11.000 | 3.000 | 11.000 | 1.000 | 6.4800 | 1.6800 | 0.7200 | 1.3200 | 0.3600 | 1.3200 | 0.1200 |
| season | 0.20 | 33 | 32.000 | 14.000 | 30.000 | 12.000 | 32.000 | 4.000 | 3.9375 | 1.3125 | 0.4375 | 0.9375 | 0.3750 | 1.0000 | 0.1250 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2850 |
| predicted_ER | 0.5100 |
| predicted_ERA | 5.3952 |
| predicted_H | 0.9960 |
| predicted_HR | 0.1400 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8810 |
| predicted_WHIP | 1.5056 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2850 | 0.6683 | model_form_blend |
| predicted_ER | 0.0000 | 0.5100 | 0.2366 | model_form_blend |
| predicted_ERA | - | 5.3952 | 5.3952 | form_only |
| predicted_H | 0.0000 | 0.9960 | 0.4621 | model_form_blend |
| predicted_HR | 0.0000 | 0.1400 | 0.0650 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.8810 | 1.4808 | model_form_blend |
| predicted_WHIP | - | 1.5056 | 1.5056 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 33 |
| Season rows before report date | 33 |
| Report year | 2026 |
| Profile rows used | 33 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 2 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 2 |
| Pitching_ERA | 3.94 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 19 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260614_STL@MIN |
| game_type | full |
| mlbID | 668941 |
| playerID | 668941 |
| playerName | JoJo Romero |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-14 |
| sl_k_percent | 23.4 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.325 |
| sl_xwoba | 0.344 |
| sl_sweet_spot_percent | 37.8 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 46.7 |
| sl_whiff_percent | 23.1 |
| sl_swing_percent | 38.8 |
| sl_avg_best_speed | 82.263951364 |
| sl_avg_hyper_speed | 96.318297471 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.355 | 1.000 | -0.355 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.419 | 0.000 | -0.419 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.871 | 0.000 | -0.871 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.958 | 1.000 | 0.042 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.032 | 0.000 | -0.032 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "676617",
"player_name": "Riley O'Brien",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 3.000 | 6.000 | 3.000 | 0.000 | 1.8000 | 1.8000 | 0.2000 | 0.6000 | 1.2000 | 0.6000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 7.000 | 10.000 | 9.000 | 7.000 | 0.000 | 6.0968 | 1.8387 | 0.6774 | 0.9677 | 0.8710 | 0.6774 | 0.0000 |
| season | 0.20 | 31 | 31.100 | 13.000 | 27.000 | 11.000 | 32.000 | 1.000 | 3.7340 | 1.2128 | 0.4149 | 0.8617 | 0.3511 | 1.0213 | 0.0319 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6690 |
| predicted_ER | 0.4510 |
| predicted_ERA | 4.0549 |
| predicted_H | 0.8670 |
| predicted_HR | 0.0690 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8120 |
| predicted_WHIP | 1.5362 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6690 | 0.3089 | model_form_blend |
| predicted_ER | 0.0000 | 0.4510 | 0.2083 | model_form_blend |
| predicted_ERA | - | 4.0549 | 4.0549 | form_only |
| predicted_H | 0.0000 | 0.8670 | 0.4004 | model_form_blend |
| predicted_HR | 0.0000 | 0.0690 | 0.0319 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8120 | 0.9132 | model_form_blend |
| predicted_WHIP | - | 1.5362 | 1.5362 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.73 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 13 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260616_SD@STL |
| game_type | full |
| mlbID | 676617 |
| playerID | 676617 |
| playerName | Riley O'Brien |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-16 |
| sl_k_percent | 24.1 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.286 |
| sl_xwoba | 0.315 |
| sl_sweet_spot_percent | 30.6 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 38.8 |
| sl_whiff_percent | 28.3 |
| sl_swing_percent | 46.9 |
| sl_avg_best_speed | 76.388369512 |
| sl_avg_hyper_speed | 94.249898025 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.562 | 0.000 | 0.438 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.531 | 0.000 | -0.531 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.812 | 0.000 | -0.812 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.756 | 1.000 | 0.244 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.125 | 2.000 | -1.125 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | predicted_H: 2.0000 -> 0.0000 (deboost -2.0000, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 1 | 0 | - | predicted_H: 2.0000 -> 0.0000 (deboost -2.0000, better) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "592773",
"player_name": "Ryne Stanek",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 3.000 | 3.000 | 0.000 | 5.000 | 3.000 | 5.4000 | 0.6000 | 0.6000 | 0.6000 | 0.0000 | 1.0000 | 0.6000 |
| last_10 | 0.35 | 10 | 10.000 | 3.000 | 6.000 | 2.000 | 9.000 | 3.000 | 2.7000 | 0.8000 | 0.3000 | 0.6000 | 0.2000 | 0.9000 | 0.3000 |
| season | 0.20 | 32 | 29.100 | 17.000 | 26.000 | 18.000 | 36.000 | 5.000 | 5.2159 | 1.5000 | 0.5796 | 0.8864 | 0.6136 | 1.2273 | 0.1704 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2710 |
| predicted_ER | 0.4960 |
| predicted_ERA | 4.4598 |
| predicted_H | 0.8040 |
| predicted_HR | 0.2880 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9770 |
| predicted_WHIP | 1.0750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2710 | 0.6684 | model_form_blend |
| predicted_ER | 0.0000 | 0.4960 | 0.2256 | model_form_blend |
| predicted_ERA | - | 4.4598 | 4.4598 | form_only |
| predicted_H | 2.0000 | 0.8040 | 1.4560 | model_form_blend |
| predicted_HR | 0.0000 | 0.2880 | 0.1310 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9770 | 0.4444 | model_form_blend |
| predicted_WHIP | - | 1.0750 | 1.0750 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 32 |
| Season rows before report date | 32 |
| Report year | 2026 |
| Profile rows used | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.22 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 19 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260616_SD@STL |
| game_type | full |
| mlbID | 592773 |
| playerID | 592773 |
| playerName | Ryne Stanek |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-16 |
| sl_k_percent | 27.3 |
| sl_bb_percent | 13.6 |
| sl_woba | 0.332 |
| sl_xwoba | 0.31 |
| sl_sweet_spot_percent | 31.6 |
| sl_barrel_batted_rate | 7.9 |
| sl_hard_hit_percent | 36.8 |
| sl_whiff_percent | 32.5 |
| sl_swing_percent | 49.7 |
| sl_avg_best_speed | 79.156418158 |
| sl_avg_hyper_speed | 95.072765 |
| Field | Value |
|---|---|
| Pitcher | Noah Cameron |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1385 |
| ESPN Rank | 176 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1588 |
| Avg Velo | 86.8924 |
| Avg Spin | 2216.5960 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 5 |
| Pre H | 7 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 4.1143 |
| Season WHIP | 1.2143 |
| Role Avg IP | 5.3850 |
| Recent Avg IP | 5.6670 |
| Last Start IP | 4.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"opponent": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"edges": {
"quality_edge": -0.3714,
"offense_edge": -0.1366,
"opponent_offense_edge": -0.0359,
"defense_strength": -0.0432,
"opponent_defense_weakness": -0.1131,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9853,
"run_prevention": 1.0171,
"strikeout": 0.9917
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "702070",
"profile": {
"available": true,
"pitcher_id": "702070",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 230.0,
"k_percent": 21.7,
"bb_percent": 5.8,
"woba": 0.302,
"xwoba": 0.32,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 39.7,
"avg_best_speed": 77.521,
"avg_hyper_speed": 94.3712,
"whiff_percent": 23.9,
"swing_percent": 48.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.1676,
"command_and_miss": 0.0286,
"regression_edge": -0.5143,
"xwoba_edge": -0.1429,
"barrel_edge": -0.4667,
"hard_hit_edge": -0.2,
"whiff_edge": -0.2571,
"bb_edge": 0.85,
"pitch_design_score": -0.1588
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "702070",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 90,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 90,
"pitch_usage": 0.0,
"release_speed": 86.89238376821358,
"release_spin_rate": 2216.5960244296075,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 90,
"pitch_usage": 0.0,
"release_speed": 86.89238376821358,
"release_spin_rate": 2216.5960244296075,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.8924,
"release_spin_rate": 2216.596,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1588,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1346,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.1385,
"sample_weight": 0.92,
"run_prevention_factor": 1.0118,
"strikeout_factor": 0.9863,
"walk_factor": 0.9374,
"homer_factor": 1.0456,
"woba_minus_xwoba": -0.018,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702070",
"espn_id": 4417208,
"player_name": "Noah Cameron",
"team": "KC",
"role": "pitcher",
"espn_rank": 176,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 176,
"gp_value": 13.0,
"gp_rank": 329,
"gs_value": 13.0,
"gs_rank": 69,
"qs_value": 5.0,
"qs_rank": 51,
"era_value": 4.1142,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 70.0,
"ip_rank": 76,
"h_value": 68.0,
"h_rank": 64,
"er_value": 32.0,
"er_rank": 73,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 17.0,
"bb_rank": 157,
"k_value": 64.0,
"k_rank": 71,
"k_per_9_value": 8.228572,
"k_per_9_rank": 25,
"whip_value": 1.2142,
"whip_rank": null,
"war_value": 0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0109,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0109,
"adjusted": 4
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9424,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.042,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9874,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 54.0,
"ER": 25,
"H": 52,
"BB": 13,
"SO": 50,
"HR": 6,
"ERA": 4.166666666666667,
"WHIP": 1.2037037037037037,
"K9": 8.333333333333334,
"HR9": 1.0,
"games_pitched": 10,
"quality_starts": 5,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "702070",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 90,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 90,
"pitch_usage": 0.0,
"release_speed": 86.89238376821358,
"release_spin_rate": 2216.5960244296075,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 90,
"pitch_usage": 0.0,
"release_speed": 86.89238376821358,
"release_spin_rate": 2216.5960244296075,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.8924,
"release_spin_rate": 2216.596,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1588,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1346,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 13.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7222,
"prior_weight": 0.2778
},
"role": "pitcher",
"player_id": "702070",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 28.1,
"ER": 7.0,
"R": 8.0,
"H": 19.0,
"BB": 3.0,
"SO": 28.0,
"HR": 3.0,
"BF": 108.0,
"Pitches": 467.0
},
"per_game": {
"IP": 5.2,
"ER": 1.4,
"R": 1.6,
"H": 3.8,
"BB": 0.6,
"SO": 5.6,
"HR": 0.6,
"BF": 21.6,
"Pitches": 93.4
},
"rates": {
"ERA": 2.2235,
"WHIP": 0.7765,
"ER_per_IP": 0.24706,
"H_per_IP": 0.67059,
"BB_per_IP": 0.10588,
"SO_per_IP": 0.98824,
"HR_per_IP": 0.10588
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 54.0,
"ER": 25.0,
"R": 29.0,
"H": 52.0,
"BB": 13.0,
"SO": 50.0,
"HR": 6.0,
"BF": 228.0,
"Pitches": 899.0
},
"per_game": {
"IP": 5.1,
"ER": 2.5,
"R": 2.9,
"H": 5.2,
"BB": 1.3,
"SO": 5.0,
"HR": 0.6,
"BF": 22.8,
"Pitches": 89.9
},
"rates": {
"ERA": 4.1667,
"WHIP": 1.2037,
"ER_per_IP": 0.46296,
"H_per_IP": 0.96296,
"BB_per_IP": 0.24074,
"SO_per_IP": 0.92593,
"HR_per_IP": 0.11111
}
},
"season": {
"games": 13,
"totals": {
"IP": 70.0,
"ER": 32.0,
"R": 36.0,
"H": 68.0,
"BB": 17.0,
"SO": 64.0,
"HR": 8.0,
"BF": 295.0,
"Pitches": 1149.0
},
"per_game": {
"IP": 5.1,
"ER": 2.4615,
"R": 2.7692,
"H": 5.2308,
"BB": 1.3077,
"SO": 4.9231,
"HR": 0.6154,
"BF": 22.6923,
"Pitches": 88.3846
},
"rates": {
"ERA": 4.1143,
"WHIP": 1.2143,
"ER_per_IP": 0.45714,
"H_per_IP": 0.97143,
"BB_per_IP": 0.24286,
"SO_per_IP": 0.91429,
"HR_per_IP": 0.11429
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.228,
"predicted_H": 4.827,
"predicted_BB": 1.28,
"predicted_SO": 5.245,
"predicted_HR": 0.662,
"predicted_ERA": 3.6225,
"predicted_WHIP": 1.1035
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4674,
"form_weight": 0.5326,
"form_reliability": 0.7222,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 13.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7222,
"prior_weight": 0.2778
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 5.0,
"form": 2.228,
"final": 3.5236,
"source": "model_form_blend"
},
"predicted_H": {
"model": 7.0,
"form": 4.827,
"final": 5.8426,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.28,
"final": 1.6165,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 5.245,
"final": 4.1958,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.662,
"final": 0.3526,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6225,
"final": 3.6225,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1035,
"final": 1.1035,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Alex Lange |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1862 |
| ESPN Rank | 259 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 4.0099 |
| Season WHIP | 1.3960 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"opponent": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"edges": {
"quality_edge": -0.3714,
"offense_edge": -0.1366,
"opponent_offense_edge": -0.0359,
"defense_strength": -0.0432,
"opponent_defense_weakness": -0.1131,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9853,
"run_prevention": 1.0171,
"strikeout": 0.9917
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656638",
"profile": {
"available": true,
"pitcher_id": "656638",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 99.0,
"k_percent": 24.0,
"bb_percent": 13.0,
"woba": 0.326,
"xwoba": 0.335,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 13.6,
"hard_hit_percent": 43.2,
"avg_best_speed": 80.7937,
"avg_hyper_speed": 95.1894,
"whiff_percent": 29.4,
"swing_percent": 45.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.7352,
"command_and_miss": 0.0914,
"regression_edge": -0.2571,
"xwoba_edge": -0.5714,
"barrel_edge": -1.4,
"hard_hit_edge": -0.7,
"whiff_edge": 0.5286,
"bb_edge": -0.95,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656638",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.1862,
"sample_weight": 0.45,
"run_prevention_factor": 1.0158,
"strikeout_factor": 1.0134,
"walk_factor": 1.0342,
"homer_factor": 1.0707,
"woba_minus_xwoba": -0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656638",
"espn_id": 40976,
"player_name": "Alex Lange",
"team": "KC",
"role": "pitcher",
"espn_rank": 259,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 259,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 4.0099,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 4.0,
"sv_rank": 30,
"hld_value": 1.0,
"hld_rank": 198,
"ip_value": 33.2,
"ip_rank": 200,
"h_value": 28.0,
"h_rank": 233,
"er_value": 15.0,
"er_rank": 209,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 19.0,
"bb_rank": 131,
"k_value": 35.0,
"k_rank": 199,
"k_per_9_value": 9.356436,
"k_per_9_rank": 26,
"whip_value": 1.396,
"whip_rank": null,
"war_value": 0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0071,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0071,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0154,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0318,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.006,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.2,
"ER": 2,
"H": 8,
"BB": 6,
"SO": 12,
"HR": 0,
"ERA": 1.862068965517241,
"WHIP": 1.4482758620689653,
"K9": 11.172413793103447,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "656638",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.686,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5721,
"prior_weight": 0.4279
},
"role": "pitcher",
"player_id": "656638",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 2.0,
"R": 3.0,
"H": 4.0,
"BB": 4.0,
"SO": 7.0,
"HR": 0.0,
"BF": 27.0,
"Pitches": 129.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 0.8,
"BB": 0.8,
"SO": 1.4,
"HR": 0.0,
"BF": 5.4,
"Pitches": 25.8
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.4118,
"ER_per_IP": 0.35294,
"H_per_IP": 0.70588,
"BB_per_IP": 0.70588,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 2.0,
"R": 3.0,
"H": 8.0,
"BB": 6.0,
"SO": 12.0,
"HR": 0.0,
"BF": 45.0,
"Pitches": 207.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.8,
"BB": 0.6,
"SO": 1.2,
"HR": 0.0,
"BF": 4.5,
"Pitches": 20.7
},
"rates": {
"ERA": 1.8621,
"WHIP": 1.4483,
"ER_per_IP": 0.2069,
"H_per_IP": 0.82759,
"BB_per_IP": 0.62069,
"SO_per_IP": 1.24138,
"HR_per_IP": 0.0
}
},
"season": {
"games": 31,
"totals": {
"IP": 33.2,
"ER": 15.0,
"R": 17.0,
"H": 28.0,
"BB": 19.0,
"SO": 35.0,
"HR": 2.0,
"BF": 146.0,
"Pitches": 623.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4839,
"R": 0.5484,
"H": 0.9032,
"BB": 0.6129,
"SO": 1.129,
"HR": 0.0645,
"BF": 4.7097,
"Pitches": 20.0968
},
"rates": {
"ERA": 4.0099,
"WHIP": 1.396,
"ER_per_IP": 0.44554,
"H_per_IP": 0.83168,
"BB_per_IP": 0.56436,
"SO_per_IP": 1.0396,
"HR_per_IP": 0.05941
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.398,
"predicted_H": 0.859,
"predicted_BB": 0.526,
"predicted_SO": 1.087,
"predicted_HR": 0.069,
"predicted_ERA": 3.5785,
"predicted_WHIP": 1.3854
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5308,
"form_weight": 0.4692,
"form_reliability": 0.5721,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.686,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5721,
"prior_weight": 0.4279
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.398,
"final": 0.1867,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.859,
"final": 0.9338,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.526,
"final": 0.2468,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.087,
"final": 1.0408,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.069,
"final": 0.0324,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5785,
"final": 3.5785,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3854,
"final": 1.3854,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Daniel Lynch IV |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2466 |
| ESPN Rank | 147 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 2.6129 |
| Season WHIP | 1 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"opponent": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"edges": {
"quality_edge": -0.3714,
"offense_edge": -0.1366,
"opponent_offense_edge": -0.0359,
"defense_strength": -0.0432,
"opponent_defense_weakness": -0.1131,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9853,
"run_prevention": 1.0171,
"strikeout": 0.9917
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663738",
"profile": {
"available": true,
"pitcher_id": "663738",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 85.0,
"k_percent": 23.6,
"bb_percent": 8.7,
"woba": 0.257,
"xwoba": 0.276,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 34.5,
"avg_best_speed": 75.3614,
"avg_hyper_speed": 93.6212,
"whiff_percent": 31.9,
"swing_percent": 46.9
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8871,
"command_and_miss": 0.4057,
"regression_edge": -0.5429,
"xwoba_edge": 1.1143,
"barrel_edge": 0.2889,
"hard_hit_edge": 0.5429,
"whiff_edge": 0.8857,
"bb_edge": 0.125,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "663738",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2466,
"sample_weight": 0.45,
"run_prevention_factor": 0.979,
"strikeout_factor": 1.0188,
"walk_factor": 0.9955,
"homer_factor": 0.9648,
"woba_minus_xwoba": -0.019,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663738",
"espn_id": 41227,
"player_name": "Daniel Lynch IV",
"team": "KC",
"role": "pitcher",
"espn_rank": 147,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 147,
"gp_value": 31.0,
"gp_rank": 46,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.6129,
"era_rank": null,
"w_value": 2.0,
"w_rank": 180,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 9.0,
"hld_rank": 31,
"ip_value": 31.0,
"ip_rank": 235,
"h_value": 20.0,
"h_rank": 330,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 30.0,
"k_rank": 253,
"k_per_9_value": 8.709678,
"k_per_9_rank": 29,
"whip_value": 1.0,
"whip_rank": null,
"war_value": 0.67,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9906,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9906,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.998,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9842,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0085,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 5,
"H": 7,
"BB": 4,
"SO": 4,
"HR": 1,
"ERA": 4.821428571428572,
"WHIP": 1.1785714285714288,
"K9": 3.8571428571428577,
"HR9": 0.9642857142857144,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-16T00:00:00"
}{
"available": false,
"pitcher_id": "663738",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.156,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5518,
"prior_weight": 0.4482
},
"role": "pitcher",
"player_id": "663738",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 31,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 4.0,
"R": 4.0,
"H": 3.0,
"BB": 3.0,
"SO": 1.0,
"HR": 1.0,
"BF": 20.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 0.6,
"BB": 0.6,
"SO": 0.2,
"HR": 0.2,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.2857,
"ER_per_IP": 0.85714,
"H_per_IP": 0.64286,
"BB_per_IP": 0.64286,
"SO_per_IP": 0.21429,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 5.0,
"R": 5.0,
"H": 7.0,
"BB": 4.0,
"SO": 4.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 145.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.7,
"BB": 0.4,
"SO": 0.4,
"HR": 0.1,
"BF": 3.9,
"Pitches": 14.5
},
"rates": {
"ERA": 4.8214,
"WHIP": 1.1786,
"ER_per_IP": 0.53571,
"H_per_IP": 0.75,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 31,
"totals": {
"IP": 31.0,
"ER": 9.0,
"R": 12.0,
"H": 20.0,
"BB": 11.0,
"SO": 30.0,
"HR": 2.0,
"BF": 127.0,
"Pitches": 488.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2903,
"R": 0.3871,
"H": 0.6452,
"BB": 0.3548,
"SO": 0.9677,
"HR": 0.0645,
"BF": 4.0968,
"Pitches": 15.7419
},
"rates": {
"ERA": 2.6129,
"WHIP": 1.0,
"ER_per_IP": 0.29032,
"H_per_IP": 0.64516,
"BB_per_IP": 0.35484,
"SO_per_IP": 0.96774,
"HR_per_IP": 0.06452
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.573,
"predicted_H": 0.812,
"predicted_BB": 0.444,
"predicted_SO": 0.663,
"predicted_HR": 0.146,
"predicted_ERA": 5.1556,
"predicted_WHIP": 1.2566
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5394,
"form_weight": 0.4606,
"form_reliability": 0.5518,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.156,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5518,
"prior_weight": 0.4482
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.573,
"final": 0.2639,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.812,
"final": 0.9134,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.444,
"final": 1.2833,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.663,
"final": 0.3054,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.146,
"final": 0.0673,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.1556,
"final": 5.1556,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2566,
"final": 1.2566,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Lucas Erceg |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0695 |
| ESPN Rank | 619 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 4.6098 |
| Season WHIP | 1.6829 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"opponent": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"edges": {
"quality_edge": -0.3714,
"offense_edge": -0.1366,
"opponent_offense_edge": -0.0359,
"defense_strength": -0.0432,
"opponent_defense_weakness": -0.1131,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9853,
"run_prevention": 1.0171,
"strikeout": 0.9917
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668674",
"profile": {
"available": true,
"pitcher_id": "668674",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 93.0,
"k_percent": 18.1,
"bb_percent": 15.0,
"woba": 0.38,
"xwoba": 0.32,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 39.3,
"avg_best_speed": 74.1204,
"avg_hyper_speed": 94.2061,
"whiff_percent": 21.5,
"swing_percent": 46.3
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.2185,
"command_and_miss": -0.7829,
"regression_edge": 1.7143,
"xwoba_edge": -0.1429,
"barrel_edge": 0.2889,
"hard_hit_edge": -0.1429,
"whiff_edge": -0.6,
"bb_edge": -1.45,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "668674",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.0695,
"sample_weight": 0.45,
"run_prevention_factor": 1.0059,
"strikeout_factor": 0.9779,
"walk_factor": 1.0522,
"homer_factor": 0.9941,
"woba_minus_xwoba": 0.06,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "668674",
"espn_id": 36618,
"player_name": "Lucas Erceg",
"team": "KC",
"role": "pitcher",
"espn_rank": 619,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 619,
"gp_value": 29.0,
"gp_rank": 80,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.5975,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 12.0,
"sv_rank": 11,
"hld_value": 2.0,
"hld_rank": 165,
"ip_value": 27.1,
"ip_rank": 293,
"h_value": 32.0,
"h_rank": 193,
"er_value": 17.0,
"er_rank": 186,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 19.0,
"bb_rank": 131,
"k_value": 23.0,
"k_rank": 321,
"k_per_9_value": 7.5731707,
"k_per_9_rank": 29,
"whip_value": 1.8658,
"whip_rank": null,
"war_value": -0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0027,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0027,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0235,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9973,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9901,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 7,
"H": 12,
"BB": 7,
"SO": 6,
"HR": 1,
"ERA": 7.0,
"WHIP": 2.111111111111111,
"K9": 6.0,
"HR9": 1.0,
"games_pitched": 9,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "668674",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.428,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5205,
"prior_weight": 0.4795
},
"role": "pitcher",
"player_id": "668674",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 4.0,
"SO": 3.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 100.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.8,
"SO": 0.6,
"HR": 0.0,
"BF": 4.6,
"Pitches": 20.0
},
"rates": {
"ERA": 1.8,
"WHIP": 1.4,
"ER_per_IP": 0.2,
"H_per_IP": 0.6,
"BB_per_IP": 0.8,
"SO_per_IP": 0.6,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 7.0,
"R": 8.0,
"H": 14.0,
"BB": 7.0,
"SO": 8.0,
"HR": 1.0,
"BF": 51.0,
"Pitches": 204.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7,
"R": 0.8,
"H": 1.4,
"BB": 0.7,
"SO": 0.8,
"HR": 0.1,
"BF": 5.1,
"Pitches": 20.4
},
"rates": {
"ERA": 6.3,
"WHIP": 2.1,
"ER_per_IP": 0.7,
"H_per_IP": 1.4,
"BB_per_IP": 0.7,
"SO_per_IP": 0.8,
"HR_per_IP": 0.1
}
},
"season": {
"games": 28,
"totals": {
"IP": 27.1,
"ER": 14.0,
"R": 16.0,
"H": 27.0,
"BB": 19.0,
"SO": 23.0,
"HR": 1.0,
"BF": 122.0,
"Pitches": 506.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5714,
"H": 0.9643,
"BB": 0.6786,
"SO": 0.8214,
"HR": 0.0357,
"BF": 4.3571,
"Pitches": 18.0714
},
"rates": {
"ERA": 4.6098,
"WHIP": 1.6829,
"ER_per_IP": 0.5122,
"H_per_IP": 0.9878,
"BB_per_IP": 0.69512,
"SO_per_IP": 0.84146,
"HR_per_IP": 0.03659
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.468,
"predicted_H": 0.965,
"predicted_BB": 0.561,
"predicted_SO": 0.823,
"predicted_HR": 0.092,
"predicted_ERA": 4.2109,
"predicted_WHIP": 1.5269
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5526,
"form_weight": 0.4474,
"form_reliability": 0.5205,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.428,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5205,
"prior_weight": 0.4795
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.468,
"final": 0.2094,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.965,
"final": 0.4318,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.561,
"final": 0.251,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.823,
"final": 0.3682,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.092,
"final": 0.0412,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2109,
"final": 4.2109,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5269,
"final": 1.5269,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Matt Strahm |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0728 |
| ESPN Rank | 602 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 5.7273 |
| Season WHIP | 1.3182 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"opponent": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"edges": {
"quality_edge": -0.3714,
"offense_edge": -0.1366,
"opponent_offense_edge": -0.0359,
"defense_strength": -0.0432,
"opponent_defense_weakness": -0.1131,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9853,
"run_prevention": 1.0171,
"strikeout": 0.9917
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "621381",
"profile": {
"available": true,
"pitcher_id": "621381",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 71.0,
"k_percent": 18.8,
"bb_percent": 7.3,
"woba": 0.387,
"xwoba": 0.313,
"sweet_spot_percent": 29.0,
"barrel_batted_rate": 10.1,
"hard_hit_percent": 43.5,
"avg_best_speed": 81.1489,
"avg_hyper_speed": 93.8897,
"whiff_percent": 23.2,
"swing_percent": 49.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.5219,
"command_and_miss": -0.2679,
"regression_edge": 2.0,
"xwoba_edge": 0.0571,
"barrel_edge": -0.6222,
"hard_hit_edge": -0.7429,
"whiff_edge": -0.3571,
"bb_edge": 0.475,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "621381",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.0728,
"sample_weight": 0.45,
"run_prevention_factor": 1.0062,
"strikeout_factor": 0.9841,
"walk_factor": 0.9829,
"homer_factor": 1.035,
"woba_minus_xwoba": 0.074,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "621381",
"espn_id": 34862,
"player_name": "Matt Strahm",
"team": "KC",
"role": "pitcher",
"espn_rank": 602,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 602,
"gp_value": 24.0,
"gp_rank": 139,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.7272,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 9.0,
"hld_rank": 31,
"ip_value": 22.0,
"ip_rank": 355,
"h_value": 22.0,
"h_rank": 299,
"er_value": 14.0,
"er_rank": 225,
"hr_value": 8.0,
"hr_rank": 79,
"bb_value": 7.0,
"bb_rank": 394,
"k_value": 18.0,
"k_rank": 375,
"k_per_9_value": 7.3636365,
"k_per_9_rank": 28,
"whip_value": 1.3181,
"whip_rank": null,
"war_value": -0.34,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0028,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0028,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0157,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 0.9928,
"adjusted": 0
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.1,
"ER": 9,
"H": 12,
"BB": 1,
"SO": 4,
"HR": 6,
"ERA": 9.72,
"WHIP": 1.5600000000000003,
"K9": 4.32,
"HR9": 6.480000000000001,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "621381",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.369,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4663,
"prior_weight": 0.5337
},
"role": "pitcher",
"player_id": "621381",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 0.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.2,
"ER": 6.0,
"R": 6.0,
"H": 7.0,
"BB": 0.0,
"SO": 1.0,
"HR": 4.0,
"BF": 18.0,
"Pitches": 65.0
},
"per_game": {
"IP": 0.2,
"ER": 1.2,
"R": 1.2,
"H": 1.4,
"BB": 0.0,
"SO": 0.2,
"HR": 0.8,
"BF": 3.6,
"Pitches": 13.0
},
"rates": {
"ERA": 14.7273,
"WHIP": 1.9091,
"ER_per_IP": 1.63636,
"H_per_IP": 1.90909,
"BB_per_IP": 0.0,
"SO_per_IP": 0.27273,
"HR_per_IP": 1.09091
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 9.0,
"R": 9.0,
"H": 12.0,
"BB": 1.0,
"SO": 4.0,
"HR": 6.0,
"BF": 38.0,
"Pitches": 135.0
},
"per_game": {
"IP": 0.2,
"ER": 0.9,
"R": 0.9,
"H": 1.2,
"BB": 0.1,
"SO": 0.4,
"HR": 0.6,
"BF": 3.8,
"Pitches": 13.5
},
"rates": {
"ERA": 9.72,
"WHIP": 1.56,
"ER_per_IP": 1.08,
"H_per_IP": 1.44,
"BB_per_IP": 0.12,
"SO_per_IP": 0.48,
"HR_per_IP": 0.72
}
},
"season": {
"games": 24,
"totals": {
"IP": 22.0,
"ER": 14.0,
"R": 14.0,
"H": 22.0,
"BB": 7.0,
"SO": 18.0,
"HR": 8.0,
"BF": 96.0,
"Pitches": 369.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5833,
"R": 0.5833,
"H": 0.9167,
"BB": 0.2917,
"SO": 0.75,
"HR": 0.3333,
"BF": 4.0,
"Pitches": 15.375
},
"rates": {
"ERA": 5.7273,
"WHIP": 1.3182,
"ER_per_IP": 0.63636,
"H_per_IP": 1.0,
"BB_per_IP": 0.31818,
"SO_per_IP": 0.81818,
"HR_per_IP": 0.36364
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.44,
"predicted_H": 0.649,
"predicted_BB": 0.126,
"predicted_SO": 0.37,
"predicted_HR": 0.238,
"predicted_ERA": 7.6168,
"predicted_WHIP": 1.4918
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5755,
"form_weight": 0.4245,
"form_reliability": 0.4663,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.369,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4663,
"prior_weight": 0.5337
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.44,
"final": 0.1868,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.649,
"final": 0.2755,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.126,
"final": 0.0535,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.37,
"final": 0.1571,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.238,
"final": 0.101,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 7.6168,
"final": 7.6168,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4918,
"final": 1.4918,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | John Schreiber |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1544 |
| ESPN Rank | 131 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.7303 |
| Season WHIP | 1.1798 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 83,
"wins": 31,
"losses": 52,
"win_pct": 0.3735,
"runs_scored": 323.0,
"runs_allowed": 391.0,
"run_differential": -68.0,
"run_differential_per_game": -0.8193,
"avg_runs_scored": 3.8916,
"avg_runs_allowed": 4.7108,
"offense_index": 0.8634,
"defense_index": 0.9568,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 5.1,
"run_differential": -2.0
},
"available": true,
"quality_score": -0.2425
},
"opponent": {
"team": "STL",
"games": 81,
"wins": 46,
"losses": 35,
"win_pct": 0.5679,
"runs_scored": 352.0,
"runs_allowed": 328.0,
"run_differential": 24.0,
"run_differential_per_game": 0.2963,
"avg_runs_scored": 4.3457,
"avg_runs_allowed": 4.0494,
"offense_index": 0.9641,
"defense_index": 1.1131,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.8,
"run_differential": 15.0
},
"available": true,
"quality_score": 0.1289
},
"edges": {
"quality_edge": -0.3714,
"offense_edge": -0.1366,
"opponent_offense_edge": -0.0359,
"defense_strength": -0.0432,
"opponent_defense_weakness": -0.1131,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9853,
"run_prevention": 1.0171,
"strikeout": 0.9917
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "670167",
"profile": {
"available": true,
"pitcher_id": "670167",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 85.0,
"k_percent": 17.6,
"bb_percent": 9.2,
"woba": 0.308,
"xwoba": 0.329,
"sweet_spot_percent": 39.5,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.4,
"avg_best_speed": 78.3889,
"avg_hyper_speed": 94.0805,
"whiff_percent": 20.0,
"swing_percent": 44.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.227,
"command_and_miss": -0.6,
"regression_edge": -0.6,
"xwoba_edge": -0.4,
"barrel_edge": 0.0444,
"hard_hit_edge": -0.0143,
"whiff_edge": -0.8143,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "670167",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.1544,
"sample_weight": 0.45,
"run_prevention_factor": 1.0131,
"strikeout_factor": 0.9727,
"walk_factor": 1.0,
"homer_factor": 1.0041,
"woba_minus_xwoba": -0.021,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670167",
"espn_id": 39949,
"player_name": "John Schreiber",
"team": "KC",
"role": "pitcher",
"espn_rank": 131,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 131,
"gp_value": 32.0,
"gp_rank": 31,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.7303,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 1.0,
"sv_rank": 86,
"hld_value": 4.0,
"hld_rank": 121,
"ip_value": 29.2,
"ip_rank": 259,
"h_value": 24.0,
"h_rank": 276,
"er_value": 9.0,
"er_rank": 360,
"hr_value": 5.0,
"hr_rank": 157,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 21.0,
"k_rank": 345,
"k_per_9_value": 6.370786,
"k_per_9_rank": 35,
"whip_value": 1.1797,
"whip_rank": null,
"war_value": 0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0059,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0059,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0018,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9877,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 2,
"H": 5,
"BB": 1,
"SO": 9,
"HR": 2,
"ERA": 1.9285714285714284,
"WHIP": 0.6428571428571428,
"K9": 8.678571428571429,
"HR9": 1.9285714285714284,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "670167",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"role": "pitcher",
"player_id": "670167",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 0.0,
"SO": 5.0,
"HR": 1.0,
"BF": 18.0,
"Pitches": 78.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.0,
"SO": 1.0,
"HR": 0.2,
"BF": 3.6,
"Pitches": 15.6
},
"rates": {
"ERA": 1.6875,
"WHIP": 0.5625,
"ER_per_IP": 0.1875,
"H_per_IP": 0.5625,
"BB_per_IP": 0.0,
"SO_per_IP": 0.9375,
"HR_per_IP": 0.1875
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 2.0,
"R": 3.0,
"H": 5.0,
"BB": 1.0,
"SO": 9.0,
"HR": 2.0,
"BF": 31.0,
"Pitches": 126.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.5,
"BB": 0.1,
"SO": 0.9,
"HR": 0.2,
"BF": 3.1,
"Pitches": 12.6
},
"rates": {
"ERA": 1.9286,
"WHIP": 0.6429,
"ER_per_IP": 0.21429,
"H_per_IP": 0.53571,
"BB_per_IP": 0.10714,
"SO_per_IP": 0.96429,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 32,
"totals": {
"IP": 29.2,
"ER": 9.0,
"R": 10.0,
"H": 24.0,
"BB": 11.0,
"SO": 21.0,
"HR": 5.0,
"BF": 119.0,
"Pitches": 475.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2812,
"R": 0.3125,
"H": 0.75,
"BB": 0.3438,
"SO": 0.6562,
"HR": 0.1562,
"BF": 3.7188,
"Pitches": 14.8438
},
"rates": {
"ERA": 2.7303,
"WHIP": 1.1798,
"ER_per_IP": 0.30337,
"H_per_IP": 0.80899,
"BB_per_IP": 0.37079,
"SO_per_IP": 0.70787,
"HR_per_IP": 0.16854
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.242,
"predicted_H": 0.536,
"predicted_BB": 0.158,
"predicted_SO": 0.637,
"predicted_HR": 0.119,
"predicted_ERA": 3.141,
"predicted_WHIP": 1.0002
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.544,
"form_weight": 0.456,
"form_reliability": 0.5409,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.891,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5409,
"prior_weight": 0.4591
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.242,
"final": 0.1104,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.536,
"final": 0.2444,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.158,
"final": 0.0721,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.637,
"final": 0.2905,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.119,
"final": 0.0543,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.141,
"final": 3.141,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0002,
"final": 1.0002,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Steven Cruz |
| Role | Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0200 |
| ESPN Rank | 545 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | - |
| Season WHIP | - |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"available": false,
"reason": "No team-form snapshot was stored for this pitcher row.",
"display_fallback": "Use the game-level Team Form Snapshot section for team context."
}{
"available": false,
"reason": "No pitcher-specific recent-form block was stored for this row.",
"display_fallback": "Use Player Form Blend windows for last-5, last-10, and season pitcher form."
}{
"available": false,
"pitcher_id": "674444",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.038,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4468,
"prior_weight": 0.5532
},
"role": "pitcher",
"player_id": "674444",
"report_date": "20260618_S",
"season_year": 2026,
"rows_used": 19,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.1,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 76.0
},
"per_game": {
"IP": 1.1,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 4.4,
"Pitches": 15.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6316,
"ER_per_IP": 0.0,
"H_per_IP": 0.47368,
"BB_per_IP": 0.15789,
"SO_per_IP": 1.10526,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.2,
"ER": 5.0,
"R": 5.0,
"H": 9.0,
"BB": 5.0,
"SO": 14.0,
"HR": 3.0,
"BF": 47.0,
"Pitches": 180.0
},
"per_game": {
"IP": 1.1,
"ER": 0.5,
"R": 0.5,
"H": 0.9,
"BB": 0.5,
"SO": 1.4,
"HR": 0.3,
"BF": 4.7,
"Pitches": 18.0
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.2,
"ER_per_IP": 0.42857,
"H_per_IP": 0.77143,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.2,
"HR_per_IP": 0.25714
}
},
"season": {
"games": 19,
"totals": {
"IP": 20.1,
"ER": 13.0,
"R": 14.0,
"H": 18.0,
"BB": 12.0,
"SO": 27.0,
"HR": 7.0,
"BF": 90.0,
"Pitches": 352.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6842,
"R": 0.7368,
"H": 0.9474,
"BB": 0.6316,
"SO": 1.4211,
"HR": 0.3684,
"BF": 4.7368,
"Pitches": 18.5263
},
"rates": {
"ERA": 5.7541,
"WHIP": 1.4754,
"ER_per_IP": 0.63934,
"H_per_IP": 0.88525,
"BB_per_IP": 0.59016,
"SO_per_IP": 1.32787,
"HR_per_IP": 0.34426
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.301,
"predicted_H": 0.626,
"predicted_BB": 0.264,
"predicted_SO": 0.786,
"predicted_HR": 0.114,
"predicted_ERA": 3.6113,
"predicted_WHIP": 1.1862
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5837,
"form_weight": 0.4163,
"form_reliability": 0.4468,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.038,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4468,
"prior_weight": 0.5532
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.301,
"final": 0.1253,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.626,
"final": 0.2606,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.264,
"final": 0.1099,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.786,
"final": 0.3272,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.114,
"final": 0.0475,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6113,
"final": 3.6113,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1862,
"final": 1.1862,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.176 | 0.000 | 0.000 | Hitting_2B | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_3B | 0.015 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 3.368 | 4.000 | 3.000 | Hitting_AB | 3.503 | 5.000 | 0.497 | -1.000 |
| predicted_AVG | 0.242 | 0.250 | 0.333 | Hitting_AVG | 0.232 | 0.200 | 0.018 | 0.050 |
| predicted_BB | 0.309 | 0.000 | 0.000 | Hitting_BB | 0.330 | 0.000 | -0.330 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.350 | 1.000 | 1.000 | Hitting_H | 0.812 | 1.000 | 0.188 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.107 | 0.000 | -0.107 | 0.000 |
| predicted_OBP | 0.311 | 0.250 | 0.333 | Hitting_OBP | 0.308 | 0.200 | -0.058 | 0.050 |
| predicted_R | 0.426 | 0.000 | 0.000 | Hitting_R | 0.437 | 0.000 | -0.437 | 0.000 |
| predicted_RBI | 0.170 | 0.000 | 0.000 | Hitting_RBI | 0.249 | 0.000 | -0.249 | 0.000 |
| predicted_SLG | 0.411 | 0.250 | 0.333 | Hitting_SLG | 0.391 | 0.200 | -0.141 | 0.050 |
| predicted_SO | 1.132 | 3.000 | 1.000 | Hitting_SO | 1.152 | 1.000 | 1.848 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 1.1320 -> 3.0000 (boost 1.8680, worse) |
| Biggest Deboost | predicted_R: 0.4260 -> 0.0000 (deboost -0.4260, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.3500 -> 0.6023 (boost 0.2523, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4154 -> 0.2954 (deboost -0.1200, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 1 | 7 | 2 | 6 | predicted_H: 0.5760 -> 1.0000 (boost 0.4240, better) | predicted_AB: 3.4472 -> 3.0000 (deboost -0.4472, worse) | AB rounded to 3 (raw=3.45), rates preserved: AVG=0.167 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4335 -> 0.0000 (deboost -0.4335, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1671 -> 0.3330 (boost 0.1659, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 1 | 1 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1671 (deboost -0.1659, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695506",
"player_name": "Jac Caglianone",
"position": "1B",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.015,
"predicted_AB": 3.368,
"predicted_AVG": 0.242,
"predicted_BB": 0.309,
"predicted_H": 0.35,
"predicted_HR": 0.06,
"predicted_OBP": 0.311,
"predicted_R": 0.426,
"predicted_RBI": 0.17,
"predicted_SLG": 0.411,
"predicted_SO": 1.132
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1802,
"predicted_3B": 0.0129,
"predicted_AB": 3.4472,
"predicted_AVG": 0.2527,
"predicted_BB": 0.3144,
"predicted_H": 0.6023,
"predicted_HBP": 0.087,
"predicted_HR": 0.0826,
"predicted_OBP": 0.3247,
"predicted_R": 0.4687,
"predicted_RBI": 0.2396,
"predicted_SLG": 0.4154,
"predicted_SO": 1.1534
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.1802,
"delta": 0.0042,
"percent_delta": 0.0239,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0129,
"delta": -0.0021,
"percent_delta": -0.14,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.368,
"after": 3.4472,
"delta": 0.0792,
"percent_delta": 0.0235,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2527,
"delta": 0.0107,
"percent_delta": 0.0442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.309,
"after": 0.3144,
"delta": 0.0054,
"percent_delta": 0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.35,
"after": 0.6023,
"delta": 0.2523,
"percent_delta": 0.7209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0826,
"delta": 0.0226,
"percent_delta": 0.3767,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.3247,
"delta": 0.0137,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.426,
"after": 0.4687,
"delta": 0.0427,
"percent_delta": 0.1002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.2396,
"delta": 0.0696,
"percent_delta": 0.4094,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.411,
"after": 0.4154,
"delta": 0.0044,
"percent_delta": 0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.132,
"after": 1.1534,
"delta": 0.0214,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.35,
"after": 0.6023,
"delta": 0.2523,
"percent_delta": 0.7209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1802,
"predicted_3B": 0.0129,
"predicted_AB": 3.4472,
"predicted_AVG": 0.1671,
"predicted_BB": 0.3092,
"predicted_H": 0.576,
"predicted_HBP": 0.087,
"predicted_HR": 0.0788,
"predicted_OBP": 0.2357,
"predicted_R": 0.4335,
"predicted_RBI": 0.2216,
"predicted_SLG": 0.2954,
"predicted_SO": 1.1725
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1802,
"after": 0.1802,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0129,
"after": 0.0129,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4472,
"after": 3.4472,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2527,
"after": 0.1671,
"delta": -0.0856,
"percent_delta": -0.3387,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3144,
"after": 0.3092,
"delta": -0.0052,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6023,
"after": 0.576,
"delta": -0.0263,
"percent_delta": -0.0437,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.087,
"after": 0.087,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0826,
"after": 0.0788,
"delta": -0.0038,
"percent_delta": -0.046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3247,
"after": 0.2357,
"delta": -0.089,
"percent_delta": -0.2741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4687,
"after": 0.4335,
"delta": -0.0352,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2396,
"after": 0.2216,
"delta": -0.018,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4154,
"after": 0.2954,
"delta": -0.12,
"percent_delta": -0.2889,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1534,
"after": 1.1725,
"delta": 0.0191,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4154,
"after": 0.2954,
"delta": -0.12,
"percent_delta": -0.2889,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.45), rates preserved: AVG=0.167 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1802,
"after": 0.0,
"delta": -0.1802,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0129,
"after": 0.0,
"delta": -0.0129,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4472,
"after": 3.0,
"delta": -0.4472,
"percent_delta": -0.1297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3092,
"after": 0.0,
"delta": -0.3092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.576,
"after": 1.0,
"delta": 0.424,
"percent_delta": 0.7361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.087,
"after": 0.0,
"delta": -0.087,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0788,
"after": 0.0,
"delta": -0.0788,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2216,
"after": 0.0,
"delta": -0.2216,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1725,
"after": 1.0,
"delta": -0.1725,
"percent_delta": -0.1471,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.576,
"after": 1.0,
"delta": 0.424,
"percent_delta": 0.7361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.4472,
"after": 3.0,
"delta": -0.4472,
"percent_delta": -0.1297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4335,
"after": 0.0,
"delta": -0.4335,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4335,
"after": 0.0,
"delta": -0.4335,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1671,
"after": 0.333,
"delta": 0.1659,
"percent_delta": 0.9928,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2357,
"after": 0.333,
"delta": 0.0973,
"percent_delta": 0.4128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2954,
"after": 0.333,
"delta": 0.0376,
"percent_delta": 0.1273,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1671,
"after": 0.333,
"delta": 0.1659,
"percent_delta": 0.9928,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1671,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2357,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2954,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1671,
"delta": -0.1659,
"percent_delta": -0.4982,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2357,
"delta": -0.0973,
"percent_delta": -0.2923,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2954,
"delta": -0.0376,
"percent_delta": -0.1129,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1671,
"delta": -0.1659,
"percent_delta": -0.4982,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.015,
"after": 0.0,
"delta": -0.015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.368,
"after": 4.0,
"delta": 0.632,
"percent_delta": 0.1876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.1671,
"delta": -0.0749,
"percent_delta": -0.3095,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.309,
"after": 0.0,
"delta": -0.309,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.35,
"after": 1.0,
"delta": 0.65,
"percent_delta": 1.8571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.2357,
"delta": -0.0753,
"percent_delta": -0.2421,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.426,
"after": 0.0,
"delta": -0.426,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.411,
"after": 0.2954,
"delta": -0.1156,
"percent_delta": -0.2813,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.132,
"after": 3.0,
"delta": 1.868,
"percent_delta": 1.6502,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.132,
"after": 3.0,
"delta": 1.868,
"percent_delta": 1.6502,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.426,
"after": 0.0,
"delta": -0.426,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | - |
| predicted_3B | 0.015 | - |
| predicted_AB | 3.368 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.309 | - |
| predicted_H | 0.350 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.311 | - |
| predicted_R | 0.426 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.411 | - |
| predicted_SO | 1.132 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.180 | 0.004 |
| predicted_3B | 0.013 | -0.002 |
| predicted_AB | 3.447 | 0.079 |
| predicted_AVG | 0.253 | 0.011 |
| predicted_BB | 0.314 | 0.005 |
| predicted_H | 0.602 | 0.252 |
| predicted_HBP | 0.087 | - |
| predicted_HR | 0.083 | 0.023 |
| predicted_OBP | 0.325 | 0.014 |
| predicted_R | 0.469 | 0.043 |
| predicted_RBI | 0.240 | 0.070 |
| predicted_SLG | 0.415 | 0.004 |
| predicted_SO | 1.153 | 0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.180 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.447 | 0.000 |
| predicted_AVG | 0.167 | -0.086 |
| predicted_BB | 0.309 | -0.005 |
| predicted_H | 0.576 | -0.026 |
| predicted_HBP | 0.087 | 0.000 |
| predicted_HR | 0.079 | -0.004 |
| predicted_OBP | 0.236 | -0.089 |
| predicted_R | 0.433 | -0.035 |
| predicted_RBI | 0.222 | -0.018 |
| predicted_SLG | 0.295 | -0.120 |
| predicted_SO | 1.173 | 0.019 |
AB rounded to 3 (raw=3.45), rates preserved: AVG=0.167 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.180 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 3.000 | -0.447 |
| predicted_AVG | 0.333 | 0.166 |
| predicted_BB | 0.000 | -0.309 |
| predicted_H | 1.000 | 0.424 |
| predicted_HR | 0.000 | -0.079 |
| predicted_OBP | 0.333 | 0.097 |
| predicted_R | 0.000 | -0.433 |
| predicted_RBI | 0.000 | -0.222 |
| predicted_SLG | 0.333 | 0.038 |
| predicted_SO | 1.000 | -0.173 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 4.000 | 1.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 7.000 | 0.2105 | 0.3182 | 0.2632 | 0.2105 | 0.0000 | 0.0526 | 0.1053 | 0.3684 |
| last_10 | 0.20 | 10 | - | 37.000 | 13.000 | 2.000 | 0.000 | 2.000 | 5.000 | 8.000 | 3.000 | 13.000 | 0.3514 | 0.4146 | 0.5676 | 0.3513 | 0.0541 | 0.1351 | 0.0811 | 0.3513 |
| season | 0.60 | 68 | - | 229.000 | 60.000 | 12.000 | 1.000 | 8.000 | 20.000 | 29.000 | 21.000 | 77.000 | 0.2620 | 0.3346 | 0.4279 | 0.2620 | 0.0349 | 0.0873 | 0.0917 | 0.3362 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1860 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.5570 |
| predicted_AVG | 0.2676 |
| predicted_BB | 0.3220 |
| predicted_H | 0.9520 |
| predicted_HBP | 0.0870 |
| predicted_HR | 0.1140 |
| predicted_OBP | 0.3437 |
| predicted_R | 0.5280 |
| predicted_RBI | 0.3360 |
| predicted_SLG | 0.4215 |
| predicted_SO | 1.1830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.1860 | 0.1802 | model_form_blend |
| predicted_3B | 0.0150 | 0.0100 | 0.0129 | model_form_blend |
| predicted_AB | 3.3680 | 3.5570 | 3.4472 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2676 | 0.2527 | model_form_blend |
| predicted_BB | 0.3090 | 0.3220 | 0.3144 | model_form_blend |
| predicted_H | 0.3500 | 0.9520 | 0.6023 | model_form_blend |
| predicted_HBP | - | 0.0870 | 0.0870 | form_only |
| predicted_HR | 0.0600 | 0.1140 | 0.0826 | model_form_blend |
| predicted_OBP | 0.3110 | 0.3437 | 0.3247 | model_form_blend |
| predicted_R | 0.4260 | 0.5280 | 0.4687 | model_form_blend |
| predicted_RBI | 0.1700 | 0.3360 | 0.2396 | model_form_blend |
| predicted_SLG | 0.4110 | 0.4215 | 0.4154 | model_form_blend |
| predicted_SO | 1.1320 | 1.1830 | 1.1534 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 197 |
| Season rows before report date | 197 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.262 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 695506 |
| playerID | 695506 |
| playerName | Jac Caglianone |
| pos | RF |
| started | True |
| startingPosition | 1B |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.8 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.342 |
| sl_xwoba | 0.356 |
| sl_xba | 0.272 |
| sl_xslg | 0.473 |
| sl_sweet_spot_percent | 39.4 |
| sl_barrel_batted_rate | 14.2 |
| sl_hard_hit_percent | 56.8 |
| sl_exit_velocity_avg | 93.4 |
| sl_launch_angle_avg | 8.0 |
| sl_whiff_percent | 31.3 |
| sl_swing_percent | 49.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.073 | 0.000 | 0.000 | Hitting_2B | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.770 | 3.000 | 3.000 | Hitting_AB | 2.804 | 4.000 | 0.196 | -1.000 |
| predicted_AVG | 0.255 | 0.667 | 0.333 | Hitting_AVG | 0.227 | 0.250 | 0.439 | 0.417 |
| predicted_BB | 0.491 | 2.000 | 1.000 | Hitting_BB | 0.551 | 1.000 | 1.449 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_H | 0.710 | 2.000 | 1.000 | Hitting_H | 0.638 | 1.000 | 1.362 | 1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.072 | 1.000 | -0.072 | -1.000 |
| predicted_OBP | 0.341 | 0.800 | 0.500 | Hitting_OBP | 0.357 | 0.400 | 0.443 | 0.400 |
| predicted_R | 0.273 | 0.000 | 0.000 | Hitting_R | 0.254 | 1.000 | -0.254 | -1.000 |
| predicted_RBI | 0.390 | 0.000 | 0.000 | Hitting_RBI | 0.312 | 1.000 | -0.312 | -1.000 |
| predicted_SLG | 0.427 | 0.667 | 0.333 | Hitting_SLG | 0.333 | 1.000 | 0.333 | -0.333 |
| predicted_SO | 0.691 | 0.000 | 1.000 | Hitting_SO | 0.754 | 1.000 | -0.754 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_BB: 0.4910 -> 2.0000 (boost 1.5090, better) |
| Biggest Deboost | predicted_SO: 0.6910 -> 0.0000 (deboost -0.6910, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_AB: 2.7700 -> 2.9057 (boost 0.1357, better) | predicted_AVG: 0.2550 -> 0.2455 (deboost -0.0095, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_AVG: 0.2455 -> 0.2349 (deboost -0.0106, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_BB: 0.5037 -> 1.0000 (boost 0.4963, better) | predicted_RBI: 0.3634 -> 0.0000 (deboost -0.3634, worse) | AB rounded to 3 (raw=2.91), rates preserved: AVG=0.235 HR/AB=0.059 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3252 -> 0.0000 (deboost -0.3252, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3479 -> 0.5000 (boost 0.1521, better) | predicted_SLG: 0.4355 -> 0.3330 (deboost -0.1025, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 3 | 0 | predicted_BB: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4355 (boost 0.1025, better) | predicted_OBP: 0.5000 -> 0.3479 (deboost -0.1521, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "657041",
"player_name": "Lane Thomas",
"position": "CF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.073,
"predicted_3B": 0.0,
"predicted_AB": 2.77,
"predicted_AVG": 0.255,
"predicted_BB": 0.491,
"predicted_H": 0.71,
"predicted_HR": 0.16,
"predicted_OBP": 0.341,
"predicted_R": 0.273,
"predicted_RBI": 0.39,
"predicted_SLG": 0.427,
"predicted_SO": 0.691
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0701,
"predicted_3B": 0.0008,
"predicted_AB": 2.9057,
"predicted_AVG": 0.2455,
"predicted_BB": 0.5122,
"predicted_H": 0.7137,
"predicted_HBP": 0.042,
"predicted_HR": 0.1787,
"predicted_OBP": 0.3456,
"predicted_R": 0.3516,
"predicted_RBI": 0.3929,
"predicted_SLG": 0.4379,
"predicted_SO": 0.7138
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.073,
"after": 0.0701,
"delta": -0.0029,
"percent_delta": -0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.77,
"after": 2.9057,
"delta": 0.1357,
"percent_delta": 0.049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2455,
"delta": -0.0095,
"percent_delta": -0.0373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.491,
"after": 0.5122,
"delta": 0.0212,
"percent_delta": 0.0432,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 0.7137,
"delta": 0.0037,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.1787,
"delta": 0.0187,
"percent_delta": 0.1169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3456,
"delta": 0.0046,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.273,
"after": 0.3516,
"delta": 0.0786,
"percent_delta": 0.2879,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.3929,
"delta": 0.0029,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4379,
"delta": 0.0109,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.691,
"after": 0.7138,
"delta": 0.0228,
"percent_delta": 0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.77,
"after": 2.9057,
"delta": 0.1357,
"percent_delta": 0.049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2455,
"delta": -0.0095,
"percent_delta": -0.0373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 55
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0701,
"predicted_3B": 0.0008,
"predicted_AB": 2.9057,
"predicted_AVG": 0.2349,
"predicted_BB": 0.5037,
"predicted_H": 0.6826,
"predicted_HBP": 0.042,
"predicted_HR": 0.1704,
"predicted_OBP": 0.3479,
"predicted_R": 0.3252,
"predicted_RBI": 0.3634,
"predicted_SLG": 0.4355,
"predicted_SO": 0.7256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0701,
"after": 0.0701,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9057,
"after": 2.9057,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2455,
"after": 0.2349,
"delta": -0.0106,
"percent_delta": -0.0432,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5122,
"after": 0.5037,
"delta": -0.0085,
"percent_delta": -0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7137,
"after": 0.6826,
"delta": -0.0311,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.042,
"after": 0.042,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1787,
"after": 0.1704,
"delta": -0.0083,
"percent_delta": -0.0464,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3456,
"after": 0.3479,
"delta": 0.0023,
"percent_delta": 0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3516,
"after": 0.3252,
"delta": -0.0264,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3929,
"after": 0.3634,
"delta": -0.0295,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4379,
"after": 0.4355,
"delta": -0.0024,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.7138,
"after": 0.7256,
"delta": 0.0118,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2455,
"after": 0.2349,
"delta": -0.0106,
"percent_delta": -0.0432,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.91), rates preserved: AVG=0.235 HR/AB=0.059",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0701,
"after": 0.0,
"delta": -0.0701,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9057,
"after": 3.0,
"delta": 0.0943,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5037,
"after": 1.0,
"delta": 0.4963,
"percent_delta": 0.9853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6826,
"after": 1.0,
"delta": 0.3174,
"percent_delta": 0.465,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1704,
"after": 0.0,
"delta": -0.1704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3634,
"after": 0.0,
"delta": -0.3634,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7256,
"after": 1.0,
"delta": 0.2744,
"percent_delta": 0.3782,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5037,
"after": 1.0,
"delta": 0.4963,
"percent_delta": 0.9853,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3634,
"after": 0.0,
"delta": -0.3634,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3252,
"after": 0.0,
"delta": -0.3252,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3252,
"after": 0.0,
"delta": -0.3252,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.5,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2349,
"after": 0.333,
"delta": 0.0981,
"percent_delta": 0.4176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3479,
"after": 0.5,
"delta": 0.1521,
"percent_delta": 0.4372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4355,
"after": 0.333,
"delta": -0.1025,
"percent_delta": -0.2354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3479,
"after": 0.5,
"delta": 0.1521,
"percent_delta": 0.4372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4355,
"after": 0.333,
"delta": -0.1025,
"percent_delta": -0.2354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2349,
"predicted_BB": 2.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3479,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4355,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2349,
"delta": -0.0981,
"percent_delta": -0.2946,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.5,
"after": 0.3479,
"delta": -0.1521,
"percent_delta": -0.3041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4355,
"delta": 0.1025,
"percent_delta": 0.3079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4355,
"delta": 0.1025,
"percent_delta": 0.3079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.5,
"after": 0.3479,
"delta": -0.1521,
"percent_delta": -0.3041,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.073,
"after": 0.0,
"delta": -0.073,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.77,
"after": 3.0,
"delta": 0.23,
"percent_delta": 0.083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2349,
"delta": -0.0201,
"percent_delta": -0.0788,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.491,
"after": 2.0,
"delta": 1.509,
"percent_delta": 3.0733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 2.0,
"delta": 1.29,
"percent_delta": 1.8169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3479,
"delta": 0.0069,
"percent_delta": 0.0202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.273,
"after": 0.0,
"delta": -0.273,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4355,
"delta": 0.0085,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.691,
"after": 0.0,
"delta": -0.691,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.491,
"after": 2.0,
"delta": 1.509,
"percent_delta": 3.0733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.691,
"after": 0.0,
"delta": -0.691,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.073 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.770 | - |
| predicted_AVG | 0.255 | - |
| predicted_BB | 0.491 | - |
| predicted_H | 0.710 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.341 | - |
| predicted_R | 0.273 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.427 | - |
| predicted_SO | 0.691 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.070 | -0.003 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.906 | 0.136 |
| predicted_AVG | 0.245 | -0.010 |
| predicted_BB | 0.512 | 0.021 |
| predicted_H | 0.714 | 0.004 |
| predicted_HBP | 0.042 | - |
| predicted_HR | 0.179 | 0.019 |
| predicted_OBP | 0.346 | 0.005 |
| predicted_R | 0.352 | 0.079 |
| predicted_RBI | 0.393 | 0.003 |
| predicted_SLG | 0.438 | 0.011 |
| predicted_SO | 0.714 | 0.023 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.070 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.906 | 0.000 |
| predicted_AVG | 0.235 | -0.011 |
| predicted_BB | 0.504 | -0.008 |
| predicted_H | 0.683 | -0.031 |
| predicted_HBP | 0.042 | 0.000 |
| predicted_HR | 0.170 | -0.008 |
| predicted_OBP | 0.348 | 0.002 |
| predicted_R | 0.325 | -0.026 |
| predicted_RBI | 0.363 | -0.030 |
| predicted_SLG | 0.435 | -0.002 |
| predicted_SO | 0.726 | 0.012 |
AB rounded to 3 (raw=2.91), rates preserved: AVG=0.235 HR/AB=0.059
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.070 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.094 |
| predicted_AVG | 0.333 | 0.098 |
| predicted_BB | 1.000 | 0.496 |
| predicted_H | 1.000 | 0.317 |
| predicted_HR | 0.000 | -0.170 |
| predicted_OBP | 0.500 | 0.152 |
| predicted_R | 0.000 | -0.325 |
| predicted_RBI | 0.000 | -0.363 |
| predicted_SLG | 0.333 | -0.102 |
| predicted_SO | 1.000 | 0.274 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 2.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 0.000 | 0.000 | 3.000 | 3.000 | 5.000 | 4.000 | 3.000 | 0.2222 | 0.3636 | 0.7222 | 0.2222 | 0.1667 | 0.1667 | 0.2222 | 0.1667 |
| last_10 | 0.20 | 10 | - | 33.000 | 8.000 | 0.000 | 0.000 | 3.000 | 4.000 | 6.000 | 6.000 | 9.000 | 0.2424 | 0.3750 | 0.5152 | 0.2424 | 0.0909 | 0.1212 | 0.1818 | 0.2727 |
| season | 0.60 | 55 | - | 146.000 | 33.000 | 4.000 | 0.000 | 5.000 | 17.000 | 15.000 | 27.000 | 38.000 | 0.2260 | 0.3523 | 0.3562 | 0.2260 | 0.0343 | 0.1164 | 0.1849 | 0.2603 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0660 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1030 |
| predicted_AVG | 0.2317 |
| predicted_BB | 0.5430 |
| predicted_H | 0.7190 |
| predicted_HBP | 0.0420 |
| predicted_HR | 0.2060 |
| predicted_OBP | 0.3524 |
| predicted_R | 0.4660 |
| predicted_RBI | 0.3970 |
| predicted_SLG | 0.4537 |
| predicted_SO | 0.7470 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0730 | 0.0660 | 0.0701 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.7700 | 3.1030 | 2.9057 | model_form_blend |
| predicted_AVG | 0.2550 | 0.2317 | 0.2455 | model_form_blend |
| predicted_BB | 0.4910 | 0.5430 | 0.5122 | model_form_blend |
| predicted_H | 0.7100 | 0.7190 | 0.7137 | model_form_blend |
| predicted_HBP | - | 0.0420 | 0.0420 | form_only |
| predicted_HR | 0.1600 | 0.2060 | 0.1787 | model_form_blend |
| predicted_OBP | 0.3410 | 0.3524 | 0.3456 | model_form_blend |
| predicted_R | 0.2730 | 0.4660 | 0.3516 | model_form_blend |
| predicted_RBI | 0.3900 | 0.3970 | 0.3929 | model_form_blend |
| predicted_SLG | 0.4270 | 0.4537 | 0.4379 | model_form_blend |
| predicted_SO | 0.6910 | 0.7470 | 0.7138 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 138 |
| Season rows before report date | 138 |
| Report year | 2026 |
| Profile rows used | 55 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 657041 |
| playerID | 657041 |
| playerName | Lane Thomas |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 21.2 |
| sl_bb_percent | 16.2 |
| sl_woba | 0.327 |
| sl_xwoba | 0.324 |
| sl_xba | 0.229 |
| sl_xslg | 0.349 |
| sl_sweet_spot_percent | 38.2 |
| sl_barrel_batted_rate | 5.5 |
| sl_hard_hit_percent | 36.4 |
| sl_exit_velocity_avg | 87.0 |
| sl_launch_angle_avg | 24.1 |
| sl_whiff_percent | 19.6 |
| sl_swing_percent | 39.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.147 | 0.000 | -0.147 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.600 | 4.000 | 3.000 | Hitting_AB | 2.882 | 4.000 | 1.118 | 0.000 |
| predicted_AVG | 0.266 | 0.000 | 0.333 | Hitting_AVG | 0.301 | 0.250 | -0.301 | -0.250 |
| predicted_BB | 0.167 | 0.000 | 0.000 | Hitting_BB | 0.191 | 0.000 | -0.191 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.059 | 0.000 | -0.059 | 0.000 |
| predicted_H | 0.670 | 0.000 | 1.000 | Hitting_H | 0.868 | 1.000 | -0.868 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.015 | 0.000 | -0.015 | 0.000 |
| predicted_OBP | 0.304 | 0.000 | 0.333 | Hitting_OBP | 0.353 | 0.250 | -0.353 | -0.250 |
| predicted_R | 0.200 | 0.000 | 0.000 | Hitting_R | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.162 | 0.000 | -0.162 | 0.000 |
| predicted_SLG | 0.374 | 0.000 | 0.333 | Hitting_SLG | 0.367 | 0.250 | -0.367 | -0.250 |
| predicted_SO | 0.800 | 1.000 | 1.000 | Hitting_SO | 0.853 | 0.000 | 0.147 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 2.6000 -> 4.0000 (boost 1.4000, better) |
| Biggest Deboost | predicted_H: 0.6700 -> 0.0000 (deboost -0.6700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_AB: 2.6000 -> 2.7557 (boost 0.1557, better) | predicted_AVG: 0.2660 -> 0.2579 (deboost -0.0081, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3705 -> 0.3766 (boost 0.0061, better) | predicted_OBP: 0.3030 -> 0.2861 (deboost -0.0169, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_H: 0.6648 -> 1.0000 (boost 0.3352, better) | predicted_RBI: 0.3089 -> 0.0000 (deboost -0.3089, worse) | AB rounded to 3 (raw=2.76), rates preserved: AVG=0.241 HR/AB=0.033 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2237 -> 0.0000 (deboost -0.2237, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2412 -> 0.3330 (boost 0.0918, better) | predicted_SLG: 0.3766 -> 0.3330 (deboost -0.0436, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3766 (boost 0.0436, better) | predicted_AVG: 0.3330 -> 0.2412 (deboost -0.0918, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "516782",
"player_name": "Starling Marte",
"position": "RF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.0,
"predicted_AB": 2.6,
"predicted_AVG": 0.266,
"predicted_BB": 0.167,
"predicted_H": 0.67,
"predicted_HR": 0.1,
"predicted_OBP": 0.304,
"predicted_R": 0.2,
"predicted_RBI": 0.34,
"predicted_SLG": 0.374,
"predicted_SO": 0.8
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0963,
"predicted_3B": 0.0011,
"predicted_AB": 2.7557,
"predicted_AVG": 0.2579,
"predicted_BB": 0.176,
"predicted_H": 0.6951,
"predicted_HBP": 0.059,
"predicted_HR": 0.0959,
"predicted_OBP": 0.303,
"predicted_R": 0.2419,
"predicted_RBI": 0.334,
"predicted_SLG": 0.3705,
"predicted_SO": 0.8127
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0963,
"delta": -0.0037,
"percent_delta": -0.037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0011,
"delta": 0.0011,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6,
"after": 2.7557,
"delta": 0.1557,
"percent_delta": 0.0599,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2579,
"delta": -0.0081,
"percent_delta": -0.0305,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.167,
"after": 0.176,
"delta": 0.009,
"percent_delta": 0.0539,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 0.6951,
"delta": 0.0251,
"percent_delta": 0.0375,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0959,
"delta": -0.0041,
"percent_delta": -0.041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.303,
"delta": -0.001,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2,
"after": 0.2419,
"delta": 0.0419,
"percent_delta": 0.2095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.334,
"delta": -0.006,
"percent_delta": -0.0176,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3705,
"delta": -0.0035,
"percent_delta": -0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 0.8127,
"delta": 0.0127,
"percent_delta": 0.0159,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.6,
"after": 2.7557,
"delta": 0.1557,
"percent_delta": 0.0599,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2579,
"delta": -0.0081,
"percent_delta": -0.0305,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 30
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0963,
"predicted_3B": 0.0011,
"predicted_AB": 2.7557,
"predicted_AVG": 0.2412,
"predicted_BB": 0.1731,
"predicted_H": 0.6648,
"predicted_HBP": 0.059,
"predicted_HR": 0.0915,
"predicted_OBP": 0.2861,
"predicted_R": 0.2237,
"predicted_RBI": 0.3089,
"predicted_SLG": 0.3766,
"predicted_SO": 0.8262
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0963,
"after": 0.0963,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7557,
"after": 2.7557,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2579,
"after": 0.2412,
"delta": -0.0167,
"percent_delta": -0.0648,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.176,
"after": 0.1731,
"delta": -0.0029,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6951,
"after": 0.6648,
"delta": -0.0303,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.059,
"after": 0.059,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0959,
"after": 0.0915,
"delta": -0.0044,
"percent_delta": -0.0459,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.2861,
"delta": -0.0169,
"percent_delta": -0.0558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2419,
"after": 0.2237,
"delta": -0.0182,
"percent_delta": -0.0752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.334,
"after": 0.3089,
"delta": -0.0251,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3705,
"after": 0.3766,
"delta": 0.0061,
"percent_delta": 0.0165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8127,
"after": 0.8262,
"delta": 0.0135,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.3705,
"after": 0.3766,
"delta": 0.0061,
"percent_delta": 0.0165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.2861,
"delta": -0.0169,
"percent_delta": -0.0558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.76), rates preserved: AVG=0.241 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0963,
"after": 0.0,
"delta": -0.0963,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0,
"delta": -0.0011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7557,
"after": 3.0,
"delta": 0.2443,
"percent_delta": 0.0887,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1731,
"after": 0.0,
"delta": -0.1731,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6648,
"after": 1.0,
"delta": 0.3352,
"percent_delta": 0.5042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.059,
"after": 0.0,
"delta": -0.059,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0915,
"after": 0.0,
"delta": -0.0915,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3089,
"after": 0.0,
"delta": -0.3089,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8262,
"after": 1.0,
"delta": 0.1738,
"percent_delta": 0.2104,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6648,
"after": 1.0,
"delta": 0.3352,
"percent_delta": 0.5042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3089,
"after": 0.0,
"delta": -0.3089,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9429,
"bvp": 0.0571
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2237,
"after": 0.0,
"delta": -0.2237,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2237,
"after": 0.0,
"delta": -0.2237,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2412,
"after": 0.333,
"delta": 0.0918,
"percent_delta": 0.3806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2861,
"after": 0.333,
"delta": 0.0469,
"percent_delta": 0.1639,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3766,
"after": 0.333,
"delta": -0.0436,
"percent_delta": -0.1158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2412,
"after": 0.333,
"delta": 0.0918,
"percent_delta": 0.3806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3766,
"after": 0.333,
"delta": -0.0436,
"percent_delta": -0.1158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2412,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2861,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3766,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2412,
"delta": -0.0918,
"percent_delta": -0.2755,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2861,
"delta": -0.0469,
"percent_delta": -0.1409,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3766,
"delta": 0.0436,
"percent_delta": 0.1308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3766,
"delta": 0.0436,
"percent_delta": 0.1308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2412,
"delta": -0.0918,
"percent_delta": -0.2755,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.6,
"after": 4.0,
"delta": 1.4,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2412,
"delta": -0.0248,
"percent_delta": -0.0932,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.167,
"after": 0.0,
"delta": -0.167,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 0.0,
"delta": -0.67,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.2861,
"delta": -0.0179,
"percent_delta": -0.0589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3766,
"delta": 0.0026,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.6,
"after": 4.0,
"delta": 1.4,
"percent_delta": 0.5385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.67,
"after": 0.0,
"delta": -0.67,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.600 | - |
| predicted_AVG | 0.266 | - |
| predicted_BB | 0.167 | - |
| predicted_H | 0.670 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.200 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.374 | - |
| predicted_SO | 0.800 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.096 | -0.004 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.756 | 0.156 |
| predicted_AVG | 0.258 | -0.008 |
| predicted_BB | 0.176 | 0.009 |
| predicted_H | 0.695 | 0.025 |
| predicted_HBP | 0.059 | - |
| predicted_HR | 0.096 | -0.004 |
| predicted_OBP | 0.303 | -0.001 |
| predicted_R | 0.242 | 0.042 |
| predicted_RBI | 0.334 | -0.006 |
| predicted_SLG | 0.370 | -0.004 |
| predicted_SO | 0.813 | 0.013 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.096 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.756 | 0.000 |
| predicted_AVG | 0.241 | -0.017 |
| predicted_BB | 0.173 | -0.003 |
| predicted_H | 0.665 | -0.030 |
| predicted_HBP | 0.059 | 0.000 |
| predicted_HR | 0.091 | -0.004 |
| predicted_OBP | 0.286 | -0.017 |
| predicted_R | 0.224 | -0.018 |
| predicted_RBI | 0.309 | -0.025 |
| predicted_SLG | 0.377 | 0.006 |
| predicted_SO | 0.826 | 0.014 |
AB rounded to 3 (raw=2.76), rates preserved: AVG=0.241 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=5.0, weight=0.057, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.096 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.244 |
| predicted_AVG | 0.333 | 0.092 |
| predicted_BB | 0.000 | -0.173 |
| predicted_H | 1.000 | 0.335 |
| predicted_HR | 0.000 | -0.091 |
| predicted_OBP | 0.333 | 0.047 |
| predicted_R | 0.000 | -0.224 |
| predicted_RBI | 0.000 | -0.309 |
| predicted_SLG | 0.333 | -0.044 |
| predicted_SO | 1.000 | 0.174 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 4.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 1.000 | 4.000 | 0.2500 | 0.2941 | 0.4375 | 0.2500 | 0.0625 | 0.1875 | 0.0625 | 0.2500 |
| last_10 | 0.20 | 10 | - | 26.000 | 5.000 | 0.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 8.000 | 0.1923 | 0.2500 | 0.3077 | 0.1923 | 0.0385 | 0.1154 | 0.0385 | 0.3077 |
| season | 0.60 | 30 | - | 78.000 | 20.000 | 3.000 | 0.000 | 1.000 | 5.000 | 6.000 | 5.000 | 24.000 | 0.2564 | 0.3140 | 0.3333 | 0.2564 | 0.0128 | 0.0641 | 0.0641 | 0.3077 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0900 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.0160 |
| predicted_AVG | 0.2444 |
| predicted_BB | 0.1910 |
| predicted_H | 0.7370 |
| predicted_HBP | 0.0590 |
| predicted_HR | 0.0890 |
| predicted_OBP | 0.3014 |
| predicted_R | 0.3120 |
| predicted_RBI | 0.3240 |
| predicted_SLG | 0.3647 |
| predicted_SO | 0.8340 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.0900 | 0.0963 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 2.6000 | 3.0160 | 2.7557 | model_form_blend |
| predicted_AVG | 0.2660 | 0.2444 | 0.2579 | model_form_blend |
| predicted_BB | 0.1670 | 0.1910 | 0.1760 | model_form_blend |
| predicted_H | 0.6700 | 0.7370 | 0.6951 | model_form_blend |
| predicted_HBP | - | 0.0590 | 0.0590 | form_only |
| predicted_HR | 0.1000 | 0.0890 | 0.0959 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3014 | 0.3030 | model_form_blend |
| predicted_R | 0.2000 | 0.3120 | 0.2419 | model_form_blend |
| predicted_RBI | 0.3400 | 0.3240 | 0.3340 | model_form_blend |
| predicted_SLG | 0.3740 | 0.3647 | 0.3705 | model_form_blend |
| predicted_SO | 0.8000 | 0.8340 | 0.8127 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 68 |
| Season rows before report date | 68 |
| Report year | 2026 |
| Profile rows used | 30 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.256 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260616_KC@WAS |
| game_type | full |
| mlbID | 516782 |
| playerID | 516782 |
| playerName | Starling Marte |
| pos | RF |
| started | True |
| startingPosition | DH |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-16 |
| sl_k_percent | 27.9 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.292 |
| sl_xwoba | 0.303 |
| sl_xba | 0.238 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 30.9 |
| sl_barrel_batted_rate | 12.7 |
| sl_hard_hit_percent | 38.2 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 6.0 |
| sl_whiff_percent | 29.7 |
| sl_swing_percent | 50.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.257 | 0.000 | 0.000 | Hitting_2B | 0.252 | 0.000 | -0.252 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.380 | 4.000 | 4.000 | Hitting_AB | 4.011 | 4.000 | -0.011 | 0.000 |
| predicted_AVG | 0.265 | 0.000 | 0.250 | Hitting_AVG | 0.289 | 0.250 | -0.289 | -0.250 |
| predicted_BB | 0.446 | 1.000 | 0.000 | Hitting_BB | 0.450 | 1.000 | 0.550 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.061 | 0.000 | -0.061 | 0.000 |
| predicted_H | 1.160 | 0.000 | 1.000 | Hitting_H | 1.160 | 1.000 | -1.160 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.153 | 0.000 | -0.153 | 0.000 |
| predicted_OBP | 0.369 | 0.200 | 0.250 | Hitting_OBP | 0.359 | 0.400 | -0.159 | -0.200 |
| predicted_R | 0.514 | 0.000 | 0.000 | Hitting_R | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_RBI | 0.450 | 0.000 | 0.000 | Hitting_RBI | 0.443 | 1.000 | -0.443 | -1.000 |
| predicted_SLG | 0.444 | 0.000 | 0.250 | Hitting_SLG | 0.476 | 0.250 | -0.476 | -0.250 |
| predicted_SO | 0.770 | 1.000 | 1.000 | Hitting_SO | 0.844 | 0.000 | 0.156 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.4460 -> 1.0000 (boost 0.5540, better) |
| Biggest Deboost | predicted_H: 1.1600 -> 0.0000 (deboost -1.1600, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 3 | 2 | 4 | 1 | predicted_H: 1.1600 -> 1.2111 (boost 0.0511, better) | predicted_AB: 4.3800 -> 4.2072 (deboost -0.1728, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 0 | 4 | 0 | 4 | - | predicted_H: 1.2111 -> 1.1583 (deboost -0.0528, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.7197 -> 1.0000 (boost 0.2803, worse) | predicted_BB: 0.4490 -> 0.0000 (deboost -0.4490, worse) | AB rounded to 4 (raw=4.38), rates preserved: AVG=0.264 HR/AB=0.023 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4943 -> 0.0000 (deboost -0.4943, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4165 -> 0.2500 (deboost -0.1665, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4165 (boost 0.1665, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"position": "SS",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.257,
"predicted_3B": 0.014,
"predicted_AB": 4.38,
"predicted_AVG": 0.265,
"predicted_BB": 0.446,
"predicted_H": 1.16,
"predicted_HR": 0.13,
"predicted_OBP": 0.369,
"predicted_R": 0.514,
"predicted_RBI": 0.45,
"predicted_SLG": 0.444,
"predicted_SO": 0.77
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2613,
"predicted_3B": 0.0119,
"predicted_AB": 4.2072,
"predicted_AVG": 0.2893,
"predicted_BB": 0.4566,
"predicted_H": 1.2111,
"predicted_HBP": 0.01,
"predicted_HR": 0.1079,
"predicted_OBP": 0.3794,
"predicted_R": 0.5344,
"predicted_RBI": 0.4232,
"predicted_SLG": 0.4477,
"predicted_SO": 0.7079
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.257,
"after": 0.2613,
"delta": 0.0043,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.38,
"after": 4.2072,
"delta": -0.1728,
"percent_delta": -0.0395,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2893,
"delta": 0.0243,
"percent_delta": 0.0917,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.446,
"after": 0.4566,
"delta": 0.0106,
"percent_delta": 0.0238,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.16,
"after": 1.2111,
"delta": 0.0511,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1079,
"delta": -0.0221,
"percent_delta": -0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.369,
"after": 0.3794,
"delta": 0.0104,
"percent_delta": 0.0282,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.514,
"after": 0.5344,
"delta": 0.0204,
"percent_delta": 0.0397,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.4232,
"delta": -0.0268,
"percent_delta": -0.0596,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.444,
"after": 0.4477,
"delta": 0.0037,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.77,
"after": 0.7079,
"delta": -0.0621,
"percent_delta": -0.0806,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.16,
"after": 1.2111,
"delta": 0.0511,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.38,
"after": 4.2072,
"delta": -0.1728,
"percent_delta": -0.0395,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 74
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2613,
"predicted_3B": 0.0119,
"predicted_AB": 4.2072,
"predicted_AVG": 0.2753,
"predicted_BB": 0.449,
"predicted_H": 1.1583,
"predicted_HBP": 0.01,
"predicted_HR": 0.1029,
"predicted_OBP": 0.3452,
"predicted_R": 0.4943,
"predicted_RBI": 0.3914,
"predicted_SLG": 0.4165,
"predicted_SO": 0.7197
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2613,
"after": 0.2613,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2072,
"after": 4.2072,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2893,
"after": 0.2753,
"delta": -0.014,
"percent_delta": -0.0484,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4566,
"after": 0.449,
"delta": -0.0076,
"percent_delta": -0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2111,
"after": 1.1583,
"delta": -0.0528,
"percent_delta": -0.0436,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.01,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1079,
"after": 0.1029,
"delta": -0.005,
"percent_delta": -0.0463,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3794,
"after": 0.3452,
"delta": -0.0342,
"percent_delta": -0.0901,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5344,
"after": 0.4943,
"delta": -0.0401,
"percent_delta": -0.075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4232,
"after": 0.3914,
"delta": -0.0318,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4477,
"after": 0.4165,
"delta": -0.0312,
"percent_delta": -0.0697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7079,
"after": 0.7197,
"delta": 0.0118,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.2111,
"after": 1.1583,
"delta": -0.0528,
"percent_delta": -0.0436,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.38), rates preserved: AVG=0.264 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2613,
"after": 0.0,
"delta": -0.2613,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.2072,
"after": 4.0,
"delta": -0.2072,
"percent_delta": -0.0492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.449,
"after": 0.0,
"delta": -0.449,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1583,
"after": 1.0,
"delta": -0.1583,
"percent_delta": -0.1367,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1029,
"after": 0.0,
"delta": -0.1029,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3914,
"after": 0.0,
"delta": -0.3914,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7197,
"after": 1.0,
"delta": 0.2803,
"percent_delta": 0.3895,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7197,
"after": 1.0,
"delta": 0.2803,
"percent_delta": 0.3895,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.449,
"after": 0.0,
"delta": -0.449,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9243,
"bvp": 0.0757
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4943,
"after": 0.0,
"delta": -0.4943,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4943,
"after": 0.0,
"delta": -0.4943,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2753,
"after": 0.25,
"delta": -0.0253,
"percent_delta": -0.0919,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3452,
"after": 0.25,
"delta": -0.0952,
"percent_delta": -0.2758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4165,
"after": 0.25,
"delta": -0.1665,
"percent_delta": -0.3998,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4165,
"after": 0.25,
"delta": -0.1665,
"percent_delta": -0.3998,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2753,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3452,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4165,
"predicted_SO": 1.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2753,
"delta": 0.0253,
"percent_delta": 0.1013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3452,
"delta": 0.0952,
"percent_delta": 0.3808,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4165,
"delta": 0.1665,
"percent_delta": 0.6658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4165,
"delta": 0.1665,
"percent_delta": 0.6658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.257,
"after": 0.0,
"delta": -0.257,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.38,
"after": 4.0,
"delta": -0.38,
"percent_delta": -0.0868,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2753,
"delta": 0.0103,
"percent_delta": 0.0389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.446,
"after": 1.0,
"delta": 0.554,
"percent_delta": 1.2422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.16,
"after": 0.0,
"delta": -1.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.369,
"after": 0.3452,
"delta": -0.0238,
"percent_delta": -0.0645,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.514,
"after": 0.0,
"delta": -0.514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.444,
"after": 0.4165,
"delta": -0.0275,
"percent_delta": -0.0619,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.77,
"after": 1.0,
"delta": 0.23,
"percent_delta": 0.2987,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.446,
"after": 1.0,
"delta": 0.554,
"percent_delta": 1.2422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.16,
"after": 0.0,
"delta": -1.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.257 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.380 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.446 | - |
| predicted_H | 1.160 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.369 | - |
| predicted_R | 0.514 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.444 | - |
| predicted_SO | 0.770 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.261 | 0.004 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 4.207 | -0.173 |
| predicted_AVG | 0.289 | 0.024 |
| predicted_BB | 0.457 | 0.011 |
| predicted_H | 1.211 | 0.051 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.108 | -0.022 |
| predicted_OBP | 0.379 | 0.010 |
| predicted_R | 0.534 | 0.020 |
| predicted_RBI | 0.423 | -0.027 |
| predicted_SLG | 0.448 | 0.004 |
| predicted_SO | 0.708 | -0.062 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.261 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 4.207 | 0.000 |
| predicted_AVG | 0.275 | -0.014 |
| predicted_BB | 0.449 | -0.008 |
| predicted_H | 1.158 | -0.053 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.103 | -0.005 |
| predicted_OBP | 0.345 | -0.034 |
| predicted_R | 0.494 | -0.040 |
| predicted_RBI | 0.391 | -0.032 |
| predicted_SLG | 0.416 | -0.031 |
| predicted_SO | 0.720 | 0.012 |
AB rounded to 4 (raw=4.38), rates preserved: AVG=0.264 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.261 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | -0.207 |
| predicted_AVG | 0.250 | -0.025 |
| predicted_BB | 0.000 | -0.449 |
| predicted_H | 1.000 | -0.158 |
| predicted_HR | 0.000 | -0.103 |
| predicted_OBP | 0.250 | -0.095 |
| predicted_R | 0.000 | -0.494 |
| predicted_RBI | 0.000 | -0.391 |
| predicted_SLG | 0.250 | -0.166 |
| predicted_SO | 1.000 | 0.280 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 9.000 | 2.000 | 0.000 | 0.000 | 2.000 | 4.000 | 3.000 | 1.000 | 0.4500 | 0.5217 | 0.5500 | 0.4500 | 0.0000 | 0.1000 | 0.1500 | 0.0500 |
| last_10 | 0.20 | 10 | - | 40.000 | 13.000 | 2.000 | 0.000 | 0.000 | 3.000 | 5.000 | 5.000 | 5.000 | 0.3250 | 0.4000 | 0.3750 | 0.3250 | 0.0000 | 0.0750 | 0.1250 | 0.1250 |
| season | 0.60 | 74 | - | 294.000 | 85.000 | 19.000 | 1.000 | 9.000 | 29.000 | 38.000 | 33.000 | 57.000 | 0.2891 | 0.3606 | 0.4524 | 0.2891 | 0.0306 | 0.0986 | 0.1122 | 0.1939 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2670 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.9740 |
| predicted_AVG | 0.3220 |
| predicted_BB | 0.4710 |
| predicted_H | 1.2800 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.0780 |
| predicted_OBP | 0.3934 |
| predicted_R | 0.5620 |
| predicted_RBI | 0.3870 |
| predicted_SLG | 0.4526 |
| predicted_SO | 0.6240 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2570 | 0.2670 | 0.2613 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 4.3800 | 3.9740 | 4.2072 | model_form_blend |
| predicted_AVG | 0.2650 | 0.3220 | 0.2893 | model_form_blend |
| predicted_BB | 0.4460 | 0.4710 | 0.4566 | model_form_blend |
| predicted_H | 1.1600 | 1.2800 | 1.2111 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.1300 | 0.0780 | 0.1079 | model_form_blend |
| predicted_OBP | 0.3690 | 0.3934 | 0.3794 | model_form_blend |
| predicted_R | 0.5140 | 0.5620 | 0.5344 | model_form_blend |
| predicted_RBI | 0.4500 | 0.3870 | 0.4232 | model_form_blend |
| predicted_SLG | 0.4440 | 0.4526 | 0.4477 | model_form_blend |
| predicted_SO | 0.7700 | 0.6240 | 0.7079 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 262 |
| Season rows before report date | 262 |
| Report year | 2026 |
| Profile rows used | 74 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.289 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 677951 |
| playerID | 677951 |
| playerName | Bobby Witt Jr. |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.0 |
| sl_bb_percent | 10.4 |
| sl_woba | 0.356 |
| sl_xwoba | 0.387 |
| sl_xba | 0.309 |
| sl_xslg | 0.512 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 52.1 |
| sl_exit_velocity_avg | 93.2 |
| sl_launch_angle_avg | 16.9 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 47.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.088 | 0.000 | 0.000 | Hitting_2B | 0.097 | 0.000 | -0.097 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.100 | 4.000 | 4.000 | Hitting_AB | 3.878 | 5.000 | 0.122 | -1.000 |
| predicted_AVG | 0.212 | 0.000 | 0.250 | Hitting_AVG | 0.219 | 0.200 | -0.219 | -0.200 |
| predicted_BB | 0.176 | 0.000 | 0.000 | Hitting_BB | 0.215 | 0.000 | -0.215 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.870 | 0.000 | 1.000 | Hitting_H | 0.848 | 1.000 | -0.848 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.177 | 0.000 | -0.177 | 0.000 |
| predicted_OBP | 0.250 | 0.000 | 0.250 | Hitting_OBP | 0.269 | 0.200 | -0.269 | -0.200 |
| predicted_R | 0.368 | 0.000 | 0.000 | Hitting_R | 0.439 | 0.000 | -0.439 | 0.000 |
| predicted_RBI | 0.340 | 0.000 | 0.000 | Hitting_RBI | 0.473 | 0.000 | -0.473 | 0.000 |
| predicted_SLG | 0.324 | 0.000 | 0.250 | Hitting_SLG | 0.381 | 0.200 | -0.381 | -0.200 |
| predicted_SO | 0.809 | 2.000 | 1.000 | Hitting_SO | 0.806 | 0.000 | 1.194 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 0 |
| Worse Metrics | 11 |
| Biggest Boost | predicted_SO: 0.8090 -> 2.0000 (boost 1.1910, worse) |
| Biggest Deboost | predicted_H: 0.8700 -> 0.0000 (deboost -0.8700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3240 -> 0.3020 (deboost -0.0220, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3020 -> 0.2841 (deboost -0.0179, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.7888 -> 1.0000 (boost 0.2112, better) | predicted_RBI: 0.2914 -> 0.0000 (deboost -0.2914, worse) | AB rounded to 4 (raw=4.10), rates preserved: AVG=0.192 HR/AB=0.023 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.571) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3298 -> 0.0000 (deboost -0.3298, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1938 -> 0.2500 (boost 0.0562, better) | predicted_SLG: 0.2841 -> 0.2500 (deboost -0.0341, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 0 | 2 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.2841 (boost 0.0341, better) | predicted_AVG: 0.2500 -> 0.1938 (deboost -0.0562, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "521692",
"player_name": "Salvador Perez",
"position": "C",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.088,
"predicted_3B": 0.0,
"predicted_AB": 4.1,
"predicted_AVG": 0.212,
"predicted_BB": 0.176,
"predicted_H": 0.87,
"predicted_HR": 0.11,
"predicted_OBP": 0.25,
"predicted_R": 0.368,
"predicted_RBI": 0.34,
"predicted_SLG": 0.324,
"predicted_SO": 0.809
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0796,
"predicted_3B": 0.0004,
"predicted_AB": 4.0704,
"predicted_AVG": 0.2024,
"predicted_BB": 0.1557,
"predicted_H": 0.8248,
"predicted_HBP": 0.045,
"predicted_HR": 0.1003,
"predicted_OBP": 0.2371,
"predicted_R": 0.3566,
"predicted_RBI": 0.3151,
"predicted_SLG": 0.302,
"predicted_SO": 0.8174
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.088,
"after": 0.0796,
"delta": -0.0084,
"percent_delta": -0.0955,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1,
"after": 4.0704,
"delta": -0.0296,
"percent_delta": -0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.2024,
"delta": -0.0096,
"percent_delta": -0.0453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.176,
"after": 0.1557,
"delta": -0.0203,
"percent_delta": -0.1153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.8248,
"delta": -0.0452,
"percent_delta": -0.052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1003,
"delta": -0.0097,
"percent_delta": -0.0882,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2371,
"delta": -0.0129,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.368,
"after": 0.3566,
"delta": -0.0114,
"percent_delta": -0.031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.3151,
"delta": -0.0249,
"percent_delta": -0.0732,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.324,
"after": 0.302,
"delta": -0.022,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.809,
"after": 0.8174,
"delta": 0.0084,
"percent_delta": 0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.324,
"after": 0.302,
"delta": -0.022,
"percent_delta": -0.0679,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0796,
"predicted_3B": 0.0004,
"predicted_AB": 4.0704,
"predicted_AVG": 0.1938,
"predicted_BB": 0.1531,
"predicted_H": 0.7888,
"predicted_HBP": 0.045,
"predicted_HR": 0.0957,
"predicted_OBP": 0.223,
"predicted_R": 0.3298,
"predicted_RBI": 0.2914,
"predicted_SLG": 0.2841,
"predicted_SO": 0.831
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0796,
"after": 0.0796,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0704,
"after": 4.0704,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2024,
"after": 0.1938,
"delta": -0.0086,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1557,
"after": 0.1531,
"delta": -0.0026,
"percent_delta": -0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8248,
"after": 0.7888,
"delta": -0.036,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.045,
"after": 0.045,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1003,
"after": 0.0957,
"delta": -0.0046,
"percent_delta": -0.0459,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2371,
"after": 0.223,
"delta": -0.0141,
"percent_delta": -0.0595,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3566,
"after": 0.3298,
"delta": -0.0268,
"percent_delta": -0.0752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3151,
"after": 0.2914,
"delta": -0.0237,
"percent_delta": -0.0752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.302,
"after": 0.2841,
"delta": -0.0179,
"percent_delta": -0.0593,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8174,
"after": 0.831,
"delta": 0.0136,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.302,
"after": 0.2841,
"delta": -0.0179,
"percent_delta": -0.0593,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.10), rates preserved: AVG=0.192 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0796,
"after": 0.0,
"delta": -0.0796,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0704,
"after": 4.0,
"delta": -0.0704,
"percent_delta": -0.0173,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1531,
"after": 0.0,
"delta": -0.1531,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7888,
"after": 1.0,
"delta": 0.2112,
"percent_delta": 0.2677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.045,
"after": 0.0,
"delta": -0.045,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0957,
"after": 0.0,
"delta": -0.0957,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2914,
"after": 0.0,
"delta": -0.2914,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.831,
"after": 1.0,
"delta": 0.169,
"percent_delta": 0.2034,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7888,
"after": 1.0,
"delta": 0.2112,
"percent_delta": 0.2677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2914,
"after": 0.0,
"delta": -0.2914,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.571)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9243,
"bvp": 0.0757
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3298,
"after": 0.0,
"delta": -0.3298,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3298,
"after": 0.0,
"delta": -0.3298,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1938,
"after": 0.25,
"delta": 0.0562,
"percent_delta": 0.29,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.223,
"after": 0.25,
"delta": 0.027,
"percent_delta": 0.1211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2841,
"after": 0.25,
"delta": -0.0341,
"percent_delta": -0.12,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1938,
"after": 0.25,
"delta": 0.0562,
"percent_delta": 0.29,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2841,
"after": 0.25,
"delta": -0.0341,
"percent_delta": -0.12,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1938,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.223,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2841,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1938,
"delta": -0.0562,
"percent_delta": -0.2248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.223,
"delta": -0.027,
"percent_delta": -0.1079,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.2841,
"delta": 0.0341,
"percent_delta": 0.1362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.2841,
"delta": 0.0341,
"percent_delta": 0.1362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1938,
"delta": -0.0562,
"percent_delta": -0.2248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.088,
"after": 0.0,
"delta": -0.088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1,
"after": 4.0,
"delta": -0.1,
"percent_delta": -0.0244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.1938,
"delta": -0.0182,
"percent_delta": -0.0858,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.223,
"delta": -0.027,
"percent_delta": -0.108,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.368,
"after": 0.0,
"delta": -0.368,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.324,
"after": 0.2841,
"delta": -0.0399,
"percent_delta": -0.1231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.809,
"after": 2.0,
"delta": 1.191,
"percent_delta": 1.4722,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 0,
"worse_metrics": 11,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.809,
"after": 2.0,
"delta": 1.191,
"percent_delta": 1.4722,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.87,
"after": 0.0,
"delta": -0.87,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.088 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.100 | - |
| predicted_AVG | 0.212 | - |
| predicted_BB | 0.176 | - |
| predicted_H | 0.870 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.250 | - |
| predicted_R | 0.368 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.324 | - |
| predicted_SO | 0.809 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.080 | -0.008 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.070 | -0.030 |
| predicted_AVG | 0.202 | -0.010 |
| predicted_BB | 0.156 | -0.020 |
| predicted_H | 0.825 | -0.045 |
| predicted_HBP | 0.045 | - |
| predicted_HR | 0.100 | -0.010 |
| predicted_OBP | 0.237 | -0.013 |
| predicted_R | 0.357 | -0.011 |
| predicted_RBI | 0.315 | -0.025 |
| predicted_SLG | 0.302 | -0.022 |
| predicted_SO | 0.817 | 0.008 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.080 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.070 | 0.000 |
| predicted_AVG | 0.194 | -0.009 |
| predicted_BB | 0.153 | -0.003 |
| predicted_H | 0.789 | -0.036 |
| predicted_HBP | 0.045 | 0.000 |
| predicted_HR | 0.096 | -0.005 |
| predicted_OBP | 0.223 | -0.014 |
| predicted_R | 0.330 | -0.027 |
| predicted_RBI | 0.291 | -0.024 |
| predicted_SLG | 0.284 | -0.018 |
| predicted_SO | 0.831 | 0.014 |
AB rounded to 4 (raw=4.10), rates preserved: AVG=0.192 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.571)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.080 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.070 |
| predicted_AVG | 0.250 | 0.056 |
| predicted_BB | 0.000 | -0.153 |
| predicted_H | 1.000 | 0.211 |
| predicted_HR | 0.000 | -0.096 |
| predicted_OBP | 0.250 | 0.027 |
| predicted_R | 0.000 | -0.330 |
| predicted_RBI | 0.000 | -0.291 |
| predicted_SLG | 0.250 | -0.034 |
| predicted_SO | 1.000 | 0.169 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 5.000 | 0.1429 | 0.1429 | 0.1429 | 0.1429 | 0.0000 | 0.0000 | 0.0000 | 0.2381 |
| last_10 | 0.20 | 10 | - | 43.000 | 7.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 0.000 | 7.000 | 0.1628 | 0.1628 | 0.1628 | 0.1628 | 0.0000 | 0.0233 | 0.0000 | 0.1628 |
| season | 0.60 | 68 | - | 266.000 | 54.000 | 6.000 | 0.000 | 9.000 | 26.000 | 25.000 | 12.000 | 55.000 | 0.2030 | 0.2474 | 0.3271 | 0.2030 | 0.0338 | 0.0977 | 0.0451 | 0.2068 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0680 |
| predicted_3B | 0.0010 |
| predicted_AB | 4.0300 |
| predicted_AVG | 0.1893 |
| predicted_BB | 0.1280 |
| predicted_H | 0.7630 |
| predicted_HBP | 0.0450 |
| predicted_HR | 0.0870 |
| predicted_OBP | 0.2194 |
| predicted_R | 0.3410 |
| predicted_RBI | 0.2810 |
| predicted_SLG | 0.2718 |
| predicted_SO | 0.8290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0880 | 0.0680 | 0.0796 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1000 | 4.0300 | 4.0704 | model_form_blend |
| predicted_AVG | 0.2120 | 0.1893 | 0.2024 | model_form_blend |
| predicted_BB | 0.1760 | 0.1280 | 0.1557 | model_form_blend |
| predicted_H | 0.8700 | 0.7630 | 0.8248 | model_form_blend |
| predicted_HBP | - | 0.0450 | 0.0450 | form_only |
| predicted_HR | 0.1100 | 0.0870 | 0.1003 | model_form_blend |
| predicted_OBP | 0.2500 | 0.2194 | 0.2371 | model_form_blend |
| predicted_R | 0.3680 | 0.3410 | 0.3566 | model_form_blend |
| predicted_RBI | 0.3400 | 0.2810 | 0.3151 | model_form_blend |
| predicted_SLG | 0.3240 | 0.2718 | 0.3020 | model_form_blend |
| predicted_SO | 0.8090 | 0.8290 | 0.8174 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 237 |
| Season rows before report date | 237 |
| Report year | 2026 |
| Profile rows used | 68 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.203 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 521692 |
| playerID | 521692 |
| playerName | Salvador Perez |
| pos | C |
| started | True |
| startingPosition | DH |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 4.1 |
| sl_woba | 0.249 |
| sl_xwoba | 0.282 |
| sl_xba | 0.222 |
| sl_xslg | 0.378 |
| sl_sweet_spot_percent | 31.7 |
| sl_barrel_batted_rate | 7.8 |
| sl_hard_hit_percent | 39.9 |
| sl_exit_velocity_avg | 88.5 |
| sl_launch_angle_avg | 17.0 |
| sl_whiff_percent | 25.3 |
| sl_swing_percent | 57.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.212 | 0.000 | 0.000 | Hitting_2B | 0.177 | 1.000 | -0.177 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.420 | 4.000 | 4.000 | Hitting_AB | 3.453 | 4.000 | 0.547 | 0.000 |
| predicted_AVG | 0.258 | 0.000 | 0.250 | Hitting_AVG | 0.235 | 1.000 | -0.235 | -1.000 |
| predicted_BB | 0.348 | 0.000 | 0.000 | Hitting_BB | 0.424 | 1.000 | -0.424 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.880 | 0.000 | 1.000 | Hitting_H | 0.813 | 4.000 | -0.813 | -4.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.128 | 1.000 | -0.128 | -1.000 |
| predicted_OBP | 0.334 | 0.000 | 0.250 | Hitting_OBP | 0.318 | 1.000 | -0.318 | -1.000 |
| predicted_R | 0.470 | 0.000 | 0.000 | Hitting_R | 0.438 | 1.000 | -0.438 | -1.000 |
| predicted_RBI | 0.580 | 0.000 | 1.000 | Hitting_RBI | 0.552 | 1.000 | -0.552 | -1.000 |
| predicted_SLG | 0.452 | 0.000 | 0.250 | Hitting_SLG | 0.398 | 2.000 | -0.398 | -2.000 |
| predicted_SO | 1.076 | 2.000 | 1.000 | Hitting_SO | 1.094 | 0.000 | 0.906 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 1 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.0760 -> 2.0000 (boost 0.9240, worse) |
| Biggest Deboost | predicted_H: 0.8800 -> 0.0000 (deboost -0.8800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 5 | 1 | 6 | 0 | predicted_AB: 3.4200 -> 3.5319 (boost 0.1119, better) | predicted_SO: 1.0760 -> 1.0119 (deboost -0.0641, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4743 -> 0.4523 (deboost -0.0220, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 3 | 3 | predicted_AB: 3.5319 -> 4.0000 (boost 0.4681, better) | predicted_BB: 0.3344 -> 0.0000 (deboost -0.3344, worse) | AB rounded to 4 (raw=3.53), rates preserved: AVG=0.259 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4723 -> 0.0000 (deboost -0.4723, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4523 -> 0.2500 (deboost -0.2023, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 0 | 3 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4523 (boost 0.2023, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695600",
"player_name": "Carter Jensen",
"position": "DH",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.212,
"predicted_3B": 0.0,
"predicted_AB": 3.42,
"predicted_AVG": 0.258,
"predicted_BB": 0.348,
"predicted_H": 0.88,
"predicted_HR": 0.14,
"predicted_OBP": 0.334,
"predicted_R": 0.47,
"predicted_RBI": 0.58,
"predicted_SLG": 0.452,
"predicted_SO": 1.076
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2577,
"predicted_3B": 0.0008,
"predicted_AB": 3.5319,
"predicted_AVG": 0.2711,
"predicted_BB": 0.34,
"predicted_H": 0.958,
"predicted_HBP": 0.012,
"predicted_HR": 0.1475,
"predicted_OBP": 0.3381,
"predicted_R": 0.5107,
"predicted_RBI": 0.6374,
"predicted_SLG": 0.4743,
"predicted_SO": 1.0119
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.212,
"after": 0.2577,
"delta": 0.0457,
"percent_delta": 0.2156,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.42,
"after": 3.5319,
"delta": 0.1119,
"percent_delta": 0.0327,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2711,
"delta": 0.0131,
"percent_delta": 0.0508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.348,
"after": 0.34,
"delta": -0.008,
"percent_delta": -0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.958,
"delta": 0.078,
"percent_delta": 0.0886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1475,
"delta": 0.0075,
"percent_delta": 0.0536,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3381,
"delta": 0.0041,
"percent_delta": 0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.47,
"after": 0.5107,
"delta": 0.0407,
"percent_delta": 0.0866,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.6374,
"delta": 0.0574,
"percent_delta": 0.099,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4743,
"delta": 0.0223,
"percent_delta": 0.0493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.076,
"after": 1.0119,
"delta": -0.0641,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 5,
"deboosted_metrics": 1,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.42,
"after": 3.5319,
"delta": 0.1119,
"percent_delta": 0.0327,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.076,
"after": 1.0119,
"delta": -0.0641,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2577,
"predicted_3B": 0.0008,
"predicted_AB": 3.5319,
"predicted_AVG": 0.2594,
"predicted_BB": 0.3344,
"predicted_H": 0.9162,
"predicted_HBP": 0.012,
"predicted_HR": 0.1407,
"predicted_OBP": 0.3235,
"predicted_R": 0.4723,
"predicted_RBI": 0.5895,
"predicted_SLG": 0.4523,
"predicted_SO": 1.0287
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2577,
"after": 0.2577,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5319,
"after": 3.5319,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2711,
"after": 0.2594,
"delta": -0.0117,
"percent_delta": -0.0432,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.34,
"after": 0.3344,
"delta": -0.0056,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.958,
"after": 0.9162,
"delta": -0.0418,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.012,
"after": 0.012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1475,
"after": 0.1407,
"delta": -0.0068,
"percent_delta": -0.0461,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3381,
"after": 0.3235,
"delta": -0.0146,
"percent_delta": -0.0432,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5107,
"after": 0.4723,
"delta": -0.0384,
"percent_delta": -0.0752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6374,
"after": 0.5895,
"delta": -0.0479,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4743,
"after": 0.4523,
"delta": -0.022,
"percent_delta": -0.0464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0119,
"after": 1.0287,
"delta": 0.0168,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4743,
"after": 0.4523,
"delta": -0.022,
"percent_delta": -0.0464,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.53), rates preserved: AVG=0.259 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2577,
"after": 0.0,
"delta": -0.2577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5319,
"after": 4.0,
"delta": 0.4681,
"percent_delta": 0.1325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3344,
"after": 0.0,
"delta": -0.3344,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9162,
"after": 1.0,
"delta": 0.0838,
"percent_delta": 0.0915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.012,
"after": 0.0,
"delta": -0.012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1407,
"after": 0.0,
"delta": -0.1407,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5895,
"after": 1.0,
"delta": 0.4105,
"percent_delta": 0.6964,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0287,
"after": 1.0,
"delta": -0.0287,
"percent_delta": -0.0279,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5319,
"after": 4.0,
"delta": 0.4681,
"percent_delta": 0.1325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3344,
"after": 0.0,
"delta": -0.3344,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4723,
"after": 0.0,
"delta": -0.4723,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4723,
"after": 0.0,
"delta": -0.4723,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2594,
"after": 0.25,
"delta": -0.0094,
"percent_delta": -0.0362,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3235,
"after": 0.25,
"delta": -0.0735,
"percent_delta": -0.2272,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4523,
"after": 0.25,
"delta": -0.2023,
"percent_delta": -0.4473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4523,
"after": 0.25,
"delta": -0.2023,
"percent_delta": -0.4473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2594,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3235,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4523,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2594,
"delta": 0.0094,
"percent_delta": 0.0377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3235,
"delta": 0.0735,
"percent_delta": 0.2938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4523,
"delta": 0.2023,
"percent_delta": 0.8093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4523,
"delta": 0.2023,
"percent_delta": 0.8093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.212,
"after": 0.0,
"delta": -0.212,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.42,
"after": 4.0,
"delta": 0.58,
"percent_delta": 0.1696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2594,
"delta": 0.0014,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.348,
"after": 0.0,
"delta": -0.348,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3235,
"delta": -0.0105,
"percent_delta": -0.0314,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.47,
"after": 0.0,
"delta": -0.47,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.0,
"delta": -0.58,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4523,
"delta": 0.0003,
"percent_delta": 0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.076,
"after": 2.0,
"delta": 0.924,
"percent_delta": 0.8587,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 1,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.076,
"after": 2.0,
"delta": 0.924,
"percent_delta": 0.8587,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.420 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.348 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.470 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.452 | - |
| predicted_SO | 1.076 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.258 | 0.046 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.532 | 0.112 |
| predicted_AVG | 0.271 | 0.013 |
| predicted_BB | 0.340 | -0.008 |
| predicted_H | 0.958 | 0.078 |
| predicted_HBP | 0.012 | - |
| predicted_HR | 0.147 | 0.007 |
| predicted_OBP | 0.338 | 0.004 |
| predicted_R | 0.511 | 0.041 |
| predicted_RBI | 0.637 | 0.057 |
| predicted_SLG | 0.474 | 0.022 |
| predicted_SO | 1.012 | -0.064 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.258 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.532 | 0.000 |
| predicted_AVG | 0.259 | -0.012 |
| predicted_BB | 0.334 | -0.006 |
| predicted_H | 0.916 | -0.042 |
| predicted_HBP | 0.012 | 0.000 |
| predicted_HR | 0.141 | -0.007 |
| predicted_OBP | 0.324 | -0.015 |
| predicted_R | 0.472 | -0.038 |
| predicted_RBI | 0.590 | -0.048 |
| predicted_SLG | 0.452 | -0.022 |
| predicted_SO | 1.029 | 0.017 |
AB rounded to 4 (raw=3.53), rates preserved: AVG=0.259 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.258 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.468 |
| predicted_AVG | 0.250 | -0.009 |
| predicted_BB | 0.000 | -0.334 |
| predicted_H | 1.000 | 0.084 |
| predicted_HR | 0.000 | -0.141 |
| predicted_OBP | 0.250 | -0.074 |
| predicted_R | 0.000 | -0.472 |
| predicted_RBI | 1.000 | 0.410 |
| predicted_SLG | 0.250 | -0.202 |
| predicted_SO | 1.000 | -0.029 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 9.000 | 3.000 | 0.000 | 1.000 | 6.000 | 4.000 | 2.000 | 3.000 | 0.4286 | 0.4783 | 0.7143 | 0.4286 | 0.0476 | 0.2857 | 0.0952 | 0.1429 |
| last_10 | 0.20 | 10 | - | 39.000 | 13.000 | 5.000 | 0.000 | 2.000 | 9.000 | 7.000 | 2.000 | 7.000 | 0.3333 | 0.3488 | 0.6154 | 0.3333 | 0.0513 | 0.2308 | 0.0513 | 0.1795 |
| season | 0.60 | 66 | - | 225.000 | 53.000 | 14.000 | 0.000 | 9.000 | 37.000 | 31.000 | 23.000 | 71.000 | 0.2356 | 0.3031 | 0.4178 | 0.2356 | 0.0400 | 0.1644 | 0.1022 | 0.3156 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3210 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.6870 |
| predicted_AVG | 0.2892 |
| predicted_BB | 0.3290 |
| predicted_H | 1.0660 |
| predicted_HBP | 0.0120 |
| predicted_HR | 0.1580 |
| predicted_OBP | 0.3437 |
| predicted_R | 0.5670 |
| predicted_RBI | 0.7170 |
| predicted_SLG | 0.5053 |
| predicted_SO | 0.9230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2120 | 0.3210 | 0.2577 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.4200 | 3.6870 | 3.5319 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2892 | 0.2711 | model_form_blend |
| predicted_BB | 0.3480 | 0.3290 | 0.3400 | model_form_blend |
| predicted_H | 0.8800 | 1.0660 | 0.9580 | model_form_blend |
| predicted_HBP | - | 0.0120 | 0.0120 | form_only |
| predicted_HR | 0.1400 | 0.1580 | 0.1475 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3437 | 0.3381 | model_form_blend |
| predicted_R | 0.4700 | 0.5670 | 0.5107 | model_form_blend |
| predicted_RBI | 0.5800 | 0.7170 | 0.6374 | model_form_blend |
| predicted_SLG | 0.4520 | 0.5053 | 0.4743 | model_form_blend |
| predicted_SO | 1.0760 | 0.9230 | 1.0119 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 203 |
| Season rows before report date | 203 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.236 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 1 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 4 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 8 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 695600 |
| playerID | 695600 |
| playerName | Carter Jensen |
| pos | C |
| started | True |
| startingPosition | C |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.312 |
| sl_xwoba | 0.282 |
| sl_xba | 0.211 |
| sl_xslg | 0.353 |
| sl_sweet_spot_percent | 30.2 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 43.4 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 19.9 |
| sl_whiff_percent | 30.8 |
| sl_swing_percent | 44.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.270 | 1.000 | 0.000 | Hitting_2B | 0.256 | 0.000 | 0.744 | 1.000 |
| predicted_3B | 0.027 | 0.000 | 0.000 | Hitting_3B | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_AB | 2.838 | 3.000 | 3.000 | Hitting_AB | 2.895 | 3.000 | 0.105 | 0.000 |
| predicted_AVG | 0.265 | 0.333 | 0.333 | Hitting_AVG | 0.221 | 0.000 | 0.112 | 0.333 |
| predicted_BB | 0.405 | 1.000 | 0.000 | Hitting_BB | 0.419 | 1.000 | 0.581 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.710 | 1.000 | 1.000 | Hitting_H | 0.640 | 0.000 | 0.360 | 1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_OBP | 0.336 | 0.500 | 0.333 | Hitting_OBP | 0.332 | 0.250 | 0.168 | 0.250 |
| predicted_R | 0.378 | 0.000 | 0.000 | Hitting_R | 0.477 | 0.000 | -0.477 | 0.000 |
| predicted_RBI | 0.380 | 0.000 | 0.000 | Hitting_RBI | 0.605 | 0.000 | -0.605 | 0.000 |
| predicted_SLG | 0.408 | 0.667 | 0.333 | Hitting_SLG | 0.329 | 0.000 | 0.337 | 0.667 |
| predicted_SO | 0.432 | 0.000 | 0.000 | Hitting_SO | 0.360 | 0.000 | -0.360 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_2B: 0.2700 -> 1.0000 (boost 0.7300, better) |
| Biggest Deboost | predicted_SO: 0.4320 -> 0.0000 (deboost -0.4320, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 2 | 0 | predicted_AB: 2.8380 -> 2.9304 (boost 0.0924, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2617 -> 0.2417 (deboost -0.0200, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 3 | 4 | predicted_H: 0.7084 -> 1.0000 (boost 0.2916, better) | predicted_SO: 0.4696 -> 0.0000 (deboost -0.4696, better) | AB rounded to 3 (raw=2.93), rates preserved: AVG=0.242 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3238 -> 0.0000 (deboost -0.3238, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2417 -> 0.3330 (boost 0.0913, better) | predicted_SLG: 0.4169 -> 0.3330 (deboost -0.0839, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3330 -> 0.4169 (boost 0.0839, better) | predicted_AVG: 0.3330 -> 0.2417 (deboost -0.0913, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "679845",
"player_name": "Nick Loftin",
"position": "3B",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.27,
"predicted_3B": 0.027,
"predicted_AB": 2.838,
"predicted_AVG": 0.265,
"predicted_BB": 0.405,
"predicted_H": 0.71,
"predicted_HR": 0.07,
"predicted_OBP": 0.336,
"predicted_R": 0.378,
"predicted_RBI": 0.38,
"predicted_SLG": 0.408,
"predicted_SO": 0.432
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2775,
"predicted_3B": 0.029,
"predicted_AB": 2.9304,
"predicted_AVG": 0.2617,
"predicted_BB": 0.4066,
"predicted_H": 0.7407,
"predicted_HBP": 0.034,
"predicted_HR": 0.0621,
"predicted_OBP": 0.3401,
"predicted_R": 0.3501,
"predicted_RBI": 0.3867,
"predicted_SLG": 0.4132,
"predicted_SO": 0.4619
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.27,
"after": 0.2775,
"delta": 0.0075,
"percent_delta": 0.0278,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.029,
"delta": 0.002,
"percent_delta": 0.0741,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.838,
"after": 2.9304,
"delta": 0.0924,
"percent_delta": 0.0326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2617,
"delta": -0.0033,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 0.4066,
"delta": 0.0016,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 0.7407,
"delta": 0.0307,
"percent_delta": 0.0432,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0621,
"delta": -0.0079,
"percent_delta": -0.1129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.336,
"after": 0.3401,
"delta": 0.0041,
"percent_delta": 0.0122,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.378,
"after": 0.3501,
"delta": -0.0279,
"percent_delta": -0.0738,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.3867,
"delta": 0.0067,
"percent_delta": 0.0176,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4132,
"delta": 0.0052,
"percent_delta": 0.0127,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.432,
"after": 0.4619,
"delta": 0.0299,
"percent_delta": 0.0692,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.838,
"after": 2.9304,
"delta": 0.0924,
"percent_delta": 0.0326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 37
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2775,
"predicted_3B": 0.029,
"predicted_AB": 2.9304,
"predicted_AVG": 0.2417,
"predicted_BB": 0.3999,
"predicted_H": 0.7084,
"predicted_HBP": 0.034,
"predicted_HR": 0.0592,
"predicted_OBP": 0.3328,
"predicted_R": 0.3238,
"predicted_RBI": 0.3577,
"predicted_SLG": 0.4169,
"predicted_SO": 0.4696
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2775,
"after": 0.2775,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.029,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9304,
"after": 2.9304,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2617,
"after": 0.2417,
"delta": -0.02,
"percent_delta": -0.0764,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4066,
"after": 0.3999,
"delta": -0.0067,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7407,
"after": 0.7084,
"delta": -0.0323,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.034,
"after": 0.034,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0621,
"after": 0.0592,
"delta": -0.0029,
"percent_delta": -0.0467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3401,
"after": 0.3328,
"delta": -0.0073,
"percent_delta": -0.0215,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3501,
"after": 0.3238,
"delta": -0.0263,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3867,
"after": 0.3577,
"delta": -0.029,
"percent_delta": -0.075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4132,
"after": 0.4169,
"delta": 0.0037,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.4619,
"after": 0.4696,
"delta": 0.0077,
"percent_delta": 0.0167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2617,
"after": 0.2417,
"delta": -0.02,
"percent_delta": -0.0764,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.93), rates preserved: AVG=0.242 HR/AB=0.020",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2775,
"after": 0.0,
"delta": -0.2775,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9304,
"after": 3.0,
"delta": 0.0696,
"percent_delta": 0.0238,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3999,
"after": 0.0,
"delta": -0.3999,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7084,
"after": 1.0,
"delta": 0.2916,
"percent_delta": 0.4116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.034,
"after": 0.0,
"delta": -0.034,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0592,
"after": 0.0,
"delta": -0.0592,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3577,
"after": 0.0,
"delta": -0.3577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4696,
"after": 0.0,
"delta": -0.4696,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7084,
"after": 1.0,
"delta": 0.2916,
"percent_delta": 0.4116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4696,
"after": 0.0,
"delta": -0.4696,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3238,
"after": 0.0,
"delta": -0.3238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3238,
"after": 0.0,
"delta": -0.3238,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2417,
"after": 0.333,
"delta": 0.0913,
"percent_delta": 0.3777,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3328,
"after": 0.333,
"delta": 0.0002,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4169,
"after": 0.333,
"delta": -0.0839,
"percent_delta": -0.2012,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2417,
"after": 0.333,
"delta": 0.0913,
"percent_delta": 0.3777,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4169,
"after": 0.333,
"delta": -0.0839,
"percent_delta": -0.2012,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2417,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3328,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4169,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2417,
"delta": -0.0913,
"percent_delta": -0.274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3328,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4169,
"delta": 0.0839,
"percent_delta": 0.2518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4169,
"delta": 0.0839,
"percent_delta": 0.2518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2417,
"delta": -0.0913,
"percent_delta": -0.274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.838,
"after": 3.0,
"delta": 0.162,
"percent_delta": 0.0571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2417,
"delta": -0.0233,
"percent_delta": -0.0879,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 1.0,
"delta": 0.595,
"percent_delta": 1.4691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 1.0,
"delta": 0.29,
"percent_delta": 0.4085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.336,
"after": 0.3328,
"delta": -0.0032,
"percent_delta": -0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.378,
"after": 0.0,
"delta": -0.378,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4169,
"delta": 0.0089,
"percent_delta": 0.0218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.432,
"after": 0.0,
"delta": -0.432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.432,
"after": 0.0,
"delta": -0.432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.270 | - |
| predicted_3B | 0.027 | - |
| predicted_AB | 2.838 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.405 | - |
| predicted_H | 0.710 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.336 | - |
| predicted_R | 0.378 | - |
| predicted_RBI | 0.380 | - |
| predicted_SLG | 0.408 | - |
| predicted_SO | 0.432 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.278 | 0.008 |
| predicted_3B | 0.029 | 0.002 |
| predicted_AB | 2.930 | 0.092 |
| predicted_AVG | 0.262 | -0.003 |
| predicted_BB | 0.407 | 0.002 |
| predicted_H | 0.741 | 0.031 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.062 | -0.008 |
| predicted_OBP | 0.340 | 0.004 |
| predicted_R | 0.350 | -0.028 |
| predicted_RBI | 0.387 | 0.007 |
| predicted_SLG | 0.413 | 0.005 |
| predicted_SO | 0.462 | 0.030 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.278 | 0.000 |
| predicted_3B | 0.029 | 0.000 |
| predicted_AB | 2.930 | 0.000 |
| predicted_AVG | 0.242 | -0.020 |
| predicted_BB | 0.400 | -0.007 |
| predicted_H | 0.708 | -0.032 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.059 | -0.003 |
| predicted_OBP | 0.333 | -0.007 |
| predicted_R | 0.324 | -0.026 |
| predicted_RBI | 0.358 | -0.029 |
| predicted_SLG | 0.417 | 0.004 |
| predicted_SO | 0.470 | 0.008 |
AB rounded to 3 (raw=2.93), rates preserved: AVG=0.242 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.278 |
| predicted_3B | 0.000 | -0.029 |
| predicted_AB | 3.000 | 0.070 |
| predicted_AVG | 0.333 | 0.091 |
| predicted_BB | 0.000 | -0.400 |
| predicted_H | 1.000 | 0.292 |
| predicted_HR | 0.000 | -0.059 |
| predicted_OBP | 0.333 | 0.000 |
| predicted_R | 0.000 | -0.324 |
| predicted_RBI | 0.000 | -0.358 |
| predicted_SLG | 0.333 | -0.084 |
| predicted_SO | 0.000 | -0.470 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 4.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 0.2857 | 0.3750 | 0.4286 | 0.2857 | 0.0000 | 0.0000 | 0.1429 | 0.1429 |
| last_10 | 0.20 | 10 | - | 31.000 | 9.000 | 3.000 | 1.000 | 1.000 | 4.000 | 2.000 | 5.000 | 5.000 | 0.2903 | 0.3889 | 0.5484 | 0.2903 | 0.0323 | 0.1290 | 0.1613 | 0.1613 |
| season | 0.60 | 37 | - | 105.000 | 25.000 | 10.000 | 1.000 | 1.000 | 18.000 | 14.000 | 15.000 | 16.000 | 0.2381 | 0.3360 | 0.3810 | 0.2381 | 0.0095 | 0.1714 | 0.1429 | 0.1524 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2890 |
| predicted_3B | 0.0320 |
| predicted_AB | 3.0730 |
| predicted_AVG | 0.2566 |
| predicted_BB | 0.4090 |
| predicted_H | 0.7880 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.0500 |
| predicted_OBP | 0.3465 |
| predicted_R | 0.3070 |
| predicted_RBI | 0.3970 |
| predicted_SLG | 0.4212 |
| predicted_SO | 0.5080 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2700 | 0.2890 | 0.2775 | model_form_blend |
| predicted_3B | 0.0270 | 0.0320 | 0.0290 | model_form_blend |
| predicted_AB | 2.8380 | 3.0730 | 2.9304 | model_form_blend |
| predicted_AVG | 0.2650 | 0.2566 | 0.2617 | model_form_blend |
| predicted_BB | 0.4050 | 0.4090 | 0.4066 | model_form_blend |
| predicted_H | 0.7100 | 0.7880 | 0.7407 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.0700 | 0.0500 | 0.0621 | model_form_blend |
| predicted_OBP | 0.3360 | 0.3465 | 0.3401 | model_form_blend |
| predicted_R | 0.3780 | 0.3070 | 0.3501 | model_form_blend |
| predicted_RBI | 0.3800 | 0.3970 | 0.3867 | model_form_blend |
| predicted_SLG | 0.4080 | 0.4212 | 0.4132 | model_form_blend |
| predicted_SO | 0.4320 | 0.5080 | 0.4619 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 86 |
| Season rows before report date | 86 |
| Report year | 2026 |
| Profile rows used | 37 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.238 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 679845 |
| playerID | 679845 |
| playerName | Nick Loftin |
| pos | 2B |
| started | True |
| startingPosition | 3B |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 12.5 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.325 |
| sl_xwoba | 0.321 |
| sl_xba | 0.242 |
| sl_xslg | 0.35 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 33.3 |
| sl_exit_velocity_avg | 86.9 |
| sl_launch_angle_avg | 12.7 |
| sl_whiff_percent | 15.0 |
| sl_swing_percent | 39.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.127 | 0.000 | 0.000 | Hitting_2B | 0.131 | 0.000 | -0.131 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.159 | 3.000 | 3.000 | Hitting_AB | 3.237 | 3.000 | -0.237 | 0.000 |
| predicted_AVG | 0.239 | 0.333 | 0.333 | Hitting_AVG | 0.223 | 0.333 | 0.110 | 0.000 |
| predicted_BB | 0.508 | 1.000 | 0.000 | Hitting_BB | 0.561 | 0.000 | 0.439 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_H | 0.680 | 1.000 | 1.000 | Hitting_H | 0.722 | 1.000 | 0.278 | 0.000 |
| predicted_HR | 0.070 | 1.000 | 0.000 | Hitting_HR | 0.056 | 0.000 | 0.944 | 1.000 |
| predicted_OBP | 0.314 | 0.500 | 0.333 | Hitting_OBP | 0.350 | 0.333 | 0.150 | 0.167 |
| predicted_R | 0.397 | 1.000 | 0.000 | Hitting_R | 0.434 | 1.000 | 0.566 | 0.000 |
| predicted_RBI | 0.390 | 1.000 | 0.000 | Hitting_RBI | 0.379 | 1.000 | 0.621 | 0.000 |
| predicted_SLG | 0.319 | 1.333 | 0.333 | Hitting_SLG | 0.315 | 0.333 | 1.018 | 1.000 |
| predicted_SO | 0.952 | 0.000 | 1.000 | Hitting_SO | 1.030 | 0.000 | -1.030 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_HR: 0.0700 -> 1.0000 (boost 0.9300, better) |
| Biggest Deboost | predicted_SO: 0.9520 -> 0.0000 (deboost -0.9520, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 0 | 3 | 1 | 2 | - | predicted_SO: 0.9520 -> 0.8702 (deboost -0.0818, better) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2297 -> 0.2065 (deboost -0.0232, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_H: 0.6511 -> 1.0000 (boost 0.3489, better) | predicted_BB: 0.4520 -> 0.0000 (deboost -0.4520, worse) | AB rounded to 3 (raw=3.16), rates preserved: AVG=0.206 HR/AB=0.017 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3652 -> 0.0000 (deboost -0.3652, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2065 -> 0.3330 (boost 0.1265, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 4 | 1 | 5 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2065 (deboost -0.1265, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686555",
"player_name": "Isaac Collins",
"position": "LF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.127,
"predicted_3B": 0.0,
"predicted_AB": 3.159,
"predicted_AVG": 0.239,
"predicted_BB": 0.508,
"predicted_H": 0.68,
"predicted_HR": 0.07,
"predicted_OBP": 0.314,
"predicted_R": 0.397,
"predicted_RBI": 0.39,
"predicted_SLG": 0.319,
"predicted_SO": 0.952
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.117,
"predicted_3B": 0.0004,
"predicted_AB": 3.1536,
"predicted_AVG": 0.2297,
"predicted_BB": 0.4596,
"predicted_H": 0.6808,
"predicted_HBP": 0.064,
"predicted_HR": 0.0562,
"predicted_OBP": 0.3139,
"predicted_R": 0.3949,
"predicted_RBI": 0.3979,
"predicted_SLG": 0.3052,
"predicted_SO": 0.8702
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.127,
"after": 0.117,
"delta": -0.01,
"percent_delta": -0.0787,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.159,
"after": 3.1536,
"delta": -0.0054,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2297,
"delta": -0.0093,
"percent_delta": -0.0389,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.508,
"after": 0.4596,
"delta": -0.0484,
"percent_delta": -0.0953,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.68,
"after": 0.6808,
"delta": 0.0008,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0562,
"delta": -0.0138,
"percent_delta": -0.1971,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3139,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 0.3949,
"delta": -0.0021,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.3979,
"delta": 0.0079,
"percent_delta": 0.0203,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.319,
"after": 0.3052,
"delta": -0.0138,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.952,
"after": 0.8702,
"delta": -0.0818,
"percent_delta": -0.0859,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.952,
"after": 0.8702,
"delta": -0.0818,
"percent_delta": -0.0859,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 63
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.117,
"predicted_3B": 0.0004,
"predicted_AB": 3.1536,
"predicted_AVG": 0.2065,
"predicted_BB": 0.452,
"predicted_H": 0.6511,
"predicted_HBP": 0.064,
"predicted_HR": 0.0536,
"predicted_OBP": 0.3059,
"predicted_R": 0.3652,
"predicted_RBI": 0.368,
"predicted_SLG": 0.2948,
"predicted_SO": 0.8846
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.117,
"after": 0.117,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1536,
"after": 3.1536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2297,
"after": 0.2065,
"delta": -0.0232,
"percent_delta": -0.101,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4596,
"after": 0.452,
"delta": -0.0076,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6808,
"after": 0.6511,
"delta": -0.0297,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0562,
"after": 0.0536,
"delta": -0.0026,
"percent_delta": -0.0463,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3139,
"after": 0.3059,
"delta": -0.008,
"percent_delta": -0.0255,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3949,
"after": 0.3652,
"delta": -0.0297,
"percent_delta": -0.0752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3979,
"after": 0.368,
"delta": -0.0299,
"percent_delta": -0.0751,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3052,
"after": 0.2948,
"delta": -0.0104,
"percent_delta": -0.0341,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8702,
"after": 0.8846,
"delta": 0.0144,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2297,
"after": 0.2065,
"delta": -0.0232,
"percent_delta": -0.101,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.16), rates preserved: AVG=0.206 HR/AB=0.017",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.117,
"after": 0.0,
"delta": -0.117,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1536,
"after": 3.0,
"delta": -0.1536,
"percent_delta": -0.0487,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.452,
"after": 0.0,
"delta": -0.452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6511,
"after": 1.0,
"delta": 0.3489,
"percent_delta": 0.5359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0536,
"after": 0.0,
"delta": -0.0536,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.368,
"after": 0.0,
"delta": -0.368,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8846,
"after": 1.0,
"delta": 0.1154,
"percent_delta": 0.1305,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6511,
"after": 1.0,
"delta": 0.3489,
"percent_delta": 0.5359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.452,
"after": 0.0,
"delta": -0.452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3652,
"after": 0.0,
"delta": -0.3652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3652,
"after": 0.0,
"delta": -0.3652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2065,
"after": 0.333,
"delta": 0.1265,
"percent_delta": 0.6126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3059,
"after": 0.333,
"delta": 0.0271,
"percent_delta": 0.0886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2948,
"after": 0.333,
"delta": 0.0382,
"percent_delta": 0.1296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2065,
"after": 0.333,
"delta": 0.1265,
"percent_delta": 0.6126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 4,
"deboosted_metrics": 1,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2065,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3059,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2948,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2065,
"delta": -0.1265,
"percent_delta": -0.38,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3059,
"delta": -0.0271,
"percent_delta": -0.0813,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2948,
"delta": -0.0382,
"percent_delta": -0.1147,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2065,
"delta": -0.1265,
"percent_delta": -0.38,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.127,
"after": 0.0,
"delta": -0.127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.159,
"after": 3.0,
"delta": -0.159,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2065,
"delta": -0.0325,
"percent_delta": -0.136,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.508,
"after": 1.0,
"delta": 0.492,
"percent_delta": 0.9685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.68,
"after": 1.0,
"delta": 0.32,
"percent_delta": 0.4706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 1.0,
"delta": 0.93,
"percent_delta": 13.2857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3059,
"delta": -0.0081,
"percent_delta": -0.0258,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.397,
"after": 1.0,
"delta": 0.603,
"percent_delta": 1.5189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 1.0,
"delta": 0.61,
"percent_delta": 1.5641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.319,
"after": 0.2948,
"delta": -0.0242,
"percent_delta": -0.0759,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.952,
"after": 0.0,
"delta": -0.952,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.07,
"after": 1.0,
"delta": 0.93,
"percent_delta": 13.2857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.952,
"after": 0.0,
"delta": -0.952,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.127 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.159 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.508 | - |
| predicted_H | 0.680 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.397 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.319 | - |
| predicted_SO | 0.952 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | -0.010 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.154 | -0.005 |
| predicted_AVG | 0.230 | -0.009 |
| predicted_BB | 0.460 | -0.048 |
| predicted_H | 0.681 | 0.001 |
| predicted_HBP | 0.064 | - |
| predicted_HR | 0.056 | -0.014 |
| predicted_OBP | 0.314 | -0.000 |
| predicted_R | 0.395 | -0.002 |
| predicted_RBI | 0.398 | 0.008 |
| predicted_SLG | 0.305 | -0.014 |
| predicted_SO | 0.870 | -0.082 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.154 | 0.000 |
| predicted_AVG | 0.206 | -0.023 |
| predicted_BB | 0.452 | -0.008 |
| predicted_H | 0.651 | -0.030 |
| predicted_HBP | 0.064 | 0.000 |
| predicted_HR | 0.054 | -0.003 |
| predicted_OBP | 0.306 | -0.008 |
| predicted_R | 0.365 | -0.030 |
| predicted_RBI | 0.368 | -0.030 |
| predicted_SLG | 0.295 | -0.010 |
| predicted_SO | 0.885 | 0.014 |
AB rounded to 3 (raw=3.16), rates preserved: AVG=0.206 HR/AB=0.017
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.117 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 3.000 | -0.154 |
| predicted_AVG | 0.333 | 0.127 |
| predicted_BB | 0.000 | -0.452 |
| predicted_H | 1.000 | 0.349 |
| predicted_HR | 0.000 | -0.054 |
| predicted_OBP | 0.333 | 0.027 |
| predicted_R | 0.000 | -0.365 |
| predicted_RBI | 0.000 | -0.368 |
| predicted_SLG | 0.333 | 0.038 |
| predicted_SO | 1.000 | 0.115 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 3.000 | 0.000 | 0.000 | 0.000 | 3.000 | 2.000 | 1.000 | 2.000 | 0.2143 | 0.2667 | 0.2143 | 0.2143 | 0.0000 | 0.2143 | 0.0714 | 0.1429 |
| last_10 | 0.20 | 10 | - | 30.000 | 6.000 | 1.000 | 0.000 | 0.000 | 4.000 | 3.000 | 3.000 | 5.000 | 0.2000 | 0.2941 | 0.2333 | 0.2000 | 0.0000 | 0.1333 | 0.1000 | 0.1667 |
| season | 0.60 | 63 | - | 199.000 | 43.000 | 8.000 | 0.000 | 3.000 | 20.000 | 25.000 | 32.000 | 60.000 | 0.2161 | 0.3361 | 0.3015 | 0.2161 | 0.0151 | 0.1005 | 0.1608 | 0.3015 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1030 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.1460 |
| predicted_AVG | 0.2168 |
| predicted_BB | 0.3920 |
| predicted_H | 0.6820 |
| predicted_HBP | 0.0640 |
| predicted_HR | 0.0370 |
| predicted_OBP | 0.3138 |
| predicted_R | 0.3920 |
| predicted_RBI | 0.4090 |
| predicted_SLG | 0.2860 |
| predicted_SO | 0.7560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1270 | 0.1030 | 0.1170 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.1590 | 3.1460 | 3.1536 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2168 | 0.2297 | model_form_blend |
| predicted_BB | 0.5080 | 0.3920 | 0.4596 | model_form_blend |
| predicted_H | 0.6800 | 0.6820 | 0.6808 | model_form_blend |
| predicted_HBP | - | 0.0640 | 0.0640 | form_only |
| predicted_HR | 0.0700 | 0.0370 | 0.0562 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3138 | 0.3139 | model_form_blend |
| predicted_R | 0.3970 | 0.3920 | 0.3949 | model_form_blend |
| predicted_RBI | 0.3900 | 0.4090 | 0.3979 | model_form_blend |
| predicted_SLG | 0.3190 | 0.2860 | 0.3052 | model_form_blend |
| predicted_SO | 0.9520 | 0.7560 | 0.8702 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 198 |
| Season rows before report date | 198 |
| Report year | 2026 |
| Profile rows used | 63 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.216 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 1 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 686555 |
| playerID | 686555 |
| playerName | Isaac Collins |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.9 |
| sl_bb_percent | 13.1 |
| sl_woba | 0.297 |
| sl_xwoba | 0.308 |
| sl_xba | 0.226 |
| sl_xslg | 0.315 |
| sl_sweet_spot_percent | 32.0 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 39.5 |
| sl_exit_velocity_avg | 88.5 |
| sl_launch_angle_avg | 18.7 |
| sl_whiff_percent | 24.9 |
| sl_swing_percent | 39.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.222 | 0.000 | 0.000 | Hitting_2B | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.981 | 3.000 | 3.000 | Hitting_AB | 3.113 | 4.000 | -0.113 | -1.000 |
| predicted_AVG | 0.249 | 0.000 | 0.333 | Hitting_AVG | 0.244 | 0.250 | -0.244 | -0.250 |
| predicted_BB | 0.093 | 1.000 | 0.000 | Hitting_BB | 0.090 | 0.000 | 0.910 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.260 | 0.000 | 1.000 | Hitting_H | 0.759 | 1.000 | -0.759 | -1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.105 | 1.000 | -0.105 | -1.000 |
| predicted_OBP | 0.268 | 0.250 | 0.333 | Hitting_OBP | 0.259 | 0.250 | -0.009 | 0.000 |
| predicted_R | 0.370 | 0.000 | 0.000 | Hitting_R | 0.346 | 1.000 | -0.346 | -1.000 |
| predicted_RBI | 0.180 | 0.000 | 0.000 | Hitting_RBI | 0.429 | 1.000 | -0.429 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_SLG | 0.435 | 0.000 | 0.333 | Hitting_SLG | 0.425 | 1.000 | -0.425 | -1.000 |
| predicted_SO | 0.556 | 1.000 | 1.000 | Hitting_SO | 0.586 | 0.000 | 0.414 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.0930 -> 1.0000 (boost 0.9070, better) |
| Biggest Deboost | predicted_R: 0.3700 -> 0.0000 (deboost -0.3700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 6 | 0 | predicted_H: 0.2600 -> 0.4991 (boost 0.2391, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4522 -> 0.3134 (deboost -0.1388, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 0 | 7 | predicted_SO: 0.5540 -> 1.0000 (boost 0.4460, worse) | predicted_H: 0.4773 -> 0.0000 (deboost -0.4773, worse) | AB rounded to 3 (raw=3.07), rates preserved: AVG=0.155 HR/AB=0.027 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3790 -> 0.0000 (deboost -0.3790, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1554 -> 0.3330 (boost 0.1776, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1554 (deboost -0.1776, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686681",
"player_name": "Michael Massey",
"position": "2B",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.222,
"predicted_3B": 0.0,
"predicted_AB": 2.981,
"predicted_AVG": 0.249,
"predicted_BB": 0.093,
"predicted_H": 0.26,
"predicted_HR": 0.05,
"predicted_OBP": 0.268,
"predicted_R": 0.37,
"predicted_RBI": 0.18,
"predicted_SLG": 0.435,
"predicted_SO": 0.556
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2386,
"predicted_3B": 0.0008,
"predicted_AB": 3.0723,
"predicted_AVG": 0.2555,
"predicted_BB": 0.091,
"predicted_H": 0.4991,
"predicted_HBP": 0.004,
"predicted_HR": 0.0857,
"predicted_OBP": 0.2742,
"predicted_R": 0.4098,
"predicted_RBI": 0.3135,
"predicted_SLG": 0.4522,
"predicted_SO": 0.545
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.222,
"after": 0.2386,
"delta": 0.0166,
"percent_delta": 0.0748,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.981,
"after": 3.0723,
"delta": 0.0913,
"percent_delta": 0.0306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2555,
"delta": 0.0065,
"percent_delta": 0.0261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.093,
"after": 0.091,
"delta": -0.002,
"percent_delta": -0.0215,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.26,
"after": 0.4991,
"delta": 0.2391,
"percent_delta": 0.9196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0857,
"delta": 0.0357,
"percent_delta": 0.714,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.268,
"after": 0.2742,
"delta": 0.0062,
"percent_delta": 0.0231,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.37,
"after": 0.4098,
"delta": 0.0398,
"percent_delta": 0.1076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.3135,
"delta": 0.1335,
"percent_delta": 0.7417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.435,
"after": 0.4522,
"delta": 0.0172,
"percent_delta": 0.0395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.556,
"after": 0.545,
"delta": -0.011,
"percent_delta": -0.0198,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 6,
"deboosted_metrics": 0,
"better_metrics": 6,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.26,
"after": 0.4991,
"delta": 0.2391,
"percent_delta": 0.9196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 54
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2386,
"predicted_3B": 0.0008,
"predicted_AB": 3.0723,
"predicted_AVG": 0.1554,
"predicted_BB": 0.0895,
"predicted_H": 0.4773,
"predicted_HBP": 0.004,
"predicted_HR": 0.0817,
"predicted_OBP": 0.1793,
"predicted_R": 0.379,
"predicted_RBI": 0.29,
"predicted_SLG": 0.3134,
"predicted_SO": 0.554
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2386,
"after": 0.2386,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0723,
"after": 3.0723,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2555,
"after": 0.1554,
"delta": -0.1001,
"percent_delta": -0.3918,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.091,
"after": 0.0895,
"delta": -0.0015,
"percent_delta": -0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4991,
"after": 0.4773,
"delta": -0.0218,
"percent_delta": -0.0437,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0857,
"after": 0.0817,
"delta": -0.004,
"percent_delta": -0.0467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2742,
"after": 0.1793,
"delta": -0.0949,
"percent_delta": -0.3461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4098,
"after": 0.379,
"delta": -0.0308,
"percent_delta": -0.0752,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3135,
"after": 0.29,
"delta": -0.0235,
"percent_delta": -0.075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4522,
"after": 0.3134,
"delta": -0.1388,
"percent_delta": -0.3069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.545,
"after": 0.554,
"delta": 0.009,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4522,
"after": 0.3134,
"delta": -0.1388,
"percent_delta": -0.3069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.07), rates preserved: AVG=0.155 HR/AB=0.027",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2386,
"after": 0.0,
"delta": -0.2386,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0723,
"after": 3.0,
"delta": -0.0723,
"percent_delta": -0.0235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0895,
"after": 0.0,
"delta": -0.0895,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4773,
"after": 0.0,
"delta": -0.4773,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0817,
"after": 0.0,
"delta": -0.0817,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.554,
"after": 1.0,
"delta": 0.446,
"percent_delta": 0.8051,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 0,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.554,
"after": 1.0,
"delta": 0.446,
"percent_delta": 0.8051,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4773,
"after": 0.0,
"delta": -0.4773,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9333,
"bvp": 0.0667
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.379,
"after": 0.0,
"delta": -0.379,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.379,
"after": 0.0,
"delta": -0.379,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1554,
"after": 0.333,
"delta": 0.1776,
"percent_delta": 1.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.1793,
"after": 0.333,
"delta": 0.1537,
"percent_delta": 0.8572,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3134,
"after": 0.333,
"delta": 0.0196,
"percent_delta": 0.0625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1554,
"after": 0.333,
"delta": 0.1776,
"percent_delta": 1.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1554,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1793,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3134,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1554,
"delta": -0.1776,
"percent_delta": -0.5334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.1793,
"delta": -0.1537,
"percent_delta": -0.4616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3134,
"delta": -0.0196,
"percent_delta": -0.059,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1554,
"delta": -0.1776,
"percent_delta": -0.5334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.981,
"after": 3.0,
"delta": 0.019,
"percent_delta": 0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.1554,
"delta": -0.0936,
"percent_delta": -0.3759,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.093,
"after": 1.0,
"delta": 0.907,
"percent_delta": 9.7527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.268,
"after": 0.1793,
"delta": -0.0887,
"percent_delta": -0.331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.435,
"after": 0.3134,
"delta": -0.1216,
"percent_delta": -0.2795,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.556,
"after": 1.0,
"delta": 0.444,
"percent_delta": 0.7986,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.093,
"after": 1.0,
"delta": 0.907,
"percent_delta": 9.7527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.37,
"after": 0.0,
"delta": -0.37,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.222 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.981 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.093 | - |
| predicted_H | 0.260 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.268 | - |
| predicted_R | 0.370 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.435 | - |
| predicted_SO | 0.556 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.239 | 0.017 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.072 | 0.091 |
| predicted_AVG | 0.256 | 0.007 |
| predicted_BB | 0.091 | -0.002 |
| predicted_H | 0.499 | 0.239 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.086 | 0.036 |
| predicted_OBP | 0.274 | 0.006 |
| predicted_R | 0.410 | 0.040 |
| predicted_RBI | 0.314 | 0.134 |
| predicted_SLG | 0.452 | 0.017 |
| predicted_SO | 0.545 | -0.011 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.239 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.072 | 0.000 |
| predicted_AVG | 0.155 | -0.100 |
| predicted_BB | 0.089 | -0.002 |
| predicted_H | 0.477 | -0.022 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.082 | -0.004 |
| predicted_OBP | 0.179 | -0.095 |
| predicted_R | 0.379 | -0.031 |
| predicted_RBI | 0.290 | -0.024 |
| predicted_SLG | 0.313 | -0.139 |
| predicted_SO | 0.554 | 0.009 |
AB rounded to 3 (raw=3.07), rates preserved: AVG=0.155 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.333)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.239 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.072 |
| predicted_AVG | 0.333 | 0.178 |
| predicted_BB | 0.000 | -0.089 |
| predicted_H | 1.000 | 0.523 |
| predicted_HR | 0.000 | -0.082 |
| predicted_OBP | 0.333 | 0.154 |
| predicted_R | 0.000 | -0.379 |
| predicted_RBI | 0.000 | -0.290 |
| predicted_SLG | 0.333 | 0.020 |
| predicted_SO | 1.000 | 0.446 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 5.000 | 2.000 | 0.000 | 1.000 | 4.000 | 4.000 | 0.000 | 2.000 | 0.3125 | 0.3125 | 0.6250 | 0.3125 | 0.0625 | 0.2500 | 0.0000 | 0.1250 |
| last_10 | 0.20 | 10 | - | 33.000 | 8.000 | 3.000 | 0.000 | 1.000 | 4.000 | 4.000 | 0.000 | 3.000 | 0.2424 | 0.2424 | 0.4242 | 0.2424 | 0.0303 | 0.1212 | 0.0000 | 0.0909 |
| season | 0.60 | 54 | - | 161.000 | 42.000 | 12.000 | 0.000 | 7.000 | 24.000 | 20.000 | 5.000 | 30.000 | 0.2609 | 0.2781 | 0.4658 | 0.2609 | 0.0435 | 0.1491 | 0.0311 | 0.1863 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2630 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.2060 |
| predicted_AVG | 0.2650 |
| predicted_BB | 0.0880 |
| predicted_H | 0.8490 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1380 |
| predicted_OBP | 0.2832 |
| predicted_R | 0.4680 |
| predicted_RBI | 0.5090 |
| predicted_SLG | 0.4773 |
| predicted_SO | 0.5290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2220 | 0.2630 | 0.2386 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9810 | 3.2060 | 3.0723 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2650 | 0.2555 | model_form_blend |
| predicted_BB | 0.0930 | 0.0880 | 0.0910 | model_form_blend |
| predicted_H | 0.2600 | 0.8490 | 0.4991 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0500 | 0.1380 | 0.0857 | model_form_blend |
| predicted_OBP | 0.2680 | 0.2832 | 0.2742 | model_form_blend |
| predicted_R | 0.3700 | 0.4680 | 0.4098 | model_form_blend |
| predicted_RBI | 0.1800 | 0.5090 | 0.3135 | model_form_blend |
| predicted_SLG | 0.4350 | 0.4773 | 0.4522 | model_form_blend |
| predicted_SO | 0.5560 | 0.5290 | 0.5450 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 133 |
| Season rows before report date | 133 |
| Report year | 2026 |
| Profile rows used | 54 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.261 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 1 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 686681 |
| playerID | 686681 |
| playerName | Michael Massey |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.5 |
| sl_bb_percent | 2.9 |
| sl_woba | 0.317 |
| sl_xwoba | 0.287 |
| sl_xba | 0.227 |
| sl_xslg | 0.417 |
| sl_sweet_spot_percent | 30.1 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 42.6 |
| sl_exit_velocity_avg | 91.1 |
| sl_launch_angle_avg | 19.5 |
| sl_whiff_percent | 21.1 |
| sl_swing_percent | 52.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.308 | 0.000 | 0.692 | 2.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 2.462 | 4.000 | 2.538 | 1.000 |
| predicted_H | 7.000 | 7.000 | 7.000 | Pitching_H | 5.231 | 7.000 | 1.769 | 0.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.277 | 4.100 | -0.077 | 1.100 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 4.923 | 1.000 | -1.923 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "702070",
"player_name": "Noah Cameron",
"position": "Starter",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 5.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 5.6667,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 5.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 5.2,
"predicted_R": 5.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 5.000 | - |
| predicted_H | 7.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 3.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 28.100 | 7.000 | 19.000 | 3.000 | 28.000 | 3.000 | 2.2235 | 0.7765 | 0.2471 | 0.6706 | 0.1059 | 0.9882 | 0.1059 |
| last_10 | 0.35 | 10 | 54.000 | 25.000 | 52.000 | 13.000 | 50.000 | 6.000 | 4.1667 | 1.2037 | 0.4630 | 0.9630 | 0.2407 | 0.9259 | 0.1111 |
| season | 0.20 | 13 | 70.000 | 32.000 | 68.000 | 17.000 | 64.000 | 8.000 | 4.1143 | 1.2143 | 0.4571 | 0.9714 | 0.2429 | 0.9143 | 0.1143 |
| Metric | Value |
|---|---|
| predicted_BB | 1.2800 |
| predicted_ER | 2.2280 |
| predicted_ERA | 3.6225 |
| predicted_H | 4.8270 |
| predicted_HR | 0.6620 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.2450 |
| predicted_WHIP | 1.1035 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.2800 | 1.6165 | model_form_blend |
| predicted_ER | 5.0000 | 2.2280 | 3.5236 | model_form_blend |
| predicted_ERA | - | 3.6225 | 3.6225 | form_only |
| predicted_H | 7.0000 | 4.8270 | 5.8426 | model_form_blend |
| predicted_HR | 0.0000 | 0.6620 | 0.3526 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 3.0000 | 5.2450 | 4.1958 | model_form_blend |
| predicted_WHIP | - | 1.1035 | 1.1035 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 13 |
| Season rows before report date | 13 |
| Report year | 2026 |
| Profile rows used | 13 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 7 |
| R | 5 |
| ER | 5 |
| BB | 2 |
| SO | 3 |
| HR | 0 |
| BF | 26 |
| Pitches | 100 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 20 |
| Pitching_ER | 4 |
| Pitching_ERA | 4.11 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 5 |
| Pitching_H | 7 |
| Pitching_HBP | 0 |
| Pitching_HR | 2 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.1 |
| Pitching_Pitches | 86 |
| Pitching_R | 4 |
| Pitching_SO | 1 |
| Pitching_Strikes | 53 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260613_HOU@KC |
| game_type | full |
| mlbID | 702070 |
| playerID | 702070 |
| playerName | Noah Cameron |
| pos | P |
| started | True |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-13 |
| sl_k_percent | 21.7 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.302 |
| sl_xwoba | 0.32 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 9.4 |
| sl_hard_hit_percent | 39.7 |
| sl_whiff_percent | 23.9 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 77.521006132 |
| sl_avg_hyper_speed | 94.371216445 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.613 | 0.000 | -0.613 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.484 | 0.000 | -0.484 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.903 | 0.000 | 0.097 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.003 | 1.000 | -0.003 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.129 | 0.000 | -0.129 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656638",
"player_name": "Alex Lange",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 2.000 | 4.000 | 4.000 | 7.000 | 0.000 | 3.1765 | 1.4118 | 0.3529 | 0.7059 | 0.7059 | 1.2353 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 2.000 | 8.000 | 6.000 | 12.000 | 0.000 | 1.8621 | 1.4483 | 0.2069 | 0.8276 | 0.6207 | 1.2414 | 0.0000 |
| season | 0.20 | 31 | 33.200 | 15.000 | 28.000 | 19.000 | 35.000 | 2.000 | 4.0099 | 1.3960 | 0.4455 | 0.8317 | 0.5644 | 1.0396 | 0.0594 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5260 |
| predicted_ER | 0.3980 |
| predicted_ERA | 3.5785 |
| predicted_H | 0.8590 |
| predicted_HR | 0.0690 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0870 |
| predicted_WHIP | 1.3854 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5260 | 0.2468 | model_form_blend |
| predicted_ER | 0.0000 | 0.3980 | 0.1867 | model_form_blend |
| predicted_ERA | - | 3.5785 | 3.5785 | form_only |
| predicted_H | 1.0000 | 0.8590 | 0.9338 | model_form_blend |
| predicted_HR | 0.0000 | 0.0690 | 0.0324 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0870 | 1.0408 | model_form_blend |
| predicted_WHIP | - | 1.3854 | 1.3854 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 4 |
| Pitches | 4 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.01 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 19 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 656638 |
| playerID | 656638 |
| playerName | Alex Lange |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 13.0 |
| sl_woba | 0.326 |
| sl_xwoba | 0.335 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 13.6 |
| sl_hard_hit_percent | 43.2 |
| sl_whiff_percent | 29.4 |
| sl_swing_percent | 45.3 |
| sl_avg_best_speed | 80.793706136 |
| sl_avg_hyper_speed | 95.189411379 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.355 | 2.000 | 1.645 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.290 | 3.000 | -0.290 | -3.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.645 | 2.000 | 0.355 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.887 | 1.000 | 0.113 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.968 | 1.000 | -0.968 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663738",
"player_name": "Daniel Lynch IV",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 4.000 | 3.000 | 3.000 | 1.000 | 1.000 | 7.7143 | 1.2857 | 0.8571 | 0.6429 | 0.6429 | 0.2143 | 0.2143 |
| last_10 | 0.35 | 10 | 9.100 | 5.000 | 7.000 | 4.000 | 4.000 | 1.000 | 4.8214 | 1.1786 | 0.5357 | 0.7500 | 0.4286 | 0.4286 | 0.1071 |
| season | 0.20 | 31 | 31.000 | 9.000 | 20.000 | 11.000 | 30.000 | 2.000 | 2.6129 | 1.0000 | 0.2903 | 0.6452 | 0.3548 | 0.9677 | 0.0645 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4440 |
| predicted_ER | 0.5730 |
| predicted_ERA | 5.1556 |
| predicted_H | 0.8120 |
| predicted_HR | 0.1460 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.6630 |
| predicted_WHIP | 1.2566 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.4440 | 1.2833 | model_form_blend |
| predicted_ER | 0.0000 | 0.5730 | 0.2639 | model_form_blend |
| predicted_ERA | - | 5.1556 | 5.1556 | form_only |
| predicted_H | 1.0000 | 0.8120 | 0.9134 | model_form_blend |
| predicted_HR | 0.0000 | 0.1460 | 0.0673 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.6630 | 0.3054 | model_form_blend |
| predicted_WHIP | - | 1.2566 | 1.2566 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 31 |
| Season rows before report date | 31 |
| Report year | 2026 |
| Profile rows used | 31 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| SO | 0 |
| HR | 0 |
| BF | 6 |
| Pitches | 6 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 7 |
| Pitching_ER | 3 |
| Pitching_ERA | 2.61 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 29 |
| Pitching_R | 3 |
| Pitching_SO | 1 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260616_KC@WAS |
| game_type | full |
| mlbID | 663738 |
| playerID | 663738 |
| playerName | Daniel Lynch IV |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-16 |
| sl_k_percent | 23.6 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.257 |
| sl_xwoba | 0.276 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 34.5 |
| sl_whiff_percent | 31.9 |
| sl_swing_percent | 46.9 |
| sl_avg_best_speed | 75.36135 |
| sl_avg_hyper_speed | 93.621195119 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.655 | 0.000 | -0.655 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.586 | 0.000 | -0.586 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.103 | 0.000 | -1.103 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.886 | 1.000 | 0.114 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.793 | 1.000 | -0.793 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "668674",
"player_name": "Lucas Erceg",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 3.000 | 4.000 | 3.000 | 0.000 | 1.8000 | 1.4000 | 0.2000 | 0.6000 | 0.8000 | 0.6000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 7.000 | 14.000 | 7.000 | 8.000 | 1.000 | 6.3000 | 2.1000 | 0.7000 | 1.4000 | 0.7000 | 0.8000 | 0.1000 |
| season | 0.20 | 28 | 27.100 | 14.000 | 27.000 | 19.000 | 23.000 | 1.000 | 4.6098 | 1.6829 | 0.5122 | 0.9878 | 0.6951 | 0.8415 | 0.0366 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5610 |
| predicted_ER | 0.4680 |
| predicted_ERA | 4.2109 |
| predicted_H | 0.9650 |
| predicted_HR | 0.0920 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8230 |
| predicted_WHIP | 1.5269 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5610 | 0.2510 | model_form_blend |
| predicted_ER | 0.0000 | 0.4680 | 0.2094 | model_form_blend |
| predicted_ERA | - | 4.2109 | 4.2109 | form_only |
| predicted_H | 0.0000 | 0.9650 | 0.4318 | model_form_blend |
| predicted_HR | 0.0000 | 0.0920 | 0.0412 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8230 | 0.3682 | model_form_blend |
| predicted_WHIP | - | 1.5269 | 1.5269 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 29 |
| Season rows before report date | 29 |
| Report year | 2026 |
| Profile rows used | 28 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.60 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 668674 |
| playerID | 668674 |
| playerName | Lucas Erceg |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.1 |
| sl_bb_percent | 15.0 |
| sl_woba | 0.38 |
| sl_xwoba | 0.32 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 39.3 |
| sl_whiff_percent | 21.5 |
| sl_swing_percent | 46.3 |
| sl_avg_best_speed | 74.120400952 |
| sl_avg_hyper_speed | 94.206056386 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.292 | 0.000 | -0.292 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.583 | 1.000 | -0.583 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.917 | 2.000 | -0.917 | -2.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.858 | 0.100 | -0.758 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.750 | 0.000 | -0.750 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.3333 -> 0.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.3333 -> 0.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "621381",
"player_name": "Matt Strahm",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.3333,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.333 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.200 | 6.000 | 7.000 | 0.000 | 1.000 | 4.000 | 14.7273 | 1.9091 | 1.6364 | 1.9091 | 0.0000 | 0.2727 | 1.0909 |
| last_10 | 0.35 | 10 | 8.100 | 9.000 | 12.000 | 1.000 | 4.000 | 6.000 | 9.7200 | 1.5600 | 1.0800 | 1.4400 | 0.1200 | 0.4800 | 0.7200 |
| season | 0.20 | 24 | 22.000 | 14.000 | 22.000 | 7.000 | 18.000 | 8.000 | 5.7273 | 1.3182 | 0.6364 | 1.0000 | 0.3182 | 0.8182 | 0.3636 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1260 |
| predicted_ER | 0.4400 |
| predicted_ERA | 7.6168 |
| predicted_H | 0.6490 |
| predicted_HR | 0.2380 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.3700 |
| predicted_WHIP | 1.4918 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1260 | 0.0535 | model_form_blend |
| predicted_ER | 0.0000 | 0.4400 | 0.1868 | model_form_blend |
| predicted_ERA | - | 7.6168 | 7.6168 | form_only |
| predicted_H | 0.0000 | 0.6490 | 0.2755 | model_form_blend |
| predicted_HR | 0.0000 | 0.2380 | 0.1010 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.3700 | 0.1571 | model_form_blend |
| predicted_WHIP | - | 1.4918 | 1.4918 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 24 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 1 |
| Pitches | 14 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 2 |
| Pitching_ER | 1 |
| Pitching_ERA | 5.73 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 6 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 4 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 621381 |
| playerID | 621381 |
| playerName | Matt Strahm |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.8 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.387 |
| sl_xwoba | 0.313 |
| sl_sweet_spot_percent | 29.0 |
| sl_barrel_batted_rate | 10.1 |
| sl_hard_hit_percent | 43.5 |
| sl_whiff_percent | 23.2 |
| sl_swing_percent | 49.1 |
| sl_avg_best_speed | 81.148946857 |
| sl_avg_hyper_speed | 93.889683478 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.344 | 0.000 | -0.344 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.750 | 1.000 | -0.750 | -1.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 0.781 | 1.000 | -0.781 | -1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.656 | 0.000 | -0.656 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "670167",
"player_name": "John Schreiber",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 1.000 | 3.000 | 0.000 | 5.000 | 1.000 | 1.6875 | 0.5625 | 0.1875 | 0.5625 | 0.0000 | 0.9375 | 0.1875 |
| last_10 | 0.35 | 10 | 9.100 | 2.000 | 5.000 | 1.000 | 9.000 | 2.000 | 1.9286 | 0.6429 | 0.2143 | 0.5357 | 0.1071 | 0.9643 | 0.2143 |
| season | 0.20 | 32 | 29.200 | 9.000 | 24.000 | 11.000 | 21.000 | 5.000 | 2.7303 | 1.1798 | 0.3034 | 0.8090 | 0.3708 | 0.7079 | 0.1685 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1580 |
| predicted_ER | 0.2420 |
| predicted_ERA | 3.1410 |
| predicted_H | 0.5360 |
| predicted_HR | 0.1190 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6370 |
| predicted_WHIP | 1.0002 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1580 | 0.0721 | model_form_blend |
| predicted_ER | 0.0000 | 0.2420 | 0.1104 | model_form_blend |
| predicted_ERA | - | 3.1410 | 3.1410 | form_only |
| predicted_H | 0.0000 | 0.5360 | 0.2444 | model_form_blend |
| predicted_HR | 0.0000 | 0.1190 | 0.0543 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.6370 | 0.2905 | model_form_blend |
| predicted_WHIP | - | 1.0002 | 1.0002 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 32 |
| Season rows before report date | 32 |
| Report year | 2026 |
| Profile rows used | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 2 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.73 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260617_KC@WAS |
| game_type | full |
| mlbID | 670167 |
| playerID | 670167 |
| playerName | John Schreiber |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-17 |
| sl_k_percent | 17.6 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.308 |
| sl_xwoba | 0.329 |
| sl_sweet_spot_percent | 39.5 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 38.4 |
| sl_whiff_percent | 20.0 |
| sl_swing_percent | 44.2 |
| sl_avg_best_speed | 78.388859762 |
| sl_avg_hyper_speed | 94.080472169 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.632 | 0.000 | -0.632 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.684 | 0.000 | 0.316 | 1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.947 | 0.000 | 1.053 | 2.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 0.911 | 0.200 | -0.911 | -0.200 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.421 | 1.000 | -1.421 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 3 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_H: 0.0000 -> 2.0000 (boost 2.0000, worse) |
| Biggest Deboost | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 3 | 2 | 1 | 0 | 3 | predicted_H: 0.0000 -> 2.0000 (boost 2.0000, worse) | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "674444",
"player_name": "Steven Cruz",
"position": "Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 0.0,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.100 | 0.000 | 3.000 | 1.000 | 7.000 | 0.000 | 0.0000 | 0.6316 | 0.0000 | 0.4737 | 0.1579 | 1.1053 | 0.0000 |
| last_10 | 0.35 | 10 | 11.200 | 5.000 | 9.000 | 5.000 | 14.000 | 3.000 | 3.8571 | 1.2000 | 0.4286 | 0.7714 | 0.4286 | 1.2000 | 0.2571 |
| season | 0.20 | 19 | 20.100 | 13.000 | 18.000 | 12.000 | 27.000 | 7.000 | 5.7541 | 1.4754 | 0.6393 | 0.8852 | 0.5902 | 1.3279 | 0.3443 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2640 |
| predicted_ER | 0.3010 |
| predicted_ERA | 3.6113 |
| predicted_H | 0.6260 |
| predicted_HR | 0.1140 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7860 |
| predicted_WHIP | 1.1862 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2640 | 0.1099 | model_form_blend |
| predicted_ER | 0.0000 | 0.3010 | 0.1253 | model_form_blend |
| predicted_ERA | - | 3.6113 | 3.6113 | form_only |
| predicted_H | 0.0000 | 0.6260 | 0.2606 | model_form_blend |
| predicted_HR | 0.0000 | 0.1140 | 0.0475 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7860 | 0.3272 | model_form_blend |
| predicted_WHIP | - | 1.1862 | 1.1862 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 19 |
| Season rows before report date | 19 |
| Report year | 2026 |
| Profile rows used | 19 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.0 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 2 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.75 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 8 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260614_HOU@KC |
| game_type | full |
| mlbID | 674444 |
| playerID | 674444 |
| playerName | Steven Cruz |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-14 |
| sl_k_percent | 30.0 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.368 |
| sl_xwoba | 0.32 |
| sl_sweet_spot_percent | 37.3 |
| sl_barrel_batted_rate | 13.7 |
| sl_hard_hit_percent | 31.4 |
| sl_whiff_percent | 34.5 |
| sl_swing_percent | 48.6 |
| sl_avg_best_speed | 78.5189225 |
| sl_avg_hyper_speed | 93.677601042 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | TOR 2 - 1 BOS | TOR | 0.565 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | TOR 2 - 1 BOS | TOR | - | advisory_box_score_draw | True |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 6.5000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5649 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 5.923 | 3.528 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 2 | 1 | 0.5649 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 2 | 1 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 2 | 1 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 2 | 1 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.663702572614108,
"base_low_score_probability": 0.4149377593360996,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.24876481327800842,
"confidence": 0.8997616000000002,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.4520000000000002,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.5995232000000004
},
"prediction": "low_scoring",
"expected_total_runs": 3,
"pre_simulation_expected_total_runs": 6.5,
"low_score_model_expected_total_runs": 6.5,
"final_simulation_total_runs": 3,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 166,
"near_bucket_sample_size": 166,
"medium_bucket_sample_size": 232,
"wide_bucket_sample_size": 242,
"global_sample_size": 242,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5663,
"bayesian_hit_rate": 0.5598,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.9022,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5907,
"calibrated_pick_probability": 0.5649,
"predicted_side": "away"
}{
"applied": false,
"home": {
"team": "BOS",
"games": 71,
"wins": 29,
"losses": 42,
"win_pct": 0.4084507042253521,
"runs_scored": 279,
"runs_allowed": 291,
"run_differential": -12,
"run_differential_per_game": -0.16901408450704225,
"available": true
},
"away": {
"team": "TOR",
"games": 74,
"wins": 36,
"losses": 38,
"win_pct": 0.4864864864864865,
"runs_scored": 302,
"runs_allowed": 316,
"run_differential": -14,
"run_differential_per_game": -0.1891891891891892,
"available": true
},
"run_differential_edge_per_game": 0.0202,
"win_pct_edge": -0.078,
"quality_edge": -0.0969,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "TOR",
"guardrail_predicted_team": "TOR",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "TOR",
"output_opponent_team": "BOS",
"final_score_winner": "TOR",
"pre_simulation_winner": "TOR",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "TOR 2 - 1 BOS",
"winner": "TOR"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "TOR 2 - 1 BOS",
"winner": "TOR"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "BOS",
"games": 71,
"wins": 29,
"losses": 42,
"win_pct": 0.4084507042253521,
"runs_scored": 279,
"runs_allowed": 291,
"run_differential": -12,
"run_differential_per_game": -0.16901408450704225,
"available": true
},
"away": {
"team": "TOR",
"games": 74,
"wins": 36,
"losses": 38,
"win_pct": 0.4864864864864865,
"runs_scored": 302,
"runs_allowed": 316,
"run_differential": -14,
"run_differential_per_game": -0.1891891891891892,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.0151,
"final_margin": -1.0151,
"margin_cap": 1.5,
"season_quality_edge": 0.0969,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.564922,
"final_confidence": 0.564922,
"confidence_cap": 0.66,
"score_gap": 1.0151,
"calibration_sample_size": 166,
"calibration_empirical_hit_rate": 0.5663,
"calibration_bayesian_hit_rate": 0.5598,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.0969,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "TOR 2 - 1 BOS",
"winner": "TOR"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "TOR 2 - 1 BOS",
"winner": "TOR"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 2,
"home_runs": 1,
"confidence": 0.5649219999999999,
"home_win_probability": 0.4350780000000001,
"away_win_probability": 0.5649219999999999,
"predicted_score_text": "TOR 2 - 1 BOS",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "TOR",
"original_runs": 2,
"run_delta": 0.0597,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 31.0,
"quality": -0.0011091672152414792,
"contact": 0.07966363090767946,
"power": -0.0290010870341635,
"discipline": -0.03617879221626812,
"xwoba": 0.3150645161290323,
"recent_xwoba": 0.3150645161290323,
"barrel": 7.293548387096774,
"ab_hard_contact": -0.07733664083688561,
"ab_bat_speed": 70.36302375555438,
"ab_strikeout_rate": 0.1844244180826652,
"available_players": 9,
"top_players": [
{
"player_id": "665926",
"player_name": "Andrés Giménez",
"position": "SS",
"weight": 3.0,
"quality": -0.8457797886291677,
"contact": -1.05893648617504,
"power": -1.0506725717504848,
"discipline": -0.6264871365020926,
"xwoba": 0.265,
"recent_xwoba": 0.265,
"barrel": 3.8,
"ab_hard_contact": -0.8336419112001804,
"ab_bat_speed": 65.97817085953878,
"ab_strikeout_rate": 0.17830188679245282,
"available": 1.0
},
{
"player_id": "676391",
"player_name": "Ernie Clement",
"position": "2B",
"weight": 4.0,
"quality": -0.7282140210661434,
"contact": -0.6212147851703843,
"power": -0.9803302475762165,
"discipline": -0.009306461830851959,
"xwoba": 0.267,
"recent_xwoba": 0.267,
"barrel": 2.8,
"ab_hard_contact": -0.23289066581005827,
"ab_bat_speed": 65.85213734567901,
"ab_strikeout_rate": 0.08212121212121212,
"available": 1.0
},
{
"player_id": "660821",
"player_name": "Jesús Sánchez",
"position": "RF",
"weight": 3.0,
"quality": 0.4960419278500472,
"contact": 0.7974771953330623,
"power": 0.9277168882665244,
"discipline": -0.5601517400094634,
"xwoba": 0.34400000000000003,
"recent_xwoba": 0.344,
"barrel": 11.5,
"ab_hard_contact": 0.16119490818762972,
"ab_bat_speed": 71.35664233303385,
"ab_strikeout_rate": 0.22839506172839505,
"available": 1.0
},
{
"player_id": "665489",
"player_name": "Vladimir Guerrero Jr.",
"position": "1B",
"weight": 4.0,
"quality": 0.6540566775847464,
"contact": 1.011002503492524,
"power": 0.17926315647307325,
"discipline": 0.9201072031205488,
"xwoba": 0.348,
"recent_xwoba": 0.348,
"barrel": 6.2,
"ab_hard_contact": 0.701072653270988,
"ab_bat_speed": 75.4817074722971,
"ab_strikeout_rate": 0.11320754716981132,
"available": 1.0
},
{
"player_id": "672960",
"player_name": "Kazuma Okamoto",
"position": "3B",
"weight": 4.0,
"quality": 0.32372415611396754,
"contact": 0.027069108164582075,
"power": 0.9884243379755487,
"discipline": -0.5705060044266208,
"xwoba": 0.323,
"recent_xwoba": 0.323,
"barrel": 14.4,
"ab_hard_contact": 0.4595343785585875,
"ab_bat_speed": 71.33991614255766,
"ab_strikeout_rate": 0.3113207547169811,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "543243",
"player_name": "Sonny Gray",
"quality": -0.12265596424745204,
"contact": -0.16402645762166665,
"command": -0.14700000000000008,
"movement": -0.3438950884813347,
"xwoba": 0.317,
"whiff": 22.1,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
},
"home": {
"team": "BOS",
"original_runs": 1,
"run_delta": -0.1508,
"adjusted_runs": 1,
"lineup": {
"players_used": 9,
"total_weight": 31.0,
"quality": 0.01410686582531416,
"contact": -0.07706760911078905,
"power": -0.098462191462127,
"discipline": -0.12098287657032582,
"xwoba": 0.3121935483870968,
"recent_xwoba": 0.3121935483870968,
"barrel": 7.587096774193549,
"ab_hard_contact": -0.10011326088616664,
"ab_bat_speed": 69.95222881860822,
"ab_strikeout_rate": 0.22408103699893472,
"available_players": 9,
"top_players": [
{
"player_id": "575929",
"player_name": "Willson Contreras",
"position": "1B",
"weight": 4.0,
"quality": 0.7830308134297406,
"contact": 0.8672843698843642,
"power": 1.210102045911292,
"discipline": -0.2609480881783607,
"xwoba": 0.383,
"recent_xwoba": 0.383,
"barrel": 14.0,
"ab_hard_contact": 1.2058504420353615,
"ab_bat_speed": 74.61826416122005,
"ab_strikeout_rate": 0.25947712418300656,
"available": 1.0
},
{
"player_id": "702332",
"player_name": "Caleb Durbin",
"position": "3B",
"weight": 3.0,
"quality": -0.45054975766932814,
"contact": -0.5886275237643993,
"power": -1.0541446726882762,
"discipline": 0.23355388072514272,
"xwoba": 0.28,
"recent_xwoba": 0.28,
"barrel": 2.8,
"ab_hard_contact": -0.9160363109083847,
"ab_bat_speed": 66.0515579710145,
"ab_strikeout_rate": 0.1532608695652174,
"available": 1.0
},
{
"player_id": "677800",
"player_name": "Wilyer Abreu",
"position": "RF",
"weight": 4.0,
"quality": 0.4774657151194073,
"contact": 0.45710459410990395,
"power": 0.6670240105951046,
"discipline": 0.14765212675037803,
"xwoba": 0.336,
"recent_xwoba": 0.336,
"barrel": 11.1,
"ab_hard_contact": 0.5240992595211318,
"ab_bat_speed": 72.98060871518419,
"ab_strikeout_rate": 0.18459119496855345,
"available": 1.0
},
{
"player_id": "678882",
"player_name": "Ceddanne Rafaela",
"position": "CF",
"weight": 4.0,
"quality": -0.3533695775177199,
"contact": -0.3064550218803427,
"power": -0.3911574653740375,
"discipline": -0.3818995354239256,
"xwoba": 0.296,
"recent_xwoba": 0.296,
"barrel": 6.3,
"ab_hard_contact": -0.13553025986168538,
"ab_bat_speed": 68.28380111111112,
"ab_strikeout_rate": 0.20600000000000002,
"available": 1.0
},
{
"player_id": "643396",
"player_name": "Isiah Kiner-Falefa",
"position": "SS",
"weight": 3.0,
"quality": -0.10295272904458758,
"contact": -0.0797581536815842,
"power": -1.0031205001411176,
"discipline": 0.5767950815533002,
"xwoba": 0.319,
"recent_xwoba": 0.319,
"barrel": 3.1,
"ab_hard_contact": -0.5281242885366351,
"ab_bat_speed": 65.21753623188405,
"ab_strikeout_rate": 0.1463768115942029,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "702056",
"player_name": "Trey Yesavage",
"quality": 0.12279599262810893,
"contact": 0.4353280764577775,
"command": 0.12271428571428572,
"movement": -0.033546536124203136,
"xwoba": 0.28,
"whiff": 29.1,
"faced_est_woba": 0.267543125,
"faced_launch_speed": 83.82962962962962,
"faced_strikeout_rate": 0.23125,
"faced_run_exp": 0.007916194341372912
}
}
},
"confidence_note": "Calibrated to pre-simulation winner probability with starter-quality caps. Production confidence governor cap enforced.",
"pre_simulation_target": {
"away_runs": 2,
"home_runs": 1,
"predicted_score_text": "TOR 2 - 1 BOS",
"confidence": 0.5649219999999999,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": true,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "TOR 2 - 1 BOS",
"winner": "TOR"
},
"final_simulation_score": {
"away_runs": 2,
"home_runs": 1,
"score_text": "TOR 2 - 1 BOS",
"winner": "TOR"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away TOR | True | 1.0073 | 1.0073 | 1 | 9 | 0 |
| Home BOS | True | 1.0079 | 1.0079 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Vladimir Guerrero Jr. | 173 | 1.0585 | 0.7805 | neutral | 0.3480 | 0.2930 | 0.4110 | 6.20 | 44.10 | 90.30 | 8.20 | 19.40 | 10.50 | 11.50 | 0.6571 |
| LF | Yohendrick Pinango | 364 | 1.0160 | 0.2129 | neutral | 0.3260 | 0.2820 | 0.4180 | 7.60 | 45.70 | 91.20 | 7.60 | 25.90 | 21.90 | 6.30 | -0.4571 |
| DH | George Springer | 385 | 1.0053 | 0.0701 | neutral | 0.3120 | 0.2240 | 0.3810 | 8.30 | 36.90 | 88.10 | 14.60 | 24 | 18.30 | 10.90 | 0.2286 |
| RF | Jesús Sánchez | 338 | 1.0552 | 0.7365 | neutral | 0.3440 | 0.2850 | 0.4770 | 11.50 | 46.50 | 91 | 11.40 | 24.80 | 20.90 | 4.20 | 0.1143 |
| CF | Nathan Lukes | 162 | 0.9871 | -0.1722 | negative_batter_regression | 0.3040 | 0.2790 | 0.3490 | 1 | 28.80 | 85.90 | 11.30 | 18.50 | 16.20 | 4.40 | -1 |
| 2B | Ernie Clement | 120 | 0.9332 | -0.8910 | negative_batter_regression | 0.2670 | 0.2500 | 0.3410 | 2.80 | 25.10 | 85.40 | 16.10 | 16.20 | 10.80 | 3 | -1.8000 |
| 3B | Kazuma Okamoto | 112 | 1.0419 | 0.5587 | neutral | 0.3230 | 0.2190 | 0.4330 | 14.40 | 49.10 | 91.80 | 17.20 | 34.40 | 32.50 | 9.80 | -0.1714 |
| C | Brandon Valenzuela | 91 | 1.0276 | 0.3680 | neutral | 0.3500 | 0.2650 | 0.4480 | 9.20 | 36.70 | 89.20 | 16 | 25.80 | 22.80 | 11.40 | 0.0857 |
| SS | Andrés Giménez | 212 | 0.9412 | -0.7842 | neutral | 0.2650 | 0.2240 | 0.3160 | 3.80 | 23.70 | 86.20 | 10.90 | 25.30 | 19.90 | 3.20 | -0.6000 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RF | Wilyer Abreu | 25 | 1.0516 | 0.6886 | neutral | 0.3360 | 0.2610 | 0.4550 | 11.10 | 41.50 | 89.70 | 18.20 | 22.30 | 19.80 | 8.60 | -0.0286 |
| 1B | Willson Contreras | 22 | 1.0880 | 1.1734 | neutral | 0.3830 | 0.2660 | 0.5040 | 14 | 44.50 | 90.10 | 16.90 | 30.30 | 26 | 9.40 | -0.6286 |
| DH | Mickey Gasper | 317 | 0.9888 | -0.1490 | neutral | 0.2820 | 0.2250 | 0.3390 | 5.60 | 40.80 | 89 | 15.60 | 19.60 | 20.20 | 7.10 | -0.2286 |
| CF | Ceddanne Rafaela | 13 | 0.9790 | -0.2797 | negative_batter_regression | 0.2960 | 0.2460 | 0.3660 | 6.30 | 36.30 | 86.60 | 10.70 | 24.20 | 20.50 | 5.20 | -1.4286 |
| SS | Isiah Kiner-Falefa | 106 | 0.9996 | -0.0053 | neutral | 0.3190 | 0.2840 | 0.3580 | 3.10 | 26.30 | 82.20 | 8.50 | 17.80 | 14 | 9.30 | 0.2571 |
| C | Connor Wong | 136 | 0.9925 | -0.1003 | neutral | 0.3120 | 0.2400 | 0.3510 | 3.40 | 37.30 | 87.30 | 10.90 | 24.50 | 21.30 | 9 | -0.8000 |
| 3B | Caleb Durbin | 196 | 0.9732 | -0.3567 | positive_batter_regression | 0.2800 | 0.2380 | 0.3240 | 2.80 | 29.90 | 85 | 9.50 | 14.70 | 14.20 | 5.80 | 0.8571 |
| LF | Jarren Duran | 118 | 1.0092 | 0.1227 | neutral | 0.2990 | 0.2300 | 0.3950 | 11.50 | 39.50 | 90 | 13.90 | 35.10 | 29 | 6.80 | 0.1714 |
| 2B | Andruw Monasterio | 399 | 0.9892 | -0.1437 | neutral | 0.2810 | 0.2360 | 0.3560 | 6.30 | 38 | 87.90 | 20.70 | 18.50 | 25.20 | 6.10 | -0.4571 |
{
"home": {
"applied": true,
"offense_factor": 1.0079,
"raw_average_factor": 1.0079,
"team_espn_average_rank": 148.0,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "RF",
"player_id": "677800",
"player_name": "Wilyer Abreu",
"offense_factor": 1.0516,
"quality_score": 0.6886,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677800",
"espn_id": 4990055,
"player_name": "Wilyer Abreu",
"team": "BOS",
"role": "batter",
"espn_rank": 25,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 25,
"gp_value": 70.0,
"gp_rank": 72,
"ab_value": 273.0,
"ab_rank": 31,
"r_value": 31.0,
"r_rank": 109,
"h_value": 76.0,
"h_rank": 24,
"avg_value": 0.2783882,
"avg_rank": 40.0,
"2b_value": 16.0,
"2b_rank": 17,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 8.0,
"hr_rank": 98,
"rbi_value": 34.0,
"rbi_rank": 81,
"tb_value": 118.0,
"tb_rank": 479,
"bb_value": 26.0,
"bb_rank": 82,
"so_value": 60.0,
"so_rank": 85,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3377483,
"obp_rank": "76",
"slg_value": 0.4322344,
"slg_rank": "71",
"ops_value": 0.7699827,
"ops_rank": 147.0,
"war_value": 2.59,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 19.8,
"bb_percent": 8.6,
"woba": 0.337,
"xwoba": 0.336,
"xba": 0.261,
"xslg": 0.455,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 11.1,
"hard_hit_percent": 41.5,
"exit_velocity_avg": 89.7,
"launch_angle_avg": 18.2,
"whiff_percent": 22.3,
"swing_percent": 49.7
},
"components": {
"expected_quality": 0.8054,
"regression_edge": -0.0286,
"xwoba_edge": 0.9143,
"xba_edge": 0.6429,
"xslg_edge": 1.1857,
"barrel_edge": 0.9556,
"hard_hit_edge": 0.4286,
"exit_velocity_edge": 0.36,
"sweet_spot_edge": 0.2167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "575929",
"player_name": "Willson Contreras",
"offense_factor": 1.088,
"quality_score": 1.1734,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "575929",
"espn_id": 32532,
"player_name": "Willson Contreras",
"team": "BOS",
"role": "batter",
"espn_rank": 22,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 22,
"gp_value": 69.0,
"gp_rank": 83,
"ab_value": 245.0,
"ab_rank": 99,
"r_value": 34.0,
"r_rank": 83,
"h_value": 72.0,
"h_rank": 44,
"avg_value": 0.2938775,
"avg_rank": 15.0,
"2b_value": 11.0,
"2b_rank": 110,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 16.0,
"hr_rank": 17,
"rbi_value": 43.0,
"rbi_rank": 27,
"tb_value": 135.0,
"tb_rank": 239,
"bb_value": 27.0,
"bb_rank": 75,
"so_value": 75.0,
"so_rank": 31,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3888888,
"obp_rank": "13",
"slg_value": 0.5510204,
"slg_rank": "9",
"ops_value": 0.9399092,
"ops_rank": 4.0,
"war_value": 2.75,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 216.0,
"k_percent": 26.0,
"bb_percent": 9.4,
"woba": 0.405,
"xwoba": 0.383,
"xba": 0.266,
"xslg": 0.504,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 14.0,
"hard_hit_percent": 44.5,
"exit_velocity_avg": 90.1,
"launch_angle_avg": 16.9,
"whiff_percent": 30.3,
"swing_percent": 49.0
},
"components": {
"expected_quality": 1.492,
"regression_edge": -0.6286,
"xwoba_edge": 2.2571,
"xba_edge": 0.7857,
"xslg_edge": 1.8857,
"barrel_edge": 1.6,
"hard_hit_edge": 0.8571,
"exit_velocity_edge": 0.52,
"sweet_spot_edge": 0.0333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "681508",
"player_name": "Mickey Gasper",
"offense_factor": 0.9888,
"quality_score": -0.149,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681508",
"espn_id": 5132012,
"player_name": "Mickey Gasper",
"team": "BOS",
"role": "batter",
"espn_rank": 317,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 317,
"gp_value": 28.0,
"gp_rank": 367,
"ab_value": 89.0,
"ab_rank": 344,
"r_value": 11.0,
"r_rank": 327,
"h_value": 23.0,
"h_rank": 312,
"avg_value": 0.2584269,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 6.0,
"rbi_rank": 383,
"tb_value": 29.0,
"tb_rank": 2086,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 20.0,
"so_rank": 352,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3163265,
"obp_rank": "-",
"slg_value": 0.3258426,
"slg_rank": "-",
"ops_value": 0.6421691,
"ops_rank": null,
"war_value": 0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 45.0,
"k_percent": 20.2,
"bb_percent": 7.1,
"woba": 0.29,
"xwoba": 0.282,
"xba": 0.225,
"xslg": 0.339,
"sweet_spot_percent": 29.6,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 40.8,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 15.6,
"whiff_percent": 19.6,
"swing_percent": 42.7
},
"components": {
"expected_quality": -0.3479,
"regression_edge": -0.2286,
"xwoba_edge": -0.6286,
"xba_edge": -0.3857,
"xslg_edge": -0.4714,
"barrel_edge": -0.2667,
"hard_hit_edge": 0.3286,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": -0.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "678882",
"player_name": "Ceddanne Rafaela",
"offense_factor": 0.979,
"quality_score": -0.2797,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "678882",
"espn_id": 4987382,
"player_name": "Ceddanne Rafaela",
"team": "BOS",
"role": "batter",
"espn_rank": 13,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 13,
"gp_value": 68.0,
"gp_rank": 104,
"ab_value": 248.0,
"ab_rank": 94,
"r_value": 29.0,
"r_rank": 128,
"h_value": 71.0,
"h_rank": 46,
"avg_value": 0.2862903,
"avg_rank": 25.0,
"2b_value": 15.0,
"2b_rank": 27,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 32.0,
"rbi_rank": 96,
"tb_value": 111.0,
"tb_rank": 464,
"bb_value": 14.0,
"bb_rank": 215,
"so_value": 55.0,
"so_rank": 106,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.3395522,
"obp_rank": "72",
"slg_value": 0.4475806,
"slg_rank": "57",
"ops_value": 0.7871328,
"ops_rank": 129.0,
"war_value": 3.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 195.0,
"k_percent": 20.5,
"bb_percent": 5.2,
"woba": 0.346,
"xwoba": 0.296,
"xba": 0.246,
"xslg": 0.366,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 36.3,
"exit_velocity_avg": 86.6,
"launch_angle_avg": 10.7,
"whiff_percent": 24.2,
"swing_percent": 52.2
},
"components": {
"expected_quality": -0.1343,
"regression_edge": -1.4286,
"xwoba_edge": -0.2286,
"xba_edge": 0.2143,
"xslg_edge": -0.0857,
"barrel_edge": -0.1111,
"hard_hit_edge": -0.3143,
"exit_velocity_edge": -0.88,
"sweet_spot_edge": 0.8333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "643396",
"player_name": "Isiah Kiner-Falefa",
"offense_factor": 0.9996,
"quality_score": -0.0053,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643396",
"espn_id": 33572,
"player_name": "Isiah Kiner-Falefa",
"team": "BOS",
"role": "batter",
"espn_rank": 106,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 106,
"gp_value": 46.0,
"gp_rank": 263,
"ab_value": 116.0,
"ab_rank": 287,
"r_value": 18.0,
"r_rank": 232,
"h_value": 32.0,
"h_rank": 255,
"avg_value": 0.275862,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 307,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 12.0,
"rbi_rank": 292,
"tb_value": 39.0,
"tb_rank": 2045,
"bb_value": 12.0,
"bb_rank": 253,
"so_value": 18.0,
"so_rank": 370,
"sb_value": 7.0,
"sb_rank": 62,
"obp_value": 0.34375,
"obp_rank": "-",
"slg_value": 0.3362068,
"slg_rank": "-",
"ops_value": 0.6799568,
"ops_rank": null,
"war_value": 1.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 65.0,
"k_percent": 14.0,
"bb_percent": 9.3,
"woba": 0.31,
"xwoba": 0.319,
"xba": 0.284,
"xslg": 0.358,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 3.1,
"hard_hit_percent": 26.3,
"exit_velocity_avg": 82.2,
"launch_angle_avg": 8.5,
"whiff_percent": 17.8,
"swing_percent": 49.5
},
"components": {
"expected_quality": -0.0555,
"regression_edge": 0.2571,
"xwoba_edge": 0.4286,
"xba_edge": 1.3,
"xslg_edge": -0.2,
"barrel_edge": -0.8222,
"hard_hit_edge": -1.7429,
"exit_velocity_edge": -2.5,
"sweet_spot_edge": 0.85,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "657136",
"player_name": "Connor Wong",
"offense_factor": 0.9925,
"quality_score": -0.1003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657136",
"espn_id": 40086,
"player_name": "Connor Wong",
"team": "BOS",
"role": "batter",
"espn_rank": 136,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 136,
"gp_value": 28.0,
"gp_rank": 367,
"ab_value": 76.0,
"ab_rank": 368,
"r_value": 10.0,
"r_rank": 341,
"h_value": 21.0,
"h_rank": 328,
"avg_value": 0.2763157,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 188,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 0.0,
"hr_rank": 441,
"rbi_value": 10.0,
"rbi_rank": 319,
"tb_value": 29.0,
"tb_rank": 2227,
"bb_value": 8.0,
"bb_rank": 314,
"so_value": 19.0,
"so_rank": 360,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.367816,
"obp_rank": "-",
"slg_value": 0.3815789,
"slg_rank": "-",
"ops_value": 0.7493949,
"ops_rank": null,
"war_value": 0.95,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 65.0,
"k_percent": 21.3,
"bb_percent": 9.0,
"woba": 0.34,
"xwoba": 0.312,
"xba": 0.24,
"xslg": 0.351,
"sweet_spot_percent": 30.5,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 37.3,
"exit_velocity_avg": 87.3,
"launch_angle_avg": 10.9,
"whiff_percent": 24.5,
"swing_percent": 46.5
},
"components": {
"expected_quality": -0.129,
"regression_edge": -0.8,
"xwoba_edge": 0.2286,
"xba_edge": 0.0429,
"xslg_edge": -0.3,
"barrel_edge": -0.7556,
"hard_hit_edge": -0.1714,
"exit_velocity_edge": -0.6,
"sweet_spot_edge": -0.4667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "702332",
"player_name": "Caleb Durbin",
"offense_factor": 0.9732,
"quality_score": -0.3567,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "702332",
"espn_id": 5007615,
"player_name": "Caleb Durbin",
"team": "BOS",
"role": "batter",
"espn_rank": 196,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 196,
"gp_value": 64.0,
"gp_rank": 146,
"ab_value": 205.0,
"ab_rank": 151,
"r_value": 21.0,
"r_rank": 203,
"h_value": 39.0,
"h_rank": 210,
"avg_value": 0.1902439,
"avg_rank": 160.0,
"2b_value": 13.0,
"2b_rank": 61,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 26.0,
"rbi_rank": 146,
"tb_value": 63.0,
"tb_rank": 1144,
"bb_value": 13.0,
"bb_rank": 237,
"so_value": 32.0,
"so_rank": 259,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.25,
"obp_rank": "162",
"slg_value": 0.307317,
"slg_rank": "159",
"ops_value": 0.557317,
"ops_rank": 321.0,
"war_value": 0.55,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 164.0,
"k_percent": 14.2,
"bb_percent": 5.8,
"woba": 0.25,
"xwoba": 0.28,
"xba": 0.238,
"xslg": 0.324,
"sweet_spot_percent": 26.0,
"barrel_batted_rate": 2.8,
"hard_hit_percent": 29.9,
"exit_velocity_avg": 85.0,
"launch_angle_avg": 9.5,
"whiff_percent": 14.7,
"swing_percent": 45.2
},
"components": {
"expected_quality": -0.696,
"regression_edge": 0.8571,
"xwoba_edge": -0.6857,
"xba_edge": -0.0143,
"xslg_edge": -0.6857,
"barrel_edge": -0.8889,
"hard_hit_edge": -1.2286,
"exit_velocity_edge": -1.52,
"sweet_spot_edge": -1.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "680776",
"player_name": "Jarren Duran",
"offense_factor": 1.0092,
"quality_score": 0.1227,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680776",
"espn_id": 41610,
"player_name": "Jarren Duran",
"team": "BOS",
"role": "batter",
"espn_rank": 118,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 118,
"gp_value": 66.0,
"gp_rank": 132,
"ab_value": 268.0,
"ab_rank": 42,
"r_value": 35.0,
"r_rank": 73,
"h_value": 57.0,
"h_rank": 109,
"avg_value": 0.2126865,
"avg_rank": 147.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 2.0,
"3b_rank": 17,
"hr_value": 12.0,
"hr_rank": 46,
"rbi_value": 37.0,
"rbi_rank": 54,
"tb_value": 106.0,
"tb_rank": 435,
"bb_value": 20.0,
"bb_rank": 146,
"so_value": 85.0,
"so_rank": 13,
"sb_value": 11.0,
"sb_rank": 28,
"obp_value": 0.2730375,
"obp_rank": "158",
"slg_value": 0.3955223,
"slg_rank": "108",
"ops_value": 0.6685598,
"ops_rank": 50.0,
"war_value": 1.13,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 29.0,
"bb_percent": 6.8,
"woba": 0.293,
"xwoba": 0.299,
"xba": 0.23,
"xslg": 0.395,
"sweet_spot_percent": 31.9,
"barrel_batted_rate": 11.5,
"hard_hit_percent": 39.5,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 13.9,
"whiff_percent": 35.1,
"swing_percent": 48.6
},
"components": {
"expected_quality": 0.1181,
"regression_edge": 0.1714,
"xwoba_edge": -0.1429,
"xba_edge": -0.2429,
"xslg_edge": 0.3286,
"barrel_edge": 1.0444,
"hard_hit_edge": 0.1429,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": -0.2333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "655316",
"player_name": "Andruw Monasterio",
"offense_factor": 0.9892,
"quality_score": -0.1437,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "655316",
"espn_id": 36950,
"player_name": "Andruw Monasterio",
"team": "BOS",
"role": "batter",
"espn_rank": 399,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 399,
"gp_value": 39.0,
"gp_rank": 314,
"ab_value": 108.0,
"ab_rank": 306,
"r_value": 11.0,
"r_rank": 327,
"h_value": 26.0,
"h_rank": 288,
"avg_value": 0.2407407,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 2.0,
"hr_rank": 301,
"rbi_value": 11.0,
"rbi_rank": 306,
"tb_value": 42.0,
"tb_rank": 1704,
"bb_value": 7.0,
"bb_rank": 333,
"so_value": 29.0,
"so_rank": 277,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.2869565,
"obp_rank": "-",
"slg_value": 0.3888888,
"slg_rank": "-",
"ops_value": 0.6758453,
"ops_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 95.0,
"k_percent": 25.2,
"bb_percent": 6.1,
"woba": 0.297,
"xwoba": 0.281,
"xba": 0.236,
"xslg": 0.356,
"sweet_spot_percent": 36.7,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 38.0,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 20.7,
"whiff_percent": 18.5,
"swing_percent": 45.8
},
"components": {
"expected_quality": -0.297,
"regression_edge": -0.4571,
"xwoba_edge": -0.6571,
"xba_edge": -0.0714,
"xslg_edge": -0.2286,
"barrel_edge": -0.1111,
"hard_hit_edge": -0.0714,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": 0.5667,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0073,
"raw_average_factor": 1.0073,
"team_espn_average_rank": 217.44,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "1B",
"player_id": "665489",
"player_name": "Vladimir Guerrero Jr.",
"offense_factor": 1.0585,
"quality_score": 0.7805,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665489",
"espn_id": 35002,
"player_name": "Vladimir Guerrero Jr.",
"team": "TOR",
"role": "batter",
"espn_rank": 173,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 173,
"gp_value": 70.0,
"gp_rank": 72,
"ab_value": 254.0,
"ab_rank": 84,
"r_value": 39.0,
"r_rank": 57,
"h_value": 71.0,
"h_rank": 46,
"avg_value": 0.2795275,
"avg_rank": 34.0,
"2b_value": 12.0,
"2b_rank": 80,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 3.0,
"hr_rank": 243,
"rbi_value": 29.0,
"rbi_rank": 122,
"tb_value": 92.0,
"tb_rank": 1243,
"bb_value": 34.0,
"bb_rank": 40,
"so_value": 31.0,
"so_rank": 266,
"sb_value": 5.0,
"sb_rank": 94,
"obp_value": 0.3682432,
"obp_rank": "31",
"slg_value": 0.3622047,
"slg_rank": "130",
"ops_value": 0.7304479,
"ops_rank": 99.0,
"war_value": 0.68,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 10.5,
"bb_percent": 11.5,
"woba": 0.325,
"xwoba": 0.348,
"xba": 0.293,
"xslg": 0.411,
"sweet_spot_percent": 28.6,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 44.1,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 8.2,
"whiff_percent": 19.4,
"swing_percent": 48.3
},
"components": {
"expected_quality": 0.8047,
"regression_edge": 0.6571,
"xwoba_edge": 1.2571,
"xba_edge": 1.5571,
"xslg_edge": 0.5571,
"barrel_edge": -0.1333,
"hard_hit_edge": 0.8,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": -0.7833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "682818",
"player_name": "Yohendrick Pinango",
"offense_factor": 1.016,
"quality_score": 0.2129,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682818",
"espn_id": 4917684,
"player_name": "Yohendrick Pinango",
"team": "TOR",
"role": "batter",
"espn_rank": 364,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 364,
"gp_value": 40.0,
"gp_rank": 307,
"ab_value": 120.0,
"ab_rank": 280,
"r_value": 9.0,
"r_rank": 353,
"h_value": 35.0,
"h_rank": 232,
"avg_value": 0.2916666,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 235,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 4.0,
"hr_rank": 203,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 53.0,
"tb_rank": 1464,
"bb_value": 8.0,
"bb_rank": 314,
"so_value": 28.0,
"so_rank": 286,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3359375,
"obp_rank": "-",
"slg_value": 0.4416666,
"slg_rank": "-",
"ops_value": 0.7776041,
"ops_rank": null,
"war_value": -0.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 79.0,
"k_percent": 21.9,
"bb_percent": 6.3,
"woba": 0.342,
"xwoba": 0.326,
"xba": 0.282,
"xslg": 0.418,
"sweet_spot_percent": 34.8,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 45.7,
"exit_velocity_avg": 91.2,
"launch_angle_avg": 7.6,
"whiff_percent": 25.9,
"swing_percent": 50.6
},
"components": {
"expected_quality": 0.6246,
"regression_edge": -0.4571,
"xwoba_edge": 0.6286,
"xba_edge": 1.2429,
"xslg_edge": 0.6571,
"barrel_edge": 0.1778,
"hard_hit_edge": 1.0286,
"exit_velocity_edge": 0.96,
"sweet_spot_edge": 0.25,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "543807",
"player_name": "George Springer",
"offense_factor": 1.0053,
"quality_score": 0.0701,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "543807",
"espn_id": 32078,
"player_name": "George Springer",
"team": "TOR",
"role": "batter",
"espn_rank": 385,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 385,
"gp_value": 52.0,
"gp_rank": 223,
"ab_value": 198.0,
"ab_rank": 160,
"r_value": 22.0,
"r_rank": 191,
"h_value": 42.0,
"h_rank": 193,
"avg_value": 0.2121212,
"avg_rank": 149.0,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 19.0,
"rbi_rank": 216,
"tb_value": 73.0,
"tb_rank": 1063,
"bb_value": 25.0,
"bb_rank": 90,
"so_value": 42.0,
"so_rank": 178,
"sb_value": 6.0,
"sb_rank": 79,
"obp_value": 0.30837,
"obp_rank": "123",
"slg_value": 0.3686868,
"slg_rank": "124",
"ops_value": 0.6770568,
"ops_rank": 247.0,
"war_value": -0.08,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 161.0,
"k_percent": 18.3,
"bb_percent": 10.9,
"woba": 0.304,
"xwoba": 0.312,
"xba": 0.224,
"xslg": 0.381,
"sweet_spot_percent": 30.6,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 36.9,
"exit_velocity_avg": 88.1,
"launch_angle_avg": 14.6,
"whiff_percent": 24.0,
"swing_percent": 48.8
},
"components": {
"expected_quality": 0.0742,
"regression_edge": 0.2286,
"xwoba_edge": 0.2286,
"xba_edge": -0.4143,
"xslg_edge": 0.1286,
"barrel_edge": 0.3333,
"hard_hit_edge": -0.2286,
"exit_velocity_edge": -0.28,
"sweet_spot_edge": -0.45,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "660821",
"player_name": "Jesús Sánchez",
"offense_factor": 1.0552,
"quality_score": 0.7365,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "660821",
"espn_id": 39957,
"player_name": "Jesus Sanchez",
"team": "TOR",
"role": "batter",
"espn_rank": 338,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 338,
"gp_value": 67.0,
"gp_rank": 117,
"ab_value": 198.0,
"ab_rank": 160,
"r_value": 22.0,
"r_rank": 191,
"h_value": 57.0,
"h_rank": 109,
"avg_value": 0.2878787,
"avg_rank": null,
"2b_value": 14.0,
"2b_rank": 45,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 29.0,
"rbi_rank": 122,
"tb_value": 92.0,
"tb_rank": 899,
"bb_value": 9.0,
"bb_rank": 295,
"so_value": 45.0,
"so_rank": 158,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3255813,
"obp_rank": "-",
"slg_value": 0.4646464,
"slg_rank": "-",
"ops_value": 0.7902277,
"ops_rank": null,
"war_value": 0.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 173.0,
"k_percent": 20.9,
"bb_percent": 4.2,
"woba": 0.34,
"xwoba": 0.344,
"xba": 0.285,
"xslg": 0.477,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 11.5,
"hard_hit_percent": 46.5,
"exit_velocity_avg": 91.0,
"launch_angle_avg": 11.4,
"whiff_percent": 24.8,
"swing_percent": 55.5
},
"components": {
"expected_quality": 1.0705,
"regression_edge": 0.1143,
"xwoba_edge": 1.1429,
"xba_edge": 1.3286,
"xslg_edge": 1.5,
"barrel_edge": 1.0444,
"hard_hit_edge": 1.1429,
"exit_velocity_edge": 0.88,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "664770",
"player_name": "Nathan Lukes",
"offense_factor": 0.9871,
"quality_score": -0.1722,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "664770",
"espn_id": 35682,
"player_name": "Nathan Lukes",
"team": "TOR",
"role": "batter",
"espn_rank": 162,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 162,
"gp_value": 40.0,
"gp_rank": 307,
"ab_value": 124.0,
"ab_rank": 271,
"r_value": 14.0,
"r_rank": 287,
"h_value": 39.0,
"h_rank": 210,
"avg_value": 0.3145161,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": 206,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 1.0,
"hr_rank": 365,
"rbi_value": 13.0,
"rbi_rank": 285,
"tb_value": 49.0,
"tb_rank": 1899,
"bb_value": 6.0,
"bb_rank": 359,
"so_value": 22.0,
"so_rank": 331,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3629629,
"obp_rank": "-",
"slg_value": 0.3951612,
"slg_rank": "-",
"ops_value": 0.7581241,
"ops_rank": null,
"war_value": 0.78,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 68.0,
"k_percent": 16.2,
"bb_percent": 4.4,
"woba": 0.339,
"xwoba": 0.304,
"xba": 0.279,
"xslg": 0.349,
"sweet_spot_percent": 32.7,
"barrel_batted_rate": 1.0,
"hard_hit_percent": 28.8,
"exit_velocity_avg": 85.9,
"launch_angle_avg": 11.3,
"whiff_percent": 18.5,
"swing_percent": 51.1
},
"components": {
"expected_quality": -0.2821,
"regression_edge": -1.0,
"xwoba_edge": 0.0,
"xba_edge": 1.1571,
"xslg_edge": -0.3286,
"barrel_edge": -1.2889,
"hard_hit_edge": -1.3857,
"exit_velocity_edge": -1.16,
"sweet_spot_edge": -0.1,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "676391",
"player_name": "Ernie Clement",
"offense_factor": 0.9332,
"quality_score": -0.891,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "676391",
"espn_id": 41287,
"player_name": "Ernie Clement",
"team": "TOR",
"role": "batter",
"espn_rank": 120,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 120,
"gp_value": 73.0,
"gp_rank": 26,
"ab_value": 285.0,
"ab_rank": 15,
"r_value": 34.0,
"r_rank": 83,
"h_value": 84.0,
"h_rank": 5,
"avg_value": 0.2947368,
"avg_rank": 13.0,
"2b_value": 20.0,
"2b_rank": 3,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 28.0,
"rbi_rank": 131,
"tb_value": 127.0,
"tb_rank": 493,
"bb_value": 9.0,
"bb_rank": 295,
"so_value": 32.0,
"so_rank": 259,
"sb_value": 2.0,
"sb_rank": 183,
"obp_value": 0.3141891,
"obp_rank": "111",
"slg_value": 0.445614,
"slg_rank": "60",
"ops_value": 0.7598031,
"ops_rank": 51.0,
"war_value": 1.1,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 10.8,
"bb_percent": 3.0,
"woba": 0.33,
"xwoba": 0.267,
"xba": 0.25,
"xslg": 0.341,
"sweet_spot_percent": 32.5,
"barrel_batted_rate": 2.8,
"hard_hit_percent": 25.1,
"exit_velocity_avg": 85.4,
"launch_angle_avg": 16.1,
"whiff_percent": 16.2,
"swing_percent": 58.4
},
"components": {
"expected_quality": -0.7478,
"regression_edge": -1.8,
"xwoba_edge": -1.0571,
"xba_edge": 0.3286,
"xslg_edge": -0.4429,
"barrel_edge": -0.8889,
"hard_hit_edge": -1.9143,
"exit_velocity_edge": -1.36,
"sweet_spot_edge": -0.1333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "672960",
"player_name": "Kazuma Okamoto",
"offense_factor": 1.0419,
"quality_score": 0.5587,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672960",
"espn_id": 5134636,
"player_name": "Kazuma Okamoto",
"team": "TOR",
"role": "batter",
"espn_rank": 112,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 112,
"gp_value": 72.0,
"gp_rank": 37,
"ab_value": 261.0,
"ab_rank": 65,
"r_value": 35.0,
"r_rank": 73,
"h_value": 60.0,
"h_rank": 96,
"avg_value": 0.229885,
"avg_rank": 128.0,
"2b_value": 9.0,
"2b_rank": 154,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 15.0,
"hr_rank": 23,
"rbi_value": 42.0,
"rbi_rank": 31,
"tb_value": 114.0,
"tb_rank": 707,
"bb_value": 29.0,
"bb_rank": 61,
"so_value": 96.0,
"so_rank": 6,
"sb_value": 0.0,
"sb_rank": 341,
"obp_value": 0.3118644,
"obp_rank": "115",
"slg_value": 0.4367816,
"slg_rank": "68",
"ops_value": 0.748646,
"ops_rank": 47.0,
"war_value": 1.15,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 222.0,
"k_percent": 32.5,
"bb_percent": 9.8,
"woba": 0.329,
"xwoba": 0.323,
"xba": 0.219,
"xslg": 0.433,
"sweet_spot_percent": 34.1,
"barrel_batted_rate": 14.4,
"hard_hit_percent": 49.1,
"exit_velocity_avg": 91.8,
"launch_angle_avg": 17.2,
"whiff_percent": 34.4,
"swing_percent": 44.2
},
"components": {
"expected_quality": 0.6775,
"regression_edge": -0.1714,
"xwoba_edge": 0.5429,
"xba_edge": -0.5571,
"xslg_edge": 0.8714,
"barrel_edge": 1.6889,
"hard_hit_edge": 1.5143,
"exit_velocity_edge": 1.2,
"sweet_spot_edge": 0.1333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "678218",
"player_name": "Brandon Valenzuela",
"offense_factor": 1.0276,
"quality_score": 0.368,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "678218",
"espn_id": 4918248,
"player_name": "Brandon Valenzuela",
"team": "TOR",
"role": "batter",
"espn_rank": 91,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 91,
"gp_value": 47.0,
"gp_rank": 251,
"ab_value": 130.0,
"ab_rank": 263,
"r_value": 17.0,
"r_rank": 240,
"h_value": 33.0,
"h_rank": 246,
"avg_value": 0.2538461,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 259,
"3b_value": 0.0,
"3b_rank": 194,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 18.0,
"rbi_rank": 231,
"tb_value": 59.0,
"tb_rank": 1250,
"bb_value": 17.0,
"bb_rank": 181,
"so_value": 34.0,
"so_rank": 240,
"sb_value": 1.0,
"sb_rank": 238,
"obp_value": 0.3378378,
"obp_rank": "-",
"slg_value": 0.4538461,
"slg_rank": "-",
"ops_value": 0.7916839,
"ops_rank": null,
"war_value": 1.34,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 105.0,
"k_percent": 22.8,
"bb_percent": 11.4,
"woba": 0.347,
"xwoba": 0.35,
"xba": 0.265,
"xslg": 0.448,
"sweet_spot_percent": 41.8,
"barrel_batted_rate": 9.2,
"hard_hit_percent": 36.7,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 16.0,
"whiff_percent": 25.8,
"swing_percent": 50.3
},
"components": {
"expected_quality": 0.8826,
"regression_edge": 0.0857,
"xwoba_edge": 1.3143,
"xba_edge": 0.7571,
"xslg_edge": 1.0857,
"barrel_edge": 0.5333,
"hard_hit_edge": -0.2571,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 1.4167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "665926",
"player_name": "Andrés Giménez",
"offense_factor": 0.9412,
"quality_score": -0.7842,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665926",
"espn_id": 37729,
"player_name": "Andres Gimenez",
"team": "TOR",
"role": "batter",
"espn_rank": 212,
"espn_total_ranked": 567,
"metrics": {
"espn_rank": 212,
"gp_value": 70.0,
"gp_rank": 72,
"ab_value": 233.0,
"ab_rank": 115,
"r_value": 20.0,
"r_rank": 213,
"h_value": 54.0,
"h_rank": 125,
"avg_value": 0.2317596,
"avg_rank": 126.0,
"2b_value": 10.0,
"2b_rank": 125,
"3b_value": 1.0,
"3b_rank": 72,
"hr_value": 7.0,
"hr_rank": 119,
"rbi_value": 32.0,
"rbi_rank": 96,
"tb_value": 87.0,
"tb_rank": 751,
"bb_value": 8.0,
"bb_rank": 314,
"so_value": 50.0,
"so_rank": 136,
"sb_value": 10.0,
"sb_rank": 37,
"obp_value": 0.276,
"obp_rank": "154",
"slg_value": 0.3733905,
"slg_rank": "121",
"ops_value": 0.6493905,
"ops_rank": 275.0,
"war_value": 0.47,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 191.0,
"k_percent": 19.9,
"bb_percent": 3.2,
"woba": 0.286,
"xwoba": 0.265,
"xba": 0.224,
"xslg": 0.316,
"sweet_spot_percent": 28.0,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 23.7,
"exit_velocity_avg": 86.2,
"launch_angle_avg": 10.9,
"whiff_percent": 25.3,
"swing_percent": 57.0
},
"components": {
"expected_quality": -0.9526,
"regression_edge": -0.6,
"xwoba_edge": -1.1143,
"xba_edge": -0.4143,
"xslg_edge": -0.8,
"barrel_edge": -0.6667,
"hard_hit_edge": -2.1143,
"exit_velocity_edge": -1.04,
"sweet_spot_edge": -0.8833,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away TOR | True | 65 | 0.1731 | 0.4500 | 0.9853 | 1.0118 | 1.0306 | 0.9544 | neutral | 0.2800 | 0.2960 | 23.70 | 12.60 | 29.10 | 4.80 | 33.60 | |
| Home BOS | True | 73 | -0.0702 | 0.7080 | 1.0060 | 0.9749 | 0.9589 | 0.9949 | neutral | 0.3170 | 0.3090 | 19.90 | 6.30 | 22.10 | 7.70 | 35.50 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away TOR | True | None | 93 | 88.87 | 1987 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0481 | |
| Home BOS | True | None | 77 | 87.30 | 2519 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1359 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0042 |
| home_runs_vs_away_pitcher | 0.9934 |
| home_pitcher_quality_edge | -0.2433 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "543243",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 177.0,
"k_percent": 19.9,
"bb_percent": 6.3,
"woba": 0.309,
"xwoba": 0.317,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 35.5,
"avg_best_speed": 77.5161,
"avg_hyper_speed": 93.718,
"whiff_percent": 22.1,
"swing_percent": 47.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.023,
"command_and_miss": -0.2021,
"regression_edge": -0.2286,
"xwoba_edge": -0.0571,
"barrel_edge": -0.0889,
"hard_hit_edge": 0.4,
"whiff_edge": -0.5143,
"bb_edge": 0.725,
"pitch_design_score": -0.1359
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "543243",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 77,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 77,
"pitch_usage": 0.0,
"release_speed": 87.30296275663324,
"release_spin_rate": 2518.9902176014775,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 77,
"pitch_usage": 0.0,
"release_speed": 87.30296275663324,
"release_spin_rate": 2518.9902176014775,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 87.303,
"release_spin_rate": 2518.9902,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1359,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.9704,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0702,
"sample_weight": 0.708,
"run_prevention_factor": 1.006,
"strikeout_factor": 0.9749,
"walk_factor": 0.9589,
"homer_factor": 0.9949,
"woba_minus_xwoba": -0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "543243",
"espn_id": 32082,
"player_name": "Sonny Gray",
"team": "BOS",
"role": "pitcher",
"espn_rank": 73,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 73,
"gp_value": 12.0,
"gp_rank": 352,
"gs_value": 12.0,
"gs_rank": 88,
"qs_value": 7.0,
"qs_rank": 29,
"era_value": 3.032,
"era_rank": null,
"w_value": 8.0,
"w_rank": 4,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 62.1,
"ip_rank": 107,
"h_value": 59.0,
"h_rank": 101,
"er_value": 21.0,
"er_rank": 147,
"hr_value": 6.0,
"hr_rank": 125,
"bb_value": 16.0,
"bb_rank": 176,
"k_value": 51.0,
"k_rank": 108,
"k_per_9_value": 7.3636365,
"k_per_9_rank": 27,
"whip_value": 1.2032,
"whip_rank": null,
"war_value": 1.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "702056",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 108.0,
"k_percent": 23.7,
"bb_percent": 12.6,
"woba": 0.296,
"xwoba": 0.28,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 33.6,
"avg_best_speed": 78.5791,
"avg_hyper_speed": 93.4687,
"whiff_percent": 29.1,
"swing_percent": 48.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5763,
"command_and_miss": 0.0771,
"regression_edge": 0.4571,
"xwoba_edge": 1.0,
"barrel_edge": 0.5556,
"hard_hit_edge": 0.6714,
"whiff_edge": 0.4857,
"bb_edge": -0.85,
"pitch_design_score": -0.0481
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "702056",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 93,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 93,
"pitch_usage": 0.0,
"release_speed": 88.86933129477885,
"release_spin_rate": 1987.1021688051485,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 93,
"pitch_usage": 0.0,
"release_speed": 88.86933129477885,
"release_spin_rate": 1987.1021688051485,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8693,
"release_spin_rate": 1987.1022,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0481,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3438,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.1731,
"sample_weight": 0.45,
"run_prevention_factor": 0.9853,
"strikeout_factor": 1.0118,
"walk_factor": 1.0306,
"homer_factor": 0.9544,
"woba_minus_xwoba": 0.016,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702056",
"espn_id": 4949041,
"player_name": "Trey Yesavage",
"team": "TOR",
"role": "pitcher",
"espn_rank": 65,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 65,
"gp_value": 9.0,
"gp_rank": 403,
"gs_value": 9.0,
"gs_rank": 124,
"qs_value": 2.0,
"qs_rank": 109,
"era_value": 3.7762,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 47.2,
"ip_rank": 139,
"h_value": 35.0,
"h_rank": 173,
"er_value": 20.0,
"er_rank": 150,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 25.0,
"bb_rank": 54,
"k_value": 47.0,
"k_rank": 127,
"k_per_9_value": 8.874126,
"k_per_9_rank": 24,
"whip_value": 1.2587,
"whip_rank": null,
"war_value": 1.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0042,
"home_runs_vs_away_pitcher": 0.9934,
"home_pitcher_quality_edge": -0.2433
},
"score_before": {
"away_runs": 2.0,
"home_runs": 1.0
},
"score_after": {
"away_runs": 2.0085,
"home_runs": 0.9934,
"home_win_probability": 0.4093
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away TOR | 14-51 | 0.215 | 1 | 3.20 | -140 | cold | strong | |
| Home BOS | 12-45 | 0.211 | 1 | 3.50 | -141 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away TOR | 36-38 | 0.486 | -14 | -0.189 | True |
| Home BOS | 29-42 | 0.408 | -12 | -0.169 | True |
| Signal | - | - | 0.020 | -0.097 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target TOR | - | - | 2 | - | - | - | - |
| Game target BOS | - | - | 1 | - | - | - | - |
| Player finalized TOR | 31 | 9 | 2 | 0 | 3 | 1 | 8 |
| Player finalized BOS | 31 | 9 | 1 | 0 | 3 | 0 | 7 |
| Player model fractional TOR | 31.63 | 7.75 | 3.67 | 1.07 | 4.02 | 2.57 | 6.67 |
| Player model fractional BOS | 31.65 | 6.99 | 3.59 | 1.01 | 3.45 | 2.49 | 7.54 |
| Simulation box TOR | 31 | 4 | 2 | 1 | 2 | 2 | 10 |
| Simulation box BOS | 33 | 6 | 1 | 1 | 1 | 2 | 8 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away TOR | Starter | Trey Yesavage | 5.20 | 0 | 6 | 4 | 0 | 4.68 | 1.28 | True |
| Away TOR | Middle Reliever | Jeff Hoffman | 1 | 1 | 0 | 1 | 2 | 3.71 | 1.16 | True |
| Away TOR | Middle Reliever | Louis Varland | 1.10 | 0 | 2 | 0 | 0 | 3.76 | 1.10 | True |
| Away TOR | Middle Reliever | Tyler Rogers | 1 | 0 | 0 | 1 | 0 | 2.10 | 1.10 | True |
| Home BOS | Starter | Sonny Gray | 5.20 | 1 | 10 | 1 | 2 | 3.34 | 1.27 | True |
| Home BOS | Middle Reliever | Aroldis Chapman | 1.10 | 0 | 0 | 0 | 0 | 2.52 | 1.16 | True |
| Home BOS | Middle Reliever | Garrett Whitlock | 1 | 0 | 0 | 1 | 0 | 3.58 | 1.14 | True |
| Home BOS | Middle Reliever | Justin Slaten | 1 | 1 | 0 | 2 | 0 | 6.43 | 1.55 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | TOR | batter | 2B | Ernie Clement | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 1.5620 | boost | worse |
| away | TOR | batter | 1B | Vladimir Guerrero Jr. | worse | 9 | 2 | 7 | 1 | 8 | predicted_SO | 1.5510 | boost | worse |
| home | BOS | batter | SS | Isiah Kiner-Falefa | worse | 11 | 3 | 8 | 2 | 9 | predicted_SO | 1.5500 | boost | worse |
| away | TOR | batter | 3B | Kazuma Okamoto | worse | 8 | 1 | 7 | 2 | 6 | predicted_SO | -1.3520 | deboost | better |
| away | TOR | batter | DH | George Springer | worse | 10 | 2 | 8 | 3 | 7 | predicted_AB | -1.3300 | deboost | worse |
| away | TOR | batter | RF | Jesús Sánchez | worse | 11 | 4 | 7 | 3 | 8 | predicted_SO | 1.3280 | boost | worse |
| home | BOS | batter | LF | Jarren Duran | worse | 11 | 2 | 9 | 3 | 8 | predicted_SO | -1.2880 | deboost | better |
| home | BOS | batter | 2B | Andruw Monasterio | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 1.2160 | boost | worse |
| home | BOS | batter | 1B | Willson Contreras | better | 9 | 5 | 4 | 6 | 3 | predicted_SO | -1.1190 | deboost | better |
| home | BOS | batter | C | Connor Wong | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | 1.0770 | boost | better |
| home | BOS | batter | CF | Ceddanne Rafaela | worse | 9 | 1 | 8 | 0 | 9 | predicted_H | -1.0100 | deboost | worse |
| away | TOR | batter | CF | Nathan Lukes | worse | 10 | 3 | 7 | 2 | 8 | predicted_H | -0.8800 | deboost | worse |
| away | TOR | batter | C | Brandon Valenzuela | worse | 9 | 5 | 4 | 4 | 5 | predicted_HR | 0.8600 | boost | better |
| home | BOS | batter | RF | Wilyer Abreu | worse | 9 | 0 | 9 | 1 | 8 | predicted_SO | -0.8570 | deboost | better |
| home | BOS | batter | DH | Mickey Gasper | worse | 11 | 4 | 7 | 3 | 8 | predicted_2B | 0.8570 | boost | better |
| away | TOR | batter | LF | Yohendrick Pinango | boosted | 10 | 6 | 4 | 5 | 5 | predicted_BB | 0.8210 | boost | better |
| away | TOR | batter | SS | Andrés Giménez | worse | 9 | 1 | 8 | 0 | 9 | predicted_H | -0.7800 | deboost | worse |
| home | BOS | batter | 3B | Caleb Durbin | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | 0.6940 | boost | better |
| away | TOR | pitcher | Starter | Trey Yesavage | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | BOS | pitcher | Starter | Sonny Gray | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | TOR | pitcher | Middle Reliever | Louis Varland | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | BOS | pitcher | Middle Reliever | Aroldis Chapman | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Trey Yesavage |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.1731 |
| ESPN Rank | 65 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0481 |
| Avg Velo | 88.8693 |
| Avg Spin | 1987.1022 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 0 |
| Pre H | 4 |
| Pre BB | 0 |
| Pre SO | 6 |
| Season ERA | 3.7762 |
| Season WHIP | 1.2587 |
| Role Avg IP | 5.2960 |
| Recent Avg IP | 5.6670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"opponent": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"edges": {
"quality_edge": 0.2738,
"offense_edge": -0.0742,
"opponent_offense_edge": -0.1629,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0204,
"run_prevention": 0.9506,
"strikeout": 1.0212
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "702056",
"profile": {
"available": true,
"pitcher_id": "702056",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 108.0,
"k_percent": 23.7,
"bb_percent": 12.6,
"woba": 0.296,
"xwoba": 0.28,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 33.6,
"avg_best_speed": 78.5791,
"avg_hyper_speed": 93.4687,
"whiff_percent": 29.1,
"swing_percent": 48.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.5763,
"command_and_miss": 0.0771,
"regression_edge": 0.4571,
"xwoba_edge": 1.0,
"barrel_edge": 0.5556,
"hard_hit_edge": 0.6714,
"whiff_edge": 0.4857,
"bb_edge": -0.85,
"pitch_design_score": -0.0481
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "702056",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 93,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 93,
"pitch_usage": 0.0,
"release_speed": 88.86933129477885,
"release_spin_rate": 1987.1021688051485,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 93,
"pitch_usage": 0.0,
"release_speed": 88.86933129477885,
"release_spin_rate": 1987.1021688051485,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8693,
"release_spin_rate": 1987.1022,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0481,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3438,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.1731,
"sample_weight": 0.45,
"run_prevention_factor": 0.9853,
"strikeout_factor": 1.0118,
"walk_factor": 1.0306,
"homer_factor": 0.9544,
"woba_minus_xwoba": 0.016,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702056",
"espn_id": 4949041,
"player_name": "Trey Yesavage",
"team": "TOR",
"role": "pitcher",
"espn_rank": 65,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 65,
"gp_value": 9.0,
"gp_rank": 403,
"gs_value": 9.0,
"gs_rank": 124,
"qs_value": 2.0,
"qs_rank": 109,
"era_value": 3.7762,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 47.2,
"ip_rank": 139,
"h_value": 35.0,
"h_rank": 173,
"er_value": 20.0,
"er_rank": 150,
"hr_value": 3.0,
"hr_rank": 258,
"bb_value": 25.0,
"bb_rank": 54,
"k_value": 47.0,
"k_rank": 127,
"k_per_9_value": 8.874126,
"k_per_9_rank": 24,
"whip_value": 1.2587,
"whip_rank": null,
"war_value": 1.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 0.9934,
"adjusted": 3
},
"predicted_H": {
"original": 4.0,
"factor": 0.9934,
"adjusted": 4
},
"predicted_BB": {
"original": 3.0,
"factor": 1.0138,
"adjusted": 3
},
"predicted_HR": {
"original": 1.0,
"factor": 0.9795,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0053,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 47.2,
"ER": 20,
"H": 35,
"BB": 25,
"SO": 47,
"HR": 3,
"ERA": 3.776223776223776,
"WHIP": 1.2587412587412585,
"K9": 8.874125874125873,
"HR9": 0.5664335664335663,
"games_pitched": 9,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 9,
"error_prone": false
},
"games_count": 9,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "702056",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 93,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 93,
"pitch_usage": 0.0,
"release_speed": 88.86933129477885,
"release_spin_rate": 1987.1021688051485,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 93,
"pitch_usage": 0.0,
"release_speed": 88.86933129477885,
"release_spin_rate": 1987.1021688051485,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8693,
"release_spin_rate": 1987.1022,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0481,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3438,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.6164383561643836,
"last_10": 0.3835616438356164
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6429,
"prior_weight": 0.3571
},
"role": "pitcher",
"player_id": "702056",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 9,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 28.1,
"ER": 17.0,
"R": 17.0,
"H": 18.0,
"BB": 17.0,
"SO": 26.0,
"HR": 3.0,
"BF": 117.0,
"Pitches": 457.0
},
"per_game": {
"IP": 5.2,
"ER": 3.4,
"R": 3.4,
"H": 3.6,
"BB": 3.4,
"SO": 5.2,
"HR": 0.6,
"BF": 23.4,
"Pitches": 91.4
},
"rates": {
"ERA": 5.4,
"WHIP": 1.2353,
"ER_per_IP": 0.6,
"H_per_IP": 0.63529,
"BB_per_IP": 0.6,
"SO_per_IP": 0.91765,
"HR_per_IP": 0.10588
}
},
"last_10": {
"games": 9,
"totals": {
"IP": 47.2,
"ER": 20.0,
"R": 20.0,
"H": 35.0,
"BB": 25.0,
"SO": 47.0,
"HR": 3.0,
"BF": 198.0,
"Pitches": 788.0
},
"per_game": {
"IP": 5.1,
"ER": 2.2222,
"R": 2.2222,
"H": 3.8889,
"BB": 2.7778,
"SO": 5.2222,
"HR": 0.3333,
"BF": 22.0,
"Pitches": 87.5556
},
"rates": {
"ERA": 3.7762,
"WHIP": 1.2587,
"ER_per_IP": 0.41958,
"H_per_IP": 0.73427,
"BB_per_IP": 0.52448,
"SO_per_IP": 0.98601,
"HR_per_IP": 0.06294
}
},
"season": {
"games": 9,
"totals": {
"IP": 47.2,
"ER": 20.0,
"R": 20.0,
"H": 35.0,
"BB": 25.0,
"SO": 47.0,
"HR": 3.0,
"BF": 198.0,
"Pitches": 788.0
},
"per_game": {
"IP": 5.1,
"ER": 2.2222,
"R": 2.2222,
"H": 3.8889,
"BB": 2.7778,
"SO": 5.2222,
"HR": 0.3333,
"BF": 22.0,
"Pitches": 87.5556
},
"rates": {
"ERA": 3.7762,
"WHIP": 1.2587,
"ER_per_IP": 0.41958,
"H_per_IP": 0.73427,
"BB_per_IP": 0.52448,
"SO_per_IP": 0.98601,
"HR_per_IP": 0.06294
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.905,
"predicted_H": 4.36,
"predicted_BB": 2.774,
"predicted_SO": 5.259,
"predicted_HR": 0.612,
"predicted_ERA": 4.6811,
"predicted_WHIP": 1.2775
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5009,
"form_weight": 0.4991,
"form_reliability": 0.6429,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 9.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6429,
"prior_weight": 0.3571
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 2.905,
"final": 1.45,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 4.36,
"final": 4.1797,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 2.774,
"final": 1.3846,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 5.259,
"final": 5.6301,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.612,
"final": 0.3055,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.6811,
"final": 4.6811,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2775,
"final": 1.2775,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jeff Hoffman |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4584 |
| ESPN Rank | 612 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 5.2887 |
| Season WHIP | 1.5155 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"opponent": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"edges": {
"quality_edge": 0.2738,
"offense_edge": -0.0742,
"opponent_offense_edge": -0.1629,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0204,
"run_prevention": 0.9506,
"strikeout": 1.0212
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656546",
"profile": {
"available": true,
"pitcher_id": "656546",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 110.0,
"k_percent": 36.1,
"bb_percent": 7.5,
"woba": 0.34,
"xwoba": 0.269,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 27.5,
"avg_best_speed": 76.3485,
"avg_hyper_speed": 92.4322,
"whiff_percent": 39.6,
"swing_percent": 50.6
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.6937,
"command_and_miss": 1.6543,
"regression_edge": 2.0,
"xwoba_edge": 1.3143,
"barrel_edge": 0.2222,
"hard_hit_edge": 1.5429,
"whiff_edge": 1.9857,
"bb_edge": 0.425,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656546",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4584,
"sample_weight": 0.45,
"run_prevention_factor": 0.961,
"strikeout_factor": 1.0707,
"walk_factor": 0.9847,
"homer_factor": 0.9465,
"woba_minus_xwoba": 0.071,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656546",
"espn_id": 33841,
"player_name": "Jeff Hoffman",
"team": "TOR",
"role": "pitcher",
"espn_rank": 612,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 612,
"gp_value": 35.0,
"gp_rank": 9,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 5.2886,
"era_rank": null,
"w_value": 4.0,
"w_rank": 65,
"l_value": 4.0,
"l_rank": 62,
"sv_value": 5.0,
"sv_rank": 27,
"hld_value": 8.0,
"hld_rank": 41,
"ip_value": 32.1,
"ip_rank": 217,
"h_value": 38.0,
"h_rank": 156,
"er_value": 19.0,
"er_rank": 159,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 53.0,
"k_rank": 103,
"k_per_9_value": 14.752578,
"k_per_9_rank": 12,
"whip_value": 1.5154,
"whip_rank": null,
"war_value": -0.36,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9824,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9824,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9931,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9759,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0318,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 6,
"H": 9,
"BB": 3,
"SO": 13,
"HR": 1,
"ERA": 5.785714285714286,
"WHIP": 1.2857142857142856,
"K9": 12.535714285714285,
"HR9": 0.9642857142857142,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "656546",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.421,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5622,
"prior_weight": 0.4378
},
"role": "pitcher",
"player_id": "656546",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 35,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 2.0,
"BB": 1.0,
"SO": 6.0,
"HR": 0.0,
"BF": 18.0,
"Pitches": 82.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.4,
"BB": 0.2,
"SO": 1.2,
"HR": 0.0,
"BF": 3.6,
"Pitches": 16.4
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6,
"ER_per_IP": 0.0,
"H_per_IP": 0.4,
"BB_per_IP": 0.2,
"SO_per_IP": 1.2,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 6.0,
"R": 6.0,
"H": 9.0,
"BB": 3.0,
"SO": 13.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 172.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.9,
"BB": 0.3,
"SO": 1.3,
"HR": 0.1,
"BF": 3.9,
"Pitches": 17.2
},
"rates": {
"ERA": 5.7857,
"WHIP": 1.2857,
"ER_per_IP": 0.64286,
"H_per_IP": 0.96429,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.39286,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 35,
"totals": {
"IP": 32.1,
"ER": 19.0,
"R": 22.0,
"H": 38.0,
"BB": 11.0,
"SO": 53.0,
"HR": 4.0,
"BF": 147.0,
"Pitches": 599.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5429,
"R": 0.6286,
"H": 1.0857,
"BB": 0.3143,
"SO": 1.5143,
"HR": 0.1143,
"BF": 4.2,
"Pitches": 17.1143
},
"rates": {
"ERA": 5.2887,
"WHIP": 1.5155,
"ER_per_IP": 0.58763,
"H_per_IP": 1.17526,
"BB_per_IP": 0.34021,
"SO_per_IP": 1.63918,
"HR_per_IP": 0.12371
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.412,
"predicted_H": 0.85,
"predicted_BB": 0.311,
"predicted_SO": 1.172,
"predicted_HR": 0.099,
"predicted_ERA": 3.7068,
"predicted_WHIP": 1.1606
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.535,
"form_weight": 0.465,
"form_reliability": 0.5622,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.421,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5622,
"prior_weight": 0.4378
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.412,
"final": 0.7266,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.85,
"final": 0.9302,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.311,
"final": 1.2146,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.172,
"final": 0.545,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.099,
"final": 0.581,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7068,
"final": 3.7068,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1606,
"final": 1.1606,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Louis Varland |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5704 |
| ESPN Rank | 18 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 0.9000 |
| Season WHIP | 0.9750 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"opponent": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"edges": {
"quality_edge": 0.2738,
"offense_edge": -0.0742,
"opponent_offense_edge": -0.1629,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0204,
"run_prevention": 0.9506,
"strikeout": 1.0212
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "686973",
"profile": {
"available": true,
"pitcher_id": "686973",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 111.0,
"k_percent": 35.7,
"bb_percent": 7.1,
"woba": 0.227,
"xwoba": 0.226,
"sweet_spot_percent": 23.9,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 36.4,
"avg_best_speed": 75.0307,
"avg_hyper_speed": 93.4231,
"whiff_percent": 29.1,
"swing_percent": 52.5
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 1.7367,
"command_and_miss": 1.1236,
"regression_edge": 0.0286,
"xwoba_edge": 2.5,
"barrel_edge": 0.8667,
"hard_hit_edge": 0.2714,
"whiff_edge": 0.4857,
"bb_edge": 0.525,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "686973",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.5704,
"sample_weight": 0.45,
"run_prevention_factor": 0.9515,
"strikeout_factor": 1.0427,
"walk_factor": 0.9811,
"homer_factor": 0.9302,
"woba_minus_xwoba": 0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686973",
"espn_id": 4917888,
"player_name": "Louis Varland",
"team": "TOR",
"role": "pitcher",
"espn_rank": 18,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 18,
"gp_value": 36.0,
"gp_rank": 5,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 0.9,
"era_rank": null,
"w_value": 3.0,
"w_rank": 107,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 14.0,
"sv_rank": 7,
"hld_value": 5.0,
"hld_rank": 87,
"ip_value": 40.0,
"ip_rank": 164,
"h_value": 28.0,
"h_rank": 233,
"er_value": 4.0,
"er_rank": 528,
"hr_value": 1.0,
"hr_rank": 453,
"bb_value": 11.0,
"bb_rank": 272,
"k_value": 55.0,
"k_rank": 100,
"k_per_9_value": 12.374999,
"k_per_9_rank": 16,
"whip_value": 0.975,
"whip_rank": null,
"war_value": 2.3,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9782,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9782,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9915,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9686,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0192,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 11.1,
"ER": 3,
"H": 6,
"BB": 2,
"SO": 14,
"HR": 1,
"ERA": 2.3823529411764706,
"WHIP": 0.7058823529411764,
"K9": 11.117647058823529,
"HR9": 0.7941176470588235,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "686973",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.943,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6137,
"prior_weight": 0.3863
},
"role": "pitcher",
"player_id": "686973",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 36,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 2.0,
"SO": 10.0,
"HR": 1.0,
"BF": 22.0,
"Pitches": 74.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 0.4,
"SO": 2.0,
"HR": 0.2,
"BF": 4.4,
"Pitches": 14.8
},
"rates": {
"ERA": 5.0625,
"WHIP": 1.125,
"ER_per_IP": 0.5625,
"H_per_IP": 0.75,
"BB_per_IP": 0.375,
"SO_per_IP": 1.875,
"HR_per_IP": 0.1875
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.1,
"ER": 3.0,
"R": 3.0,
"H": 6.0,
"BB": 2.0,
"SO": 14.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 141.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.6,
"BB": 0.2,
"SO": 1.4,
"HR": 0.1,
"BF": 4.1,
"Pitches": 14.1
},
"rates": {
"ERA": 2.3824,
"WHIP": 0.7059,
"ER_per_IP": 0.26471,
"H_per_IP": 0.52941,
"BB_per_IP": 0.17647,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.08824
}
},
"season": {
"games": 36,
"totals": {
"IP": 40.0,
"ER": 4.0,
"R": 9.0,
"H": 28.0,
"BB": 11.0,
"SO": 55.0,
"HR": 1.0,
"BF": 154.0,
"Pitches": 629.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1111,
"R": 0.25,
"H": 0.7778,
"BB": 0.3056,
"SO": 1.5278,
"HR": 0.0278,
"BF": 4.2778,
"Pitches": 17.4722
},
"rates": {
"ERA": 0.9,
"WHIP": 0.975,
"ER_per_IP": 0.1,
"H_per_IP": 0.7,
"BB_per_IP": 0.275,
"SO_per_IP": 1.375,
"HR_per_IP": 0.025
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.418,
"predicted_H": 0.783,
"predicted_BB": 0.316,
"predicted_SO": 1.314,
"predicted_HR": 0.13,
"predicted_ERA": 3.7618,
"predicted_WHIP": 1.0985
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5132,
"form_weight": 0.4868,
"form_reliability": 0.6137,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.943,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6137,
"prior_weight": 0.3863
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.418,
"final": 0.2035,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.783,
"final": 0.3812,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.316,
"final": 0.1538,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.314,
"final": 1.6661,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.13,
"final": 0.0633,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7618,
"final": 3.7618,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0985,
"final": 1.0985,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Tyler Rogers |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3784 |
| ESPN Rank | 51 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.8000 |
| Season WHIP | 1.0286 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"opponent": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"edges": {
"quality_edge": 0.2738,
"offense_edge": -0.0742,
"opponent_offense_edge": -0.1629,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0204,
"run_prevention": 0.9506,
"strikeout": 1.0212
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "643511",
"profile": {
"available": true,
"pitcher_id": "643511",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 98.0,
"k_percent": 14.4,
"bb_percent": 7.2,
"woba": 0.219,
"xwoba": 0.24,
"sweet_spot_percent": 21.1,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 22.9,
"avg_best_speed": 71.756,
"avg_hyper_speed": 91.8923,
"whiff_percent": 14.6,
"swing_percent": 49.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 2.0616,
"command_and_miss": -0.9757,
"regression_edge": -0.6,
"xwoba_edge": 2.1429,
"barrel_edge": 1.6222,
"hard_hit_edge": 2.2,
"whiff_edge": -1.5857,
"bb_edge": 0.5,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "643511",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.3784,
"sample_weight": 0.45,
"run_prevention_factor": 0.9678,
"strikeout_factor": 0.9506,
"walk_factor": 0.982,
"homer_factor": 0.8731,
"woba_minus_xwoba": -0.021,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643511",
"espn_id": 34026,
"player_name": "Tyler Rogers",
"team": "TOR",
"role": "pitcher",
"espn_rank": 51,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 51,
"gp_value": 36.0,
"gp_rank": 5,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 1.8,
"era_rank": null,
"w_value": 1.0,
"w_rank": 287,
"l_value": 2.0,
"l_rank": 185,
"sv_value": 2.0,
"sv_rank": 56,
"hld_value": 16.0,
"hld_rank": 3,
"ip_value": 35.0,
"ip_rank": 186,
"h_value": 26.0,
"h_rank": 257,
"er_value": 7.0,
"er_rank": 431,
"hr_value": 0.0,
"hr_rank": 578,
"bb_value": 10.0,
"bb_rank": 303,
"k_value": 20.0,
"k_rank": 352,
"k_per_9_value": 5.142857,
"k_per_9_rank": 51,
"whip_value": 1.0285,
"whip_rank": null,
"war_value": 1.47,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9855,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9855,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9919,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9429,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9778,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 0,
"H": 7,
"BB": 1,
"SO": 5,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.8000000000000002,
"K9": 4.500000000000001,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-17T00:00:00"
}{
"available": false,
"pitcher_id": "643511",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.95,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5816,
"prior_weight": 0.4184
},
"role": "pitcher",
"player_id": "643511",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 36,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 5.0,
"BB": 0.0,
"SO": 2.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 71.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 0.0,
"SO": 0.4,
"HR": 0.0,
"BF": 4.0,
"Pitches": 14.2
},
"rates": {
"ERA": 0.0,
"WHIP": 1.0,
"ER_per_IP": 0.0,
"H_per_IP": 1.0,
"BB_per_IP": 0.0,
"SO_per_IP": 0.4,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 0.0,
"R": 0.0,
"H": 7.0,
"BB": 1.0,
"SO": 5.0,
"HR": 0.0,
"BF": 37.0,
"Pitches": 139.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.7,
"BB": 0.1,
"SO": 0.5,
"HR": 0.0,
"BF": 3.7,
"Pitches": 13.9
},
"rates": {
"ERA": 0.0,
"WHIP": 0.8,
"ER_per_IP": 0.0,
"H_per_IP": 0.7,
"BB_per_IP": 0.1,
"SO_per_IP": 0.5,
"HR_per_IP": 0.0
}
},
"season": {
"games": 36,
"totals": {
"IP": 35.0,
"ER": 7.0,
"R": 8.0,
"H": 26.0,
"BB": 10.0,
"SO": 20.0,
"HR": 0.0,
"BF": 139.0,
"Pitches": 487.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1944,
"R": 0.2222,
"H": 0.7222,
"BB": 0.2778,
"SO": 0.5556,
"HR": 0.0,
"BF": 3.8611,
"Pitches": 13.5278
},
"rates": {
"ERA": 1.8,
"WHIP": 1.0286,
"ER_per_IP": 0.2,
"H_per_IP": 0.74286,
"BB_per_IP": 0.28571,
"SO_per_IP": 0.57143,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.233,
"predicted_H": 0.898,
"predicted_BB": 0.206,
"predicted_SO": 0.665,
"predicted_HR": 0.061,
"predicted_ERA": 2.0956,
"predicted_WHIP": 1.1037
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5268,
"form_weight": 0.4732,
"form_reliability": 0.5816,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.95,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5816,
"prior_weight": 0.4184
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.233,
"final": 0.1103,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.898,
"final": 0.9517,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.206,
"final": 0.0975,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.665,
"final": 0.3147,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.061,
"final": 0.0289,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.0956,
"final": 2.0956,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1037,
"final": 1.1037,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.174 | 0.000 | 0.000 | Hitting_2B | 0.152 | 0.000 | -0.152 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.020 | 4.000 | 4.000 | Hitting_AB | 3.638 | 4.000 | 0.362 | 0.000 |
| predicted_AVG | 0.245 | 0.000 | 0.250 | Hitting_AVG | 0.290 | 0.500 | -0.290 | -0.500 |
| predicted_BB | 0.464 | 0.000 | 0.000 | Hitting_BB | 0.572 | 0.000 | -0.572 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_H | 0.990 | 0.000 | 1.000 | Hitting_H | 1.053 | 2.000 | -1.053 | -2.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_OBP | 0.325 | 0.000 | 0.250 | Hitting_OBP | 0.392 | 0.500 | -0.392 | -0.500 |
| predicted_R | 0.551 | 0.000 | 1.000 | Hitting_R | 0.613 | 0.000 | -0.613 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.428 | 2.000 | -0.428 | -2.000 |
| predicted_SLG | 0.364 | 0.000 | 0.250 | Hitting_SLG | 0.372 | 0.500 | -0.372 | -0.500 |
| predicted_SO | 0.449 | 2.000 | 1.000 | Hitting_SO | 0.432 | 0.000 | 1.568 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 1 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.4490 -> 2.0000 (boost 1.5510, worse) |
| Biggest Deboost | predicted_H: 0.9900 -> 0.0000 (deboost -0.9900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2450 -> 0.2505 (boost 0.0055, better) | predicted_AB: 4.0200 -> 3.9253 (deboost -0.0947, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3522 -> 0.3454 (deboost -0.0068, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 3 | 3 | predicted_RBI: 0.5244 -> 1.0000 (boost 0.4756, better) | predicted_SO: 0.4702 -> 0.0000 (deboost -0.4702, better) | AB rounded to 4 (raw=4.02), rates preserved: AVG=0.247 HR/AB=0.015 |
| 5 | bvp_blend | 1 | 1 | 0 | 0 | 1 | predicted_SO: 0.0000 -> 1.0000 (boost 1.0000, worse) | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.000) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5220 -> 1.0000 (boost 0.4780, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3454 -> 0.2500 (deboost -0.0954, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 1 | 3 | 0 | 4 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3454 (boost 0.0954, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665489",
"player_name": "Vladimir Guerrero Jr.",
"position": "1B",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.174,
"predicted_3B": 0.0,
"predicted_AB": 4.02,
"predicted_AVG": 0.245,
"predicted_BB": 0.464,
"predicted_H": 0.99,
"predicted_HR": 0.08,
"predicted_OBP": 0.325,
"predicted_R": 0.551,
"predicted_RBI": 0.52,
"predicted_SLG": 0.364,
"predicted_SO": 0.449
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1787,
"predicted_3B": 0.0004,
"predicted_AB": 3.9253,
"predicted_AVG": 0.2505,
"predicted_BB": 0.4407,
"predicted_H": 0.9853,
"predicted_HBP": 0.028,
"predicted_HR": 0.0614,
"predicted_OBP": 0.3272,
"predicted_R": 0.5125,
"predicted_RBI": 0.5149,
"predicted_SLG": 0.3522,
"predicted_SO": 0.4727
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.174,
"after": 0.1787,
"delta": 0.0047,
"percent_delta": 0.027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 3.9253,
"delta": -0.0947,
"percent_delta": -0.0236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2505,
"delta": 0.0055,
"percent_delta": 0.0224,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.464,
"after": 0.4407,
"delta": -0.0233,
"percent_delta": -0.0502,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9853,
"delta": -0.0047,
"percent_delta": -0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0614,
"delta": -0.0186,
"percent_delta": -0.2325,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3272,
"delta": 0.0022,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.551,
"after": 0.5125,
"delta": -0.0385,
"percent_delta": -0.0699,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.5149,
"delta": -0.0051,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3522,
"delta": -0.0118,
"percent_delta": -0.0324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.449,
"after": 0.4727,
"delta": 0.0237,
"percent_delta": 0.0528,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2505,
"delta": 0.0055,
"percent_delta": 0.0224,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.02,
"after": 3.9253,
"delta": -0.0947,
"percent_delta": -0.0236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1787,
"predicted_3B": 0.0004,
"predicted_AB": 3.9253,
"predicted_AVG": 0.253,
"predicted_BB": 0.443,
"predicted_H": 0.993,
"predicted_HBP": 0.028,
"predicted_HR": 0.0611,
"predicted_OBP": 0.3287,
"predicted_R": 0.522,
"predicted_RBI": 0.5244,
"predicted_SLG": 0.3454,
"predicted_SO": 0.4702
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1787,
"after": 0.1787,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9253,
"after": 3.9253,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2505,
"after": 0.253,
"delta": 0.0025,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4407,
"after": 0.443,
"delta": 0.0023,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9853,
"after": 0.993,
"delta": 0.0077,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.028,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0614,
"after": 0.0611,
"delta": -0.0003,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3272,
"after": 0.3287,
"delta": 0.0015,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5125,
"after": 0.522,
"delta": 0.0095,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5149,
"after": 0.5244,
"delta": 0.0095,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3522,
"after": 0.3454,
"delta": -0.0068,
"percent_delta": -0.0193,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4727,
"after": 0.4702,
"delta": -0.0025,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3522,
"after": 0.3454,
"delta": -0.0068,
"percent_delta": -0.0193,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.02), rates preserved: AVG=0.247 HR/AB=0.015",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1787,
"after": 0.0,
"delta": -0.1787,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9253,
"after": 4.0,
"delta": 0.0747,
"percent_delta": 0.019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.443,
"after": 0.0,
"delta": -0.443,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.993,
"after": 1.0,
"delta": 0.007,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0611,
"after": 0.0,
"delta": -0.0611,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5244,
"after": 1.0,
"delta": 0.4756,
"percent_delta": 0.9069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4702,
"after": 0.0,
"delta": -0.4702,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5244,
"after": 1.0,
"delta": 0.4756,
"percent_delta": 0.9069,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4702,
"after": 0.0,
"delta": -0.4702,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.000)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9243,
"bvp": 0.0757
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.522,
"after": 1.0,
"delta": 0.478,
"percent_delta": 0.9157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.522,
"after": 1.0,
"delta": 0.478,
"percent_delta": 0.9157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.25,
"delta": -0.003,
"percent_delta": -0.0119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3287,
"after": 0.25,
"delta": -0.0787,
"percent_delta": -0.2394,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3454,
"after": 0.25,
"delta": -0.0954,
"percent_delta": -0.2762,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3454,
"after": 0.25,
"delta": -0.0954,
"percent_delta": -0.2762,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.253,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3287,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3454,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.253,
"delta": 0.003,
"percent_delta": 0.0119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3287,
"delta": 0.0787,
"percent_delta": 0.3149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3454,
"delta": 0.0954,
"percent_delta": 0.3816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3454,
"delta": 0.0954,
"percent_delta": 0.3816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.174,
"after": 0.0,
"delta": -0.174,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 4.0,
"delta": -0.02,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.253,
"delta": 0.008,
"percent_delta": 0.0327,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.464,
"after": 0.0,
"delta": -0.464,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3287,
"delta": 0.0037,
"percent_delta": 0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.551,
"after": 0.0,
"delta": -0.551,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3454,
"delta": -0.0186,
"percent_delta": -0.0511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.449,
"after": 2.0,
"delta": 1.551,
"percent_delta": 3.4543,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 1,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.449,
"after": 2.0,
"delta": 1.551,
"percent_delta": 3.4543,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.174 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.464 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.551 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.364 | - |
| predicted_SO | 0.449 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.179 | 0.005 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.925 | -0.095 |
| predicted_AVG | 0.251 | 0.006 |
| predicted_BB | 0.441 | -0.023 |
| predicted_H | 0.985 | -0.005 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.061 | -0.019 |
| predicted_OBP | 0.327 | 0.002 |
| predicted_R | 0.512 | -0.039 |
| predicted_RBI | 0.515 | -0.005 |
| predicted_SLG | 0.352 | -0.012 |
| predicted_SO | 0.473 | 0.024 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.179 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.925 | 0.000 |
| predicted_AVG | 0.253 | 0.003 |
| predicted_BB | 0.443 | 0.002 |
| predicted_H | 0.993 | 0.008 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.061 | -0.000 |
| predicted_OBP | 0.329 | 0.002 |
| predicted_R | 0.522 | 0.010 |
| predicted_RBI | 0.524 | 0.009 |
| predicted_SLG | 0.345 | -0.007 |
| predicted_SO | 0.470 | -0.003 |
AB rounded to 4 (raw=4.02), rates preserved: AVG=0.247 HR/AB=0.015
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.000)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 1.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.179 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.075 |
| predicted_AVG | 0.250 | -0.003 |
| predicted_BB | 0.000 | -0.443 |
| predicted_H | 1.000 | 0.007 |
| predicted_HR | 0.000 | -0.061 |
| predicted_OBP | 0.250 | -0.079 |
| predicted_R | 1.000 | 0.478 |
| predicted_RBI | 1.000 | 0.476 |
| predicted_SLG | 0.250 | -0.095 |
| predicted_SO | 1.000 | 0.530 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 5.000 | 1.000 | 0.000 | 0.000 | 4.000 | 1.000 | 2.000 | 2.000 | 0.2500 | 0.3182 | 0.3000 | 0.2500 | 0.0000 | 0.2000 | 0.1000 | 0.1000 |
| last_10 | 0.20 | 10 | - | 39.000 | 8.000 | 2.000 | 0.000 | 0.000 | 5.000 | 4.000 | 3.000 | 6.000 | 0.2051 | 0.2558 | 0.2564 | 0.2051 | 0.0000 | 0.1282 | 0.0769 | 0.1538 |
| season | 0.60 | 69 | - | 254.000 | 71.000 | 12.000 | 0.000 | 3.000 | 29.000 | 38.000 | 32.000 | 31.000 | 0.2795 | 0.3618 | 0.3622 | 0.2795 | 0.0118 | 0.1142 | 0.1260 | 0.1221 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1850 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.7960 |
| predicted_AVG | 0.2580 |
| predicted_BB | 0.4090 |
| predicted_H | 0.9790 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.0360 |
| predicted_OBP | 0.3302 |
| predicted_R | 0.4600 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.3361 |
| predicted_SO | 0.5050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1740 | 0.1850 | 0.1787 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0200 | 3.7960 | 3.9253 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2580 | 0.2505 | model_form_blend |
| predicted_BB | 0.4640 | 0.4090 | 0.4407 | model_form_blend |
| predicted_H | 0.9900 | 0.9790 | 0.9853 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.0800 | 0.0360 | 0.0614 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3302 | 0.3272 | model_form_blend |
| predicted_R | 0.5510 | 0.4600 | 0.5125 | model_form_blend |
| predicted_RBI | 0.5200 | 0.5080 | 0.5149 | model_form_blend |
| predicted_SLG | 0.3640 | 0.3361 | 0.3522 | model_form_blend |
| predicted_SO | 0.4490 | 0.5050 | 0.4727 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 243 |
| Season rows before report date | 243 |
| Report year | 2026 |
| Profile rows used | 69 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.28 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 665489 |
| playerID | 665489 |
| playerName | Vladimir Guerrero Jr. |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 10.5 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.325 |
| sl_xwoba | 0.348 |
| sl_xba | 0.293 |
| sl_xslg | 0.411 |
| sl_sweet_spot_percent | 28.6 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 44.1 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 8.2 |
| sl_whiff_percent | 19.4 |
| sl_swing_percent | 48.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.154 | 0.000 | 0.000 | Hitting_2B | 0.181 | 0.000 | -0.181 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.190 | 3.000 | 3.000 | Hitting_AB | 3.372 | 3.000 | -0.372 | 0.000 |
| predicted_AVG | 0.258 | 0.333 | 0.333 | Hitting_AVG | 0.303 | 0.000 | 0.030 | 0.333 |
| predicted_BB | 0.179 | 1.000 | 0.000 | Hitting_BB | 0.181 | 0.000 | 0.819 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.820 | 1.000 | 1.000 | Hitting_H | 1.021 | 0.000 | -0.021 | 1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.106 | 0.000 | -0.106 | 0.000 |
| predicted_OBP | 0.317 | 0.500 | 0.333 | Hitting_OBP | 0.338 | 0.000 | 0.162 | 0.500 |
| predicted_R | 0.231 | 1.000 | 0.000 | Hitting_R | 0.266 | 0.000 | 0.734 | 1.000 |
| predicted_RBI | 0.380 | 1.000 | 0.000 | Hitting_RBI | 0.532 | 0.000 | 0.468 | 1.000 |
| predicted_SLG | 0.401 | 0.333 | 0.333 | Hitting_SLG | 0.451 | 0.000 | -0.118 | 0.333 |
| predicted_SO | 0.718 | 1.000 | 1.000 | Hitting_SO | 0.681 | 0.000 | 0.319 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_BB: 0.1790 -> 1.0000 (boost 0.8210, better) |
| Biggest Deboost | predicted_AB: 3.1900 -> 3.0000 (deboost -0.1900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.4021 -> 0.4081 (boost 0.0060, better) | predicted_OBP: 0.3183 -> 0.3073 (deboost -0.0110, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.7359 -> 1.0000 (boost 0.2641, worse) | predicted_RBI: 0.3694 -> 0.0000 (deboost -0.3694, worse) | AB rounded to 3 (raw=3.20), rates preserved: AVG=0.262 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2284 -> 0.0000 (deboost -0.2284, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2616 -> 0.3330 (boost 0.0714, better) | predicted_SLG: 0.4081 -> 0.3330 (deboost -0.0751, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4081 (boost 0.0751, better) | predicted_AVG: 0.3330 -> 0.2616 (deboost -0.0714, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682818",
"player_name": "Yohendrick Pinango",
"position": "LF",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.154,
"predicted_3B": 0.0,
"predicted_AB": 3.19,
"predicted_AVG": 0.258,
"predicted_BB": 0.179,
"predicted_H": 0.82,
"predicted_HR": 0.11,
"predicted_OBP": 0.317,
"predicted_R": 0.231,
"predicted_RBI": 0.38,
"predicted_SLG": 0.401,
"predicted_SO": 0.718
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1627,
"predicted_3B": 0.0008,
"predicted_AB": 3.2014,
"predicted_AVG": 0.2602,
"predicted_BB": 0.2101,
"predicted_H": 0.831,
"predicted_HBP": 0.006,
"predicted_HR": 0.1021,
"predicted_OBP": 0.3183,
"predicted_R": 0.2243,
"predicted_RBI": 0.3627,
"predicted_SLG": 0.4021,
"predicted_SO": 0.7397
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.154,
"after": 0.1627,
"delta": 0.0087,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.19,
"after": 3.2014,
"delta": 0.0114,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2602,
"delta": 0.0022,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.179,
"after": 0.2101,
"delta": 0.0311,
"percent_delta": 0.1737,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 0.831,
"delta": 0.011,
"percent_delta": 0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1021,
"delta": -0.0079,
"percent_delta": -0.0718,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3183,
"delta": 0.0013,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.231,
"after": 0.2243,
"delta": -0.0067,
"percent_delta": -0.029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.3627,
"delta": -0.0173,
"percent_delta": -0.0455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.4021,
"delta": 0.0011,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.718,
"after": 0.7397,
"delta": 0.0217,
"percent_delta": 0.0302,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 39
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1627,
"predicted_3B": 0.0008,
"predicted_AB": 3.2014,
"predicted_AVG": 0.2616,
"predicted_BB": 0.2112,
"predicted_H": 0.8375,
"predicted_HBP": 0.006,
"predicted_HR": 0.1016,
"predicted_OBP": 0.3073,
"predicted_R": 0.2284,
"predicted_RBI": 0.3694,
"predicted_SLG": 0.4081,
"predicted_SO": 0.7359
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1627,
"after": 0.1627,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2014,
"after": 3.2014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2602,
"after": 0.2616,
"delta": 0.0014,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2101,
"after": 0.2112,
"delta": 0.0011,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.831,
"after": 0.8375,
"delta": 0.0065,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1021,
"after": 0.1016,
"delta": -0.0005,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3183,
"after": 0.3073,
"delta": -0.011,
"percent_delta": -0.0346,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2243,
"after": 0.2284,
"delta": 0.0041,
"percent_delta": 0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3627,
"after": 0.3694,
"delta": 0.0067,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4021,
"after": 0.4081,
"delta": 0.006,
"percent_delta": 0.0149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7397,
"after": 0.7359,
"delta": -0.0038,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.4021,
"after": 0.4081,
"delta": 0.006,
"percent_delta": 0.0149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3183,
"after": 0.3073,
"delta": -0.011,
"percent_delta": -0.0346,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.20), rates preserved: AVG=0.262 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1627,
"after": 0.0,
"delta": -0.1627,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2014,
"after": 3.0,
"delta": -0.2014,
"percent_delta": -0.0629,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2112,
"after": 0.0,
"delta": -0.2112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8375,
"after": 1.0,
"delta": 0.1625,
"percent_delta": 0.194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1016,
"after": 0.0,
"delta": -0.1016,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3694,
"after": 0.0,
"delta": -0.3694,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7359,
"after": 1.0,
"delta": 0.2641,
"percent_delta": 0.3589,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7359,
"after": 1.0,
"delta": 0.2641,
"percent_delta": 0.3589,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3694,
"after": 0.0,
"delta": -0.3694,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2284,
"after": 0.0,
"delta": -0.2284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2284,
"after": 0.0,
"delta": -0.2284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2616,
"after": 0.333,
"delta": 0.0714,
"percent_delta": 0.2729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3073,
"after": 0.333,
"delta": 0.0257,
"percent_delta": 0.0836,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4081,
"after": 0.333,
"delta": -0.0751,
"percent_delta": -0.184,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2616,
"after": 0.333,
"delta": 0.0714,
"percent_delta": 0.2729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4081,
"after": 0.333,
"delta": -0.0751,
"percent_delta": -0.184,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2616,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3073,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4081,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2616,
"delta": -0.0714,
"percent_delta": -0.2144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3073,
"delta": -0.0257,
"percent_delta": -0.0772,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4081,
"delta": 0.0751,
"percent_delta": 0.2256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4081,
"delta": 0.0751,
"percent_delta": 0.2256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2616,
"delta": -0.0714,
"percent_delta": -0.2144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.154,
"after": 0.0,
"delta": -0.154,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.19,
"after": 3.0,
"delta": -0.19,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2616,
"delta": 0.0036,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.179,
"after": 1.0,
"delta": 0.821,
"percent_delta": 4.5866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 1.0,
"delta": 0.18,
"percent_delta": 0.2195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3073,
"delta": -0.0097,
"percent_delta": -0.0306,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.231,
"after": 1.0,
"delta": 0.769,
"percent_delta": 3.329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 1.0,
"delta": 0.62,
"percent_delta": 1.6316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.4081,
"delta": 0.0071,
"percent_delta": 0.0177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.718,
"after": 1.0,
"delta": 0.282,
"percent_delta": 0.3928,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.179,
"after": 1.0,
"delta": 0.821,
"percent_delta": 4.5866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.19,
"after": 3.0,
"delta": -0.19,
"percent_delta": -0.0596,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.154 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.190 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.179 | - |
| predicted_H | 0.820 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.317 | - |
| predicted_R | 0.231 | - |
| predicted_RBI | 0.380 | - |
| predicted_SLG | 0.401 | - |
| predicted_SO | 0.718 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.163 | 0.009 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.201 | 0.011 |
| predicted_AVG | 0.260 | 0.002 |
| predicted_BB | 0.210 | 0.031 |
| predicted_H | 0.831 | 0.011 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.102 | -0.008 |
| predicted_OBP | 0.318 | 0.001 |
| predicted_R | 0.224 | -0.007 |
| predicted_RBI | 0.363 | -0.017 |
| predicted_SLG | 0.402 | 0.001 |
| predicted_SO | 0.740 | 0.022 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.163 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.201 | 0.000 |
| predicted_AVG | 0.262 | 0.001 |
| predicted_BB | 0.211 | 0.001 |
| predicted_H | 0.838 | 0.007 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.102 | -0.001 |
| predicted_OBP | 0.307 | -0.011 |
| predicted_R | 0.228 | 0.004 |
| predicted_RBI | 0.369 | 0.007 |
| predicted_SLG | 0.408 | 0.006 |
| predicted_SO | 0.736 | -0.004 |
AB rounded to 3 (raw=3.20), rates preserved: AVG=0.262 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.163 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.201 |
| predicted_AVG | 0.333 | 0.071 |
| predicted_BB | 0.000 | -0.211 |
| predicted_H | 1.000 | 0.162 |
| predicted_HR | 0.000 | -0.102 |
| predicted_OBP | 0.333 | 0.026 |
| predicted_R | 0.000 | -0.228 |
| predicted_RBI | 0.000 | -0.369 |
| predicted_SLG | 0.333 | -0.075 |
| predicted_SO | 1.000 | 0.264 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 4.000 | 0.2000 | 0.2941 | 0.2667 | 0.2000 | 0.0000 | 0.0000 | 0.1333 | 0.2667 |
| last_10 | 0.20 | 10 | - | 31.000 | 8.000 | 2.000 | 0.000 | 1.000 | 2.000 | 1.000 | 3.000 | 8.000 | 0.2581 | 0.3235 | 0.4194 | 0.2581 | 0.0323 | 0.0645 | 0.0968 | 0.2581 |
| season | 0.60 | 39 | - | 120.000 | 35.000 | 6.000 | 0.000 | 4.000 | 17.000 | 9.000 | 7.000 | 28.000 | 0.2917 | 0.3307 | 0.4417 | 0.2917 | 0.0333 | 0.1417 | 0.0583 | 0.2333 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1760 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.2190 |
| predicted_AVG | 0.2636 |
| predicted_BB | 0.2580 |
| predicted_H | 0.8480 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0900 |
| predicted_OBP | 0.3203 |
| predicted_R | 0.2140 |
| predicted_RBI | 0.3360 |
| predicted_SLG | 0.4037 |
| predicted_SO | 0.7730 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1540 | 0.1760 | 0.1627 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.1900 | 3.2190 | 3.2014 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2636 | 0.2602 | model_form_blend |
| predicted_BB | 0.1790 | 0.2580 | 0.2101 | model_form_blend |
| predicted_H | 0.8200 | 0.8480 | 0.8310 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.1100 | 0.0900 | 0.1021 | model_form_blend |
| predicted_OBP | 0.3170 | 0.3203 | 0.3183 | model_form_blend |
| predicted_R | 0.2310 | 0.2140 | 0.2243 | model_form_blend |
| predicted_RBI | 0.3800 | 0.3360 | 0.3627 | model_form_blend |
| predicted_SLG | 0.4010 | 0.4037 | 0.4021 | model_form_blend |
| predicted_SO | 0.7180 | 0.7730 | 0.7397 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 94 |
| Season rows before report date | 94 |
| Report year | 2026 |
| Profile rows used | 39 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.292 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260614_NYY@TOR |
| game_type | full |
| mlbID | 682818 |
| playerID | 682818 |
| playerName | Yohendrick Pinango |
| pos | LF |
| started | True |
| startingPosition | RF |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-14 |
| sl_k_percent | 21.9 |
| sl_bb_percent | 6.3 |
| sl_woba | 0.342 |
| sl_xwoba | 0.326 |
| sl_xba | 0.282 |
| sl_xslg | 0.418 |
| sl_sweet_spot_percent | 34.8 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 45.7 |
| sl_exit_velocity_avg | 91.2 |
| sl_launch_angle_avg | 7.6 |
| sl_whiff_percent | 25.9 |
| sl_swing_percent | 50.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.192 | 0.000 | 0.000 | Hitting_2B | 0.233 | 0.000 | -0.233 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.330 | 3.000 | 4.000 | Hitting_AB | 4.040 | 3.000 | -1.040 | 0.000 |
| predicted_AVG | 0.228 | 0.000 | 0.250 | Hitting_AVG | 0.214 | 0.000 | -0.214 | 0.000 |
| predicted_BB | 0.481 | 1.000 | 1.000 | Hitting_BB | 0.432 | 0.000 | 0.568 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_H | 0.990 | 0.000 | 1.000 | Hitting_H | 0.864 | 0.000 | -0.864 | 0.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.142 | 0.000 | -0.142 | 0.000 |
| predicted_OBP | 0.341 | 0.250 | 0.400 | Hitting_OBP | 0.296 | 0.250 | -0.046 | 0.000 |
| predicted_R | 0.423 | 0.000 | 0.000 | Hitting_R | 0.420 | 0.000 | -0.420 | 0.000 |
| predicted_RBI | 0.560 | 0.000 | 1.000 | Hitting_RBI | 0.398 | 0.000 | -0.398 | 0.000 |
| predicted_SLG | 0.418 | 0.000 | 0.250 | Hitting_SLG | 0.377 | 0.000 | -0.377 | 0.000 |
| predicted_SO | 0.808 | 0.000 | 1.000 | Hitting_SO | 0.903 | 1.000 | -0.903 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.4810 -> 1.0000 (boost 0.5190, better) |
| Biggest Deboost | predicted_AB: 4.3300 -> 3.0000 (deboost -1.3300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 3 | 2 | 3 | 2 | predicted_BB: 0.4810 -> 0.5484 (boost 0.0674, better) | predicted_AB: 4.3300 -> 4.0485 (deboost -0.2815, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3461 -> 0.3253 (deboost -0.0208, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_BB: 0.5513 -> 1.0000 (boost 0.4487, better) | predicted_HR: 0.1924 -> 0.0000 (deboost -0.1924, worse) | AB rounded to 4 (raw=4.33), rates preserved: AVG=0.218 HR/AB=0.044 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=26.0, weight=0.186, BvP AVG=0.269) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4804 -> 0.0000 (deboost -0.4804, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3253 -> 0.4000 (boost 0.0747, better) | predicted_SLG: 0.4182 -> 0.2500 (deboost -0.1682, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 0 | 4 | 1 | 3 | - | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.4182 (boost 0.1682, better) | predicted_OBP: 0.4000 -> 0.3253 (deboost -0.0747, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "543807",
"player_name": "George Springer",
"position": "DH",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.192,
"predicted_3B": 0.0,
"predicted_AB": 4.33,
"predicted_AVG": 0.228,
"predicted_BB": 0.481,
"predicted_H": 0.99,
"predicted_HR": 0.19,
"predicted_OBP": 0.341,
"predicted_R": 0.423,
"predicted_RBI": 0.56,
"predicted_SLG": 0.418,
"predicted_SO": 0.808
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1695,
"predicted_3B": 0.0008,
"predicted_AB": 4.0485,
"predicted_AVG": 0.2315,
"predicted_BB": 0.5484,
"predicted_H": 0.9376,
"predicted_HBP": 0.091,
"predicted_HR": 0.1933,
"predicted_OBP": 0.3461,
"predicted_R": 0.4717,
"predicted_RBI": 0.5471,
"predicted_SLG": 0.4262,
"predicted_SO": 0.7623
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.192,
"after": 0.1695,
"delta": -0.0225,
"percent_delta": -0.1172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.33,
"after": 4.0485,
"delta": -0.2815,
"percent_delta": -0.065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2315,
"delta": 0.0035,
"percent_delta": 0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.481,
"after": 0.5484,
"delta": 0.0674,
"percent_delta": 0.1401,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.9376,
"delta": -0.0524,
"percent_delta": -0.0529,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.1933,
"delta": 0.0033,
"percent_delta": 0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3461,
"delta": 0.0051,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.423,
"after": 0.4717,
"delta": 0.0487,
"percent_delta": 0.1151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.5471,
"delta": -0.0129,
"percent_delta": -0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.4262,
"delta": 0.0082,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.808,
"after": 0.7623,
"delta": -0.0457,
"percent_delta": -0.0566,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 3,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.481,
"after": 0.5484,
"delta": 0.0674,
"percent_delta": 0.1401,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.33,
"after": 4.0485,
"delta": -0.2815,
"percent_delta": -0.065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 52
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1695,
"predicted_3B": 0.0008,
"predicted_AB": 4.0485,
"predicted_AVG": 0.2334,
"predicted_BB": 0.5513,
"predicted_H": 0.9449,
"predicted_HBP": 0.091,
"predicted_HR": 0.1924,
"predicted_OBP": 0.3253,
"predicted_R": 0.4804,
"predicted_RBI": 0.5572,
"predicted_SLG": 0.4182,
"predicted_SO": 0.7583
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1695,
"after": 0.1695,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0485,
"after": 4.0485,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2315,
"after": 0.2334,
"delta": 0.0019,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5484,
"after": 0.5513,
"delta": 0.0029,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9376,
"after": 0.9449,
"delta": 0.0073,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.091,
"after": 0.091,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1933,
"after": 0.1924,
"delta": -0.0009,
"percent_delta": -0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3461,
"after": 0.3253,
"delta": -0.0208,
"percent_delta": -0.0601,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4717,
"after": 0.4804,
"delta": 0.0087,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5471,
"after": 0.5572,
"delta": 0.0101,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4262,
"after": 0.4182,
"delta": -0.008,
"percent_delta": -0.0188,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7623,
"after": 0.7583,
"delta": -0.004,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3461,
"after": 0.3253,
"delta": -0.0208,
"percent_delta": -0.0601,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.33), rates preserved: AVG=0.218 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1695,
"after": 0.0,
"delta": -0.1695,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0485,
"after": 4.0,
"delta": -0.0485,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5513,
"after": 1.0,
"delta": 0.4487,
"percent_delta": 0.8139,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9449,
"after": 1.0,
"delta": 0.0551,
"percent_delta": 0.0583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.091,
"after": 0.0,
"delta": -0.091,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5572,
"after": 1.0,
"delta": 0.4428,
"percent_delta": 0.7947,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7583,
"after": 1.0,
"delta": 0.2417,
"percent_delta": 0.3187,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5513,
"after": 1.0,
"delta": 0.4487,
"percent_delta": 0.8139,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=26.0, weight=0.186, BvP AVG=0.269)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8143,
"bvp": 0.1857
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4804,
"after": 0.0,
"delta": -0.4804,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4804,
"after": 0.0,
"delta": -0.4804,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2334,
"after": 0.25,
"delta": 0.0166,
"percent_delta": 0.0711,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3253,
"after": 0.4,
"delta": 0.0747,
"percent_delta": 0.2296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4182,
"after": 0.25,
"delta": -0.1682,
"percent_delta": -0.4022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3253,
"after": 0.4,
"delta": 0.0747,
"percent_delta": 0.2296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4182,
"after": 0.25,
"delta": -0.1682,
"percent_delta": -0.4022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2334,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3253,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4182,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2334,
"delta": -0.0166,
"percent_delta": -0.0664,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3253,
"delta": -0.0747,
"percent_delta": -0.1868,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4182,
"delta": 0.1682,
"percent_delta": 0.6728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4182,
"delta": 0.1682,
"percent_delta": 0.6728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3253,
"delta": -0.0747,
"percent_delta": -0.1868,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.192,
"after": 0.0,
"delta": -0.192,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.33,
"after": 3.0,
"delta": -1.33,
"percent_delta": -0.3072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2334,
"delta": 0.0054,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.481,
"after": 1.0,
"delta": 0.519,
"percent_delta": 1.079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3253,
"delta": -0.0157,
"percent_delta": -0.046,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.423,
"after": 0.0,
"delta": -0.423,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.0,
"delta": -0.56,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.4182,
"delta": 0.0002,
"percent_delta": 0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.808,
"after": 0.0,
"delta": -0.808,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.481,
"after": 1.0,
"delta": 0.519,
"percent_delta": 1.079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.33,
"after": 3.0,
"delta": -1.33,
"percent_delta": -0.3072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.330 | - |
| predicted_AVG | 0.228 | - |
| predicted_BB | 0.481 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.341 | - |
| predicted_R | 0.423 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.418 | - |
| predicted_SO | 0.808 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.170 | -0.022 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.048 | -0.282 |
| predicted_AVG | 0.232 | 0.004 |
| predicted_BB | 0.548 | 0.067 |
| predicted_H | 0.938 | -0.052 |
| predicted_HBP | 0.091 | - |
| predicted_HR | 0.193 | 0.003 |
| predicted_OBP | 0.346 | 0.005 |
| predicted_R | 0.472 | 0.049 |
| predicted_RBI | 0.547 | -0.013 |
| predicted_SLG | 0.426 | 0.008 |
| predicted_SO | 0.762 | -0.046 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.170 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.048 | 0.000 |
| predicted_AVG | 0.233 | 0.002 |
| predicted_BB | 0.551 | 0.003 |
| predicted_H | 0.945 | 0.007 |
| predicted_HBP | 0.091 | 0.000 |
| predicted_HR | 0.192 | -0.001 |
| predicted_OBP | 0.325 | -0.021 |
| predicted_R | 0.480 | 0.009 |
| predicted_RBI | 0.557 | 0.010 |
| predicted_SLG | 0.418 | -0.008 |
| predicted_SO | 0.758 | -0.004 |
AB rounded to 4 (raw=4.33), rates preserved: AVG=0.218 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=26.0, weight=0.186, BvP AVG=0.269)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.170 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.048 |
| predicted_AVG | 0.250 | 0.017 |
| predicted_BB | 1.000 | 0.449 |
| predicted_H | 1.000 | 0.055 |
| predicted_HR | 0.000 | -0.192 |
| predicted_OBP | 0.400 | 0.075 |
| predicted_R | 0.000 | -0.480 |
| predicted_RBI | 1.000 | 0.443 |
| predicted_SLG | 0.250 | -0.168 |
| predicted_SO | 1.000 | 0.242 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 5.000 | 0.000 | 0.000 | 2.000 | 5.000 | 4.000 | 5.000 | 2.000 | 0.2941 | 0.4583 | 0.6471 | 0.2941 | 0.1177 | 0.2941 | 0.2941 | 0.1177 |
| last_10 | 0.20 | 10 | - | 33.000 | 8.000 | 1.000 | 0.000 | 2.000 | 5.000 | 6.000 | 9.000 | 6.000 | 0.2424 | 0.4091 | 0.4545 | 0.2424 | 0.0606 | 0.1515 | 0.2727 | 0.1818 |
| season | 0.60 | 52 | - | 198.000 | 42.000 | 10.000 | 0.000 | 7.000 | 19.000 | 22.000 | 25.000 | 42.000 | 0.2121 | 0.3084 | 0.3687 | 0.2121 | 0.0353 | 0.0960 | 0.1263 | 0.2121 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1380 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.6530 |
| predicted_AVG | 0.2364 |
| predicted_BB | 0.6430 |
| predicted_H | 0.8640 |
| predicted_HBP | 0.0910 |
| predicted_HR | 0.1980 |
| predicted_OBP | 0.3533 |
| predicted_R | 0.5400 |
| predicted_RBI | 0.5290 |
| predicted_SLG | 0.4378 |
| predicted_SO | 0.6980 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1920 | 0.1380 | 0.1695 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 4.3300 | 3.6530 | 4.0485 | model_form_blend |
| predicted_AVG | 0.2280 | 0.2364 | 0.2315 | model_form_blend |
| predicted_BB | 0.4810 | 0.6430 | 0.5484 | model_form_blend |
| predicted_H | 0.9900 | 0.8640 | 0.9376 | model_form_blend |
| predicted_HBP | - | 0.0910 | 0.0910 | form_only |
| predicted_HR | 0.1900 | 0.1980 | 0.1933 | model_form_blend |
| predicted_OBP | 0.3410 | 0.3533 | 0.3461 | model_form_blend |
| predicted_R | 0.4230 | 0.5400 | 0.4717 | model_form_blend |
| predicted_RBI | 0.5600 | 0.5290 | 0.5471 | model_form_blend |
| predicted_SLG | 0.4180 | 0.4378 | 0.4262 | model_form_blend |
| predicted_SO | 0.8080 | 0.6980 | 0.7623 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 176 |
| Season rows before report date | 176 |
| Report year | 2026 |
| Profile rows used | 52 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.212 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 2 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 543807 |
| playerID | 543807 |
| playerName | George Springer |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 18.3 |
| sl_bb_percent | 10.9 |
| sl_woba | 0.304 |
| sl_xwoba | 0.312 |
| sl_xba | 0.224 |
| sl_xslg | 0.381 |
| sl_sweet_spot_percent | 30.6 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 36.9 |
| sl_exit_velocity_avg | 88.1 |
| sl_launch_angle_avg | 14.6 |
| sl_whiff_percent | 24.0 |
| sl_swing_percent | 48.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.209 | 1.000 | 0.000 | Hitting_2B | 0.198 | 1.000 | 0.802 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.955 | 4.000 | 3.000 | Hitting_AB | 3.358 | 3.000 | 0.642 | 1.000 |
| predicted_AVG | 0.256 | 0.250 | 0.333 | Hitting_AVG | 0.279 | 0.333 | -0.029 | -0.083 |
| predicted_BB | 0.134 | 0.000 | 0.000 | Hitting_BB | 0.155 | 0.000 | -0.155 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_H | 0.330 | 1.000 | 1.000 | Hitting_H | 0.936 | 1.000 | 0.064 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.139 | 0.000 | -0.139 | 0.000 |
| predicted_OBP | 0.304 | 0.250 | 0.333 | Hitting_OBP | 0.321 | 0.333 | -0.071 | -0.083 |
| predicted_R | 0.328 | 0.000 | 0.000 | Hitting_R | 0.401 | 0.000 | -0.401 | 0.000 |
| predicted_RBI | 0.180 | 0.000 | 0.000 | Hitting_RBI | 0.567 | 0.000 | -0.567 | 0.000 |
| predicted_SLG | 0.452 | 0.500 | 0.333 | Hitting_SLG | 0.462 | 0.667 | 0.038 | -0.167 |
| predicted_SO | 0.672 | 2.000 | 1.000 | Hitting_SO | 0.775 | 0.000 | 1.225 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 0.6720 -> 2.0000 (boost 1.3280, worse) |
| Biggest Deboost | predicted_R: 0.3280 -> 0.0000 (deboost -0.3280, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 5 | 0 | predicted_H: 0.3300 -> 0.5528 (boost 0.2228, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4688 -> 0.3496 (deboost -0.1192, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.5571 -> 1.0000 (boost 0.4429, better) | predicted_RBI: 0.2513 -> 0.0000 (deboost -0.2513, worse) | AB rounded to 3 (raw=3.00), rates preserved: AVG=0.186 HR/AB=0.029 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3299 -> 0.0000 (deboost -0.3299, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1857 -> 0.3330 (boost 0.1473, better) | predicted_SLG: 0.3496 -> 0.3330 (deboost -0.0166, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 3 | 0 | 2 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3496 (boost 0.0166, better) | predicted_AVG: 0.3330 -> 0.1857 (deboost -0.1473, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "660821",
"player_name": "Jesús Sánchez",
"position": "RF",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.209,
"predicted_3B": 0.0,
"predicted_AB": 2.955,
"predicted_AVG": 0.256,
"predicted_BB": 0.134,
"predicted_H": 0.33,
"predicted_HR": 0.06,
"predicted_OBP": 0.304,
"predicted_R": 0.328,
"predicted_RBI": 0.18,
"predicted_SLG": 0.452,
"predicted_SO": 0.672
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2305,
"predicted_3B": 0.0004,
"predicted_AB": 3.0006,
"predicted_AVG": 0.2673,
"predicted_BB": 0.1671,
"predicted_H": 0.5528,
"predicted_HBP": 0.036,
"predicted_HR": 0.0873,
"predicted_OBP": 0.3165,
"predicted_R": 0.3239,
"predicted_RBI": 0.2467,
"predicted_SLG": 0.4688,
"predicted_SO": 0.6865
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.209,
"after": 0.2305,
"delta": 0.0215,
"percent_delta": 0.1029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.955,
"after": 3.0006,
"delta": 0.0456,
"percent_delta": 0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2673,
"delta": 0.0113,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.134,
"after": 0.1671,
"delta": 0.0331,
"percent_delta": 0.247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.33,
"after": 0.5528,
"delta": 0.2228,
"percent_delta": 0.6752,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0873,
"delta": 0.0273,
"percent_delta": 0.455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3165,
"delta": 0.0125,
"percent_delta": 0.0411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.328,
"after": 0.3239,
"delta": -0.0041,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.2467,
"delta": 0.0667,
"percent_delta": 0.3706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4688,
"delta": 0.0168,
"percent_delta": 0.0372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.672,
"after": 0.6865,
"delta": 0.0145,
"percent_delta": 0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 5,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.33,
"after": 0.5528,
"delta": 0.2228,
"percent_delta": 0.6752,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2305,
"predicted_3B": 0.0004,
"predicted_AB": 3.0006,
"predicted_AVG": 0.1857,
"predicted_BB": 0.168,
"predicted_H": 0.5571,
"predicted_HBP": 0.036,
"predicted_HR": 0.0869,
"predicted_OBP": 0.2288,
"predicted_R": 0.3299,
"predicted_RBI": 0.2513,
"predicted_SLG": 0.3496,
"predicted_SO": 0.6829
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2305,
"after": 0.2305,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0006,
"after": 3.0006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2673,
"after": 0.1857,
"delta": -0.0816,
"percent_delta": -0.3053,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1671,
"after": 0.168,
"delta": 0.0009,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5528,
"after": 0.5571,
"delta": 0.0043,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.036,
"after": 0.036,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0873,
"after": 0.0869,
"delta": -0.0004,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3165,
"after": 0.2288,
"delta": -0.0877,
"percent_delta": -0.2771,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3239,
"after": 0.3299,
"delta": 0.006,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2467,
"after": 0.2513,
"delta": 0.0046,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4688,
"after": 0.3496,
"delta": -0.1192,
"percent_delta": -0.2543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6865,
"after": 0.6829,
"delta": -0.0036,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4688,
"after": 0.3496,
"delta": -0.1192,
"percent_delta": -0.2543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.00), rates preserved: AVG=0.186 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2305,
"after": 0.0,
"delta": -0.2305,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0006,
"after": 3.0,
"delta": -0.0006,
"percent_delta": -0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.168,
"after": 0.0,
"delta": -0.168,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5571,
"after": 1.0,
"delta": 0.4429,
"percent_delta": 0.795,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.036,
"after": 0.0,
"delta": -0.036,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0869,
"after": 0.0,
"delta": -0.0869,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2513,
"after": 0.0,
"delta": -0.2513,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6829,
"after": 1.0,
"delta": 0.3171,
"percent_delta": 0.4643,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5571,
"after": 1.0,
"delta": 0.4429,
"percent_delta": 0.795,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2513,
"after": 0.0,
"delta": -0.2513,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.9158,
"bvp": 0.0842
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3299,
"after": 0.0,
"delta": -0.3299,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3299,
"after": 0.0,
"delta": -0.3299,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1857,
"after": 0.333,
"delta": 0.1473,
"percent_delta": 0.7932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2288,
"after": 0.333,
"delta": 0.1042,
"percent_delta": 0.4554,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3496,
"after": 0.333,
"delta": -0.0166,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1857,
"after": 0.333,
"delta": 0.1473,
"percent_delta": 0.7932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3496,
"after": 0.333,
"delta": -0.0166,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1857,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2288,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3496,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1857,
"delta": -0.1473,
"percent_delta": -0.4424,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2288,
"delta": -0.1042,
"percent_delta": -0.3128,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3496,
"delta": 0.0166,
"percent_delta": 0.0499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3496,
"delta": 0.0166,
"percent_delta": 0.0499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1857,
"delta": -0.1473,
"percent_delta": -0.4424,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.209,
"after": 1.0,
"delta": 0.791,
"percent_delta": 3.7847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.955,
"after": 4.0,
"delta": 1.045,
"percent_delta": 0.3536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.1857,
"delta": -0.0703,
"percent_delta": -0.2746,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.134,
"after": 0.0,
"delta": -0.134,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.33,
"after": 1.0,
"delta": 0.67,
"percent_delta": 2.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.2288,
"delta": -0.0752,
"percent_delta": -0.2474,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.328,
"after": 0.0,
"delta": -0.328,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.3496,
"delta": -0.1024,
"percent_delta": -0.2265,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.672,
"after": 2.0,
"delta": 1.328,
"percent_delta": 1.9762,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.672,
"after": 2.0,
"delta": 1.328,
"percent_delta": 1.9762,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.328,
"after": 0.0,
"delta": -0.328,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.955 | - |
| predicted_AVG | 0.256 | - |
| predicted_BB | 0.134 | - |
| predicted_H | 0.330 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.328 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.452 | - |
| predicted_SO | 0.672 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.231 | 0.022 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.001 | 0.046 |
| predicted_AVG | 0.267 | 0.011 |
| predicted_BB | 0.167 | 0.033 |
| predicted_H | 0.553 | 0.223 |
| predicted_HBP | 0.036 | - |
| predicted_HR | 0.087 | 0.027 |
| predicted_OBP | 0.317 | 0.013 |
| predicted_R | 0.324 | -0.004 |
| predicted_RBI | 0.247 | 0.067 |
| predicted_SLG | 0.469 | 0.017 |
| predicted_SO | 0.686 | 0.014 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.231 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.001 | 0.000 |
| predicted_AVG | 0.186 | -0.082 |
| predicted_BB | 0.168 | 0.001 |
| predicted_H | 0.557 | 0.004 |
| predicted_HBP | 0.036 | 0.000 |
| predicted_HR | 0.087 | -0.000 |
| predicted_OBP | 0.229 | -0.088 |
| predicted_R | 0.330 | 0.006 |
| predicted_RBI | 0.251 | 0.005 |
| predicted_SLG | 0.350 | -0.119 |
| predicted_SO | 0.683 | -0.004 |
AB rounded to 3 (raw=3.00), rates preserved: AVG=0.186 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.125)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.231 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 3.000 | -0.001 |
| predicted_AVG | 0.333 | 0.147 |
| predicted_BB | 0.000 | -0.168 |
| predicted_H | 1.000 | 0.443 |
| predicted_HR | 0.000 | -0.087 |
| predicted_OBP | 0.333 | 0.104 |
| predicted_R | 0.000 | -0.330 |
| predicted_RBI | 0.000 | -0.251 |
| predicted_SLG | 0.333 | -0.017 |
| predicted_SO | 1.000 | 0.317 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 4.000 | 2.000 | 0.000 | 1.000 | 1.000 | 1.000 | 2.000 | 4.000 | 0.2857 | 0.3750 | 0.6429 | 0.2857 | 0.0714 | 0.0714 | 0.1429 | 0.2857 |
| last_10 | 0.20 | 10 | - | 31.000 | 9.000 | 3.000 | 0.000 | 1.000 | 1.000 | 3.000 | 2.000 | 6.000 | 0.2903 | 0.3333 | 0.4839 | 0.2903 | 0.0323 | 0.0323 | 0.0645 | 0.1935 |
| season | 0.60 | 67 | - | 198.000 | 57.000 | 14.000 | 0.000 | 7.000 | 29.000 | 22.000 | 9.000 | 45.000 | 0.2879 | 0.3256 | 0.4646 | 0.2879 | 0.0353 | 0.1465 | 0.0454 | 0.2273 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2610 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.0650 |
| predicted_AVG | 0.2834 |
| predicted_BB | 0.2140 |
| predicted_H | 0.8680 |
| predicted_HBP | 0.0360 |
| predicted_HR | 0.1260 |
| predicted_OBP | 0.3341 |
| predicted_R | 0.3180 |
| predicted_RBI | 0.3410 |
| predicted_SLG | 0.4926 |
| predicted_SO | 0.7070 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2090 | 0.2610 | 0.2305 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.9550 | 3.0650 | 3.0006 | model_form_blend |
| predicted_AVG | 0.2560 | 0.2834 | 0.2673 | model_form_blend |
| predicted_BB | 0.1340 | 0.2140 | 0.1671 | model_form_blend |
| predicted_H | 0.3300 | 0.8680 | 0.5528 | model_form_blend |
| predicted_HBP | - | 0.0360 | 0.0360 | form_only |
| predicted_HR | 0.0600 | 0.1260 | 0.0873 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3341 | 0.3165 | model_form_blend |
| predicted_R | 0.3280 | 0.3180 | 0.3239 | model_form_blend |
| predicted_RBI | 0.1800 | 0.3410 | 0.2467 | model_form_blend |
| predicted_SLG | 0.4520 | 0.4926 | 0.4688 | model_form_blend |
| predicted_SO | 0.6720 | 0.7070 | 0.6865 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 187 |
| Season rows before report date | 187 |
| Report year | 2026 |
| Profile rows used | 67 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.288 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 660821 |
| playerID | 660821 |
| playerName | Jesús Sánchez |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 4.2 |
| sl_woba | 0.34 |
| sl_xwoba | 0.344 |
| sl_xba | 0.285 |
| sl_xslg | 0.477 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 11.5 |
| sl_hard_hit_percent | 46.5 |
| sl_exit_velocity_avg | 91.0 |
| sl_launch_angle_avg | 11.4 |
| sl_whiff_percent | 24.8 |
| sl_swing_percent | 55.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.179 | 0.000 | 0.000 | Hitting_2B | 0.253 | 0.000 | -0.253 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.179 | 4.000 | 3.000 | Hitting_AB | 3.402 | 1.000 | 0.598 | 3.000 |
| predicted_AVG | 0.276 | 0.000 | 0.333 | Hitting_AVG | 0.324 | 1.000 | -0.324 | -1.000 |
| predicted_BB | 0.154 | 0.000 | 0.000 | Hitting_BB | 0.103 | 0.000 | -0.103 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.057 | 0.000 | -0.057 | 0.000 |
| predicted_H | 0.880 | 0.000 | 1.000 | Hitting_H | 1.103 | 1.000 | -1.103 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_OBP | 0.340 | 0.000 | 0.333 | Hitting_OBP | 0.369 | 1.000 | -0.369 | -1.000 |
| predicted_R | 0.333 | 0.000 | 0.000 | Hitting_R | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 0.000 | Hitting_RBI | 0.437 | 0.000 | -0.437 | 0.000 |
| predicted_SLG | 0.387 | 0.000 | 0.333 | Hitting_SLG | 0.409 | 1.000 | -0.409 | -1.000 |
| predicted_SO | 0.564 | 1.000 | 1.000 | Hitting_SO | 0.575 | 0.000 | 0.425 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.1790 -> 4.0000 (boost 0.8210, better) |
| Biggest Deboost | predicted_H: 0.8800 -> 0.0000 (deboost -0.8800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 5 | 0 | 4 | 1 | predicted_AB: 3.1790 -> 3.2766 (boost 0.0976, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3452 -> 0.3261 (deboost -0.0191, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 0 | 6 | predicted_SO: 0.6286 -> 1.0000 (boost 0.3714, worse) | predicted_RBI: 0.3448 -> 0.0000 (deboost -0.3448, worse) | AB rounded to 3 (raw=3.28), rates preserved: AVG=0.291 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3339 -> 0.0000 (deboost -0.3339, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2912 -> 0.3330 (boost 0.0418, better) | predicted_SLG: 0.3912 -> 0.3330 (deboost -0.0582, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3912 (boost 0.0582, better) | predicted_AVG: 0.3330 -> 0.2912 (deboost -0.0418, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664770",
"player_name": "Nathan Lukes",
"position": "CF",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.179,
"predicted_3B": 0.0,
"predicted_AB": 3.179,
"predicted_AVG": 0.276,
"predicted_BB": 0.154,
"predicted_H": 0.88,
"predicted_HR": 0.06,
"predicted_OBP": 0.34,
"predicted_R": 0.333,
"predicted_RBI": 0.35,
"predicted_SLG": 0.387,
"predicted_SO": 0.564
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1766,
"predicted_3B": 0.0008,
"predicted_AB": 3.2766,
"predicted_AVG": 0.2879,
"predicted_BB": 0.1691,
"predicted_H": 0.9467,
"predicted_HBP": 0.06,
"predicted_HR": 0.0501,
"predicted_OBP": 0.3452,
"predicted_R": 0.3278,
"predicted_RBI": 0.3385,
"predicted_SLG": 0.3875,
"predicted_SO": 0.6319
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.179,
"after": 0.1766,
"delta": -0.0024,
"percent_delta": -0.0134,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.179,
"after": 3.2766,
"delta": 0.0976,
"percent_delta": 0.0307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.2879,
"delta": 0.0119,
"percent_delta": 0.0431,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.154,
"after": 0.1691,
"delta": 0.0151,
"percent_delta": 0.0981,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.9467,
"delta": 0.0667,
"percent_delta": 0.0758,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0501,
"delta": -0.0099,
"percent_delta": -0.165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.34,
"after": 0.3452,
"delta": 0.0052,
"percent_delta": 0.0153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.3278,
"delta": -0.0052,
"percent_delta": -0.0156,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.3385,
"delta": -0.0115,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.387,
"after": 0.3875,
"delta": 0.0005,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.564,
"after": 0.6319,
"delta": 0.0679,
"percent_delta": 0.1204,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 5,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.179,
"after": 3.2766,
"delta": 0.0976,
"percent_delta": 0.0307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 39
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1766,
"predicted_3B": 0.0008,
"predicted_AB": 3.2766,
"predicted_AVG": 0.2912,
"predicted_BB": 0.17,
"predicted_H": 0.9541,
"predicted_HBP": 0.06,
"predicted_HR": 0.0499,
"predicted_OBP": 0.3261,
"predicted_R": 0.3339,
"predicted_RBI": 0.3448,
"predicted_SLG": 0.3912,
"predicted_SO": 0.6286
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1766,
"after": 0.1766,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2766,
"after": 3.2766,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2879,
"after": 0.2912,
"delta": 0.0033,
"percent_delta": 0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1691,
"after": 0.17,
"delta": 0.0009,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9467,
"after": 0.9541,
"delta": 0.0074,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.06,
"after": 0.06,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0501,
"after": 0.0499,
"delta": -0.0002,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3452,
"after": 0.3261,
"delta": -0.0191,
"percent_delta": -0.0553,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3278,
"after": 0.3339,
"delta": 0.0061,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3385,
"after": 0.3448,
"delta": 0.0063,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3875,
"after": 0.3912,
"delta": 0.0037,
"percent_delta": 0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6319,
"after": 0.6286,
"delta": -0.0033,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3452,
"after": 0.3261,
"delta": -0.0191,
"percent_delta": -0.0553,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.28), rates preserved: AVG=0.291 HR/AB=0.015",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1766,
"after": 0.0,
"delta": -0.1766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.2766,
"after": 3.0,
"delta": -0.2766,
"percent_delta": -0.0844,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9541,
"after": 1.0,
"delta": 0.0459,
"percent_delta": 0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0499,
"after": 0.0,
"delta": -0.0499,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3448,
"after": 0.0,
"delta": -0.3448,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6286,
"after": 1.0,
"delta": 0.3714,
"percent_delta": 0.5908,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6286,
"after": 1.0,
"delta": 0.3714,
"percent_delta": 0.5908,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3448,
"after": 0.0,
"delta": -0.3448,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3339,
"after": 0.0,
"delta": -0.3339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3339,
"after": 0.0,
"delta": -0.3339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2912,
"after": 0.333,
"delta": 0.0418,
"percent_delta": 0.1435,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3261,
"after": 0.333,
"delta": 0.0069,
"percent_delta": 0.0212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3912,
"after": 0.333,
"delta": -0.0582,
"percent_delta": -0.1488,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2912,
"after": 0.333,
"delta": 0.0418,
"percent_delta": 0.1435,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3912,
"after": 0.333,
"delta": -0.0582,
"percent_delta": -0.1488,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2912,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3261,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3912,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2912,
"delta": -0.0418,
"percent_delta": -0.1256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3261,
"delta": -0.0069,
"percent_delta": -0.0206,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3912,
"delta": 0.0582,
"percent_delta": 0.1748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3912,
"delta": 0.0582,
"percent_delta": 0.1748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2912,
"delta": -0.0418,
"percent_delta": -0.1256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.179,
"after": 0.0,
"delta": -0.179,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.179,
"after": 4.0,
"delta": 0.821,
"percent_delta": 0.2583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.276,
"after": 0.2912,
"delta": 0.0152,
"percent_delta": 0.0551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.154,
"after": 0.0,
"delta": -0.154,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.34,
"after": 0.3261,
"delta": -0.0139,
"percent_delta": -0.0409,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.333,
"after": 0.0,
"delta": -0.333,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.387,
"after": 0.3912,
"delta": 0.0042,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.564,
"after": 1.0,
"delta": 0.436,
"percent_delta": 0.773,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.179,
"after": 4.0,
"delta": 0.821,
"percent_delta": 0.2583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.179 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.179 | - |
| predicted_AVG | 0.276 | - |
| predicted_BB | 0.154 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.340 | - |
| predicted_R | 0.333 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.387 | - |
| predicted_SO | 0.564 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.177 | -0.002 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.277 | 0.098 |
| predicted_AVG | 0.288 | 0.012 |
| predicted_BB | 0.169 | 0.015 |
| predicted_H | 0.947 | 0.067 |
| predicted_HBP | 0.060 | - |
| predicted_HR | 0.050 | -0.010 |
| predicted_OBP | 0.345 | 0.005 |
| predicted_R | 0.328 | -0.005 |
| predicted_RBI | 0.339 | -0.011 |
| predicted_SLG | 0.388 | 0.001 |
| predicted_SO | 0.632 | 0.068 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.177 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.277 | 0.000 |
| predicted_AVG | 0.291 | 0.003 |
| predicted_BB | 0.170 | 0.001 |
| predicted_H | 0.954 | 0.007 |
| predicted_HBP | 0.060 | 0.000 |
| predicted_HR | 0.050 | -0.000 |
| predicted_OBP | 0.326 | -0.019 |
| predicted_R | 0.334 | 0.006 |
| predicted_RBI | 0.345 | 0.006 |
| predicted_SLG | 0.391 | 0.004 |
| predicted_SO | 0.629 | -0.003 |
AB rounded to 3 (raw=3.28), rates preserved: AVG=0.291 HR/AB=0.015
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.177 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.277 |
| predicted_AVG | 0.333 | 0.042 |
| predicted_BB | 0.000 | -0.170 |
| predicted_H | 1.000 | 0.046 |
| predicted_HR | 0.000 | -0.050 |
| predicted_OBP | 0.333 | 0.007 |
| predicted_R | 0.000 | -0.334 |
| predicted_RBI | 0.000 | -0.345 |
| predicted_SLG | 0.333 | -0.058 |
| predicted_SO | 1.000 | 0.371 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 5.000 | 0.3333 | 0.3684 | 0.3889 | 0.3333 | 0.0000 | 0.0556 | 0.0556 | 0.2778 |
| last_10 | 0.20 | 10 | - | 35.000 | 11.000 | 1.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 9.000 | 0.3143 | 0.3514 | 0.3429 | 0.3143 | 0.0000 | 0.0571 | 0.0571 | 0.2571 |
| season | 0.60 | 39 | - | 124.000 | 39.000 | 7.000 | 0.000 | 1.000 | 13.000 | 13.000 | 6.000 | 22.000 | 0.3145 | 0.3630 | 0.3952 | 0.3145 | 0.0081 | 0.1048 | 0.0484 | 0.1774 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1730 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.4250 |
| predicted_AVG | 0.3059 |
| predicted_BB | 0.1920 |
| predicted_H | 1.0480 |
| predicted_HBP | 0.0600 |
| predicted_HR | 0.0350 |
| predicted_OBP | 0.3530 |
| predicted_R | 0.3200 |
| predicted_RBI | 0.3210 |
| predicted_SLG | 0.3883 |
| predicted_SO | 0.7350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1790 | 0.1730 | 0.1766 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.1790 | 3.4250 | 3.2766 | model_form_blend |
| predicted_AVG | 0.2760 | 0.3059 | 0.2879 | model_form_blend |
| predicted_BB | 0.1540 | 0.1920 | 0.1691 | model_form_blend |
| predicted_H | 0.8800 | 1.0480 | 0.9467 | model_form_blend |
| predicted_HBP | - | 0.0600 | 0.0600 | form_only |
| predicted_HR | 0.0600 | 0.0350 | 0.0501 | model_form_blend |
| predicted_OBP | 0.3400 | 0.3530 | 0.3452 | model_form_blend |
| predicted_R | 0.3330 | 0.3200 | 0.3278 | model_form_blend |
| predicted_RBI | 0.3500 | 0.3210 | 0.3385 | model_form_blend |
| predicted_SLG | 0.3870 | 0.3883 | 0.3875 | model_form_blend |
| predicted_SO | 0.5640 | 0.7350 | 0.6319 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 87 |
| Season rows before report date | 87 |
| Report year | 2026 |
| Profile rows used | 39 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.315 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_TOR@BOS |
| game_type | short |
| mlbID | 664770 |
| playerID | 664770 |
| playerName | Nathan Lukes |
| pos | RF |
| started | False |
| startingPosition | RF |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 16.2 |
| sl_bb_percent | 4.4 |
| sl_woba | 0.339 |
| sl_xwoba | 0.304 |
| sl_xba | 0.279 |
| sl_xslg | 0.349 |
| sl_sweet_spot_percent | 32.7 |
| sl_barrel_batted_rate | 1.0 |
| sl_hard_hit_percent | 28.8 |
| sl_exit_velocity_avg | 85.9 |
| sl_launch_angle_avg | 11.3 |
| sl_whiff_percent | 18.5 |
| sl_swing_percent | 51.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.274 | 0.000 | 0.000 | Hitting_2B | 0.324 | 0.000 | -0.324 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.110 | 4.000 | 4.000 | Hitting_AB | 4.013 | 4.000 | -0.013 | 0.000 |
| predicted_AVG | 0.240 | 0.000 | 0.250 | Hitting_AVG | 0.302 | 0.000 | -0.302 | 0.000 |
| predicted_BB | 0.123 | 0.000 | 0.000 | Hitting_BB | 0.134 | 0.000 | -0.134 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.990 | 0.000 | 1.000 | Hitting_H | 1.210 | 0.000 | -1.210 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.101 | 0.000 | -0.101 | 0.000 |
| predicted_OBP | 0.288 | 0.000 | 0.250 | Hitting_OBP | 0.323 | 0.000 | -0.323 | 0.000 |
| predicted_R | 0.466 | 0.000 | 0.000 | Hitting_R | 0.441 | 0.000 | -0.441 | 0.000 |
| predicted_RBI | 0.420 | 0.000 | 0.000 | Hitting_RBI | 0.403 | 0.000 | -0.403 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_SLG | 0.392 | 0.000 | 0.250 | Hitting_SLG | 0.460 | 0.000 | -0.460 | 0.000 |
| predicted_SO | 0.438 | 2.000 | 0.000 | Hitting_SO | 0.366 | 2.000 | 1.634 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.4380 -> 2.0000 (boost 1.5620, worse) |
| Biggest Deboost | predicted_H: 0.9900 -> 0.0000 (deboost -0.9900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 2 | 1 | predicted_SO: 0.4380 -> 0.5154 (boost 0.0774, worse) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.2844 -> 0.2728 (deboost -0.0116, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 0 | 6 | 1 | 5 | - | predicted_SO: 0.5127 -> 0.0000 (deboost -0.5127, better) | AB rounded to 4 (raw=4.11), rates preserved: AVG=0.249 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4974 -> 0.0000 (deboost -0.4974, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3966 -> 0.2500 (deboost -0.1466, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 0 | 2 | predicted_SO: 0.0000 -> 2.0000 (boost 2.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3966 (boost 0.1466, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676391",
"player_name": "Ernie Clement",
"position": "2B",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.274,
"predicted_3B": 0.014,
"predicted_AB": 4.11,
"predicted_AVG": 0.24,
"predicted_BB": 0.123,
"predicted_H": 0.99,
"predicted_HR": 0.1,
"predicted_OBP": 0.288,
"predicted_R": 0.466,
"predicted_RBI": 0.42,
"predicted_SLG": 0.392,
"predicted_SO": 0.438
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2524,
"predicted_3B": 0.0195,
"predicted_AB": 4.0745,
"predicted_AVG": 0.2488,
"predicted_BB": 0.12,
"predicted_H": 1.0158,
"predicted_HBP": 0.003,
"predicted_HR": 0.1008,
"predicted_OBP": 0.2844,
"predicted_R": 0.4884,
"predicted_RBI": 0.4132,
"predicted_SLG": 0.3979,
"predicted_SO": 0.5154
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.274,
"after": 0.2524,
"delta": -0.0216,
"percent_delta": -0.0788,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0195,
"delta": 0.0055,
"percent_delta": 0.3929,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.11,
"after": 4.0745,
"delta": -0.0355,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2488,
"delta": 0.0088,
"percent_delta": 0.0367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.123,
"after": 0.12,
"delta": -0.003,
"percent_delta": -0.0244,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.0158,
"delta": 0.0258,
"percent_delta": 0.0261,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1008,
"delta": 0.0008,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2844,
"delta": -0.0036,
"percent_delta": -0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.466,
"after": 0.4884,
"delta": 0.0224,
"percent_delta": 0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.4132,
"delta": -0.0068,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3979,
"delta": 0.0059,
"percent_delta": 0.0151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.438,
"after": 0.5154,
"delta": 0.0774,
"percent_delta": 0.1767,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.438,
"after": 0.5154,
"delta": 0.0774,
"percent_delta": 0.1767,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 73
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2524,
"predicted_3B": 0.0195,
"predicted_AB": 4.0745,
"predicted_AVG": 0.2513,
"predicted_BB": 0.1206,
"predicted_H": 1.0237,
"predicted_HBP": 0.003,
"predicted_HR": 0.1003,
"predicted_OBP": 0.2728,
"predicted_R": 0.4974,
"predicted_RBI": 0.4208,
"predicted_SLG": 0.3966,
"predicted_SO": 0.5127
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2524,
"after": 0.2524,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0195,
"after": 0.0195,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0745,
"after": 4.0745,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2488,
"after": 0.2513,
"delta": 0.0025,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.12,
"after": 0.1206,
"delta": 0.0006,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0158,
"after": 1.0237,
"delta": 0.0079,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.003,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1008,
"after": 0.1003,
"delta": -0.0005,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2844,
"after": 0.2728,
"delta": -0.0116,
"percent_delta": -0.0408,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4884,
"after": 0.4974,
"delta": 0.009,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4132,
"after": 0.4208,
"delta": 0.0076,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3979,
"after": 0.3966,
"delta": -0.0013,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.5154,
"after": 0.5127,
"delta": -0.0027,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2844,
"after": 0.2728,
"delta": -0.0116,
"percent_delta": -0.0408,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.11), rates preserved: AVG=0.249 HR/AB=0.024",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2524,
"after": 0.0,
"delta": -0.2524,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0195,
"after": 0.0,
"delta": -0.0195,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0745,
"after": 4.0,
"delta": -0.0745,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1206,
"after": 0.0,
"delta": -0.1206,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0237,
"after": 1.0,
"delta": -0.0237,
"percent_delta": -0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.0,
"delta": -0.003,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1003,
"after": 0.0,
"delta": -0.1003,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4208,
"after": 0.0,
"delta": -0.4208,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5127,
"after": 0.0,
"delta": -0.5127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 0,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.5127,
"after": 0.0,
"delta": -0.5127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4974,
"after": 0.0,
"delta": -0.4974,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4974,
"after": 0.0,
"delta": -0.4974,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2513,
"after": 0.25,
"delta": -0.0013,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2728,
"after": 0.25,
"delta": -0.0228,
"percent_delta": -0.0836,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3966,
"after": 0.25,
"delta": -0.1466,
"percent_delta": -0.3696,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3966,
"after": 0.25,
"delta": -0.1466,
"percent_delta": -0.3696,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2513,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2728,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3966,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2513,
"delta": 0.0013,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2728,
"delta": 0.0228,
"percent_delta": 0.0911,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3966,
"delta": 0.1466,
"percent_delta": 0.5865,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3966,
"delta": 0.1466,
"percent_delta": 0.5865,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.274,
"after": 0.0,
"delta": -0.274,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.11,
"after": 4.0,
"delta": -0.11,
"percent_delta": -0.0268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2513,
"delta": 0.0113,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.123,
"after": 0.0,
"delta": -0.123,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2728,
"delta": -0.0152,
"percent_delta": -0.0528,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.466,
"after": 0.0,
"delta": -0.466,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3966,
"delta": 0.0046,
"percent_delta": 0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.438,
"after": 2.0,
"delta": 1.562,
"percent_delta": 3.5662,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.438,
"after": 2.0,
"delta": 1.562,
"percent_delta": 3.5662,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.274 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.110 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.123 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.466 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.392 | - |
| predicted_SO | 0.438 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.252 | -0.022 |
| predicted_3B | 0.019 | 0.005 |
| predicted_AB | 4.074 | -0.036 |
| predicted_AVG | 0.249 | 0.009 |
| predicted_BB | 0.120 | -0.003 |
| predicted_H | 1.016 | 0.026 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.101 | 0.001 |
| predicted_OBP | 0.284 | -0.004 |
| predicted_R | 0.488 | 0.022 |
| predicted_RBI | 0.413 | -0.007 |
| predicted_SLG | 0.398 | 0.006 |
| predicted_SO | 0.515 | 0.077 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.252 | 0.000 |
| predicted_3B | 0.019 | 0.000 |
| predicted_AB | 4.074 | 0.000 |
| predicted_AVG | 0.251 | 0.003 |
| predicted_BB | 0.121 | 0.001 |
| predicted_H | 1.024 | 0.008 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.100 | -0.001 |
| predicted_OBP | 0.273 | -0.012 |
| predicted_R | 0.497 | 0.009 |
| predicted_RBI | 0.421 | 0.008 |
| predicted_SLG | 0.397 | -0.001 |
| predicted_SO | 0.513 | -0.003 |
AB rounded to 4 (raw=4.11), rates preserved: AVG=0.249 HR/AB=0.024
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.252 |
| predicted_3B | 0.000 | -0.019 |
| predicted_AB | 4.000 | -0.074 |
| predicted_AVG | 0.250 | -0.001 |
| predicted_BB | 0.000 | -0.121 |
| predicted_H | 1.000 | -0.024 |
| predicted_HR | 0.000 | -0.100 |
| predicted_OBP | 0.250 | -0.023 |
| predicted_R | 0.000 | -0.497 |
| predicted_RBI | 0.000 | -0.421 |
| predicted_SLG | 0.250 | -0.147 |
| predicted_SO | 0.000 | -0.513 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 4.000 | 1.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.000 | 4.000 | 0.1818 | 0.1818 | 0.2273 | 0.1818 | 0.0000 | 0.0454 | 0.0000 | 0.1818 |
| last_10 | 0.20 | 10 | - | 41.000 | 10.000 | 1.000 | 1.000 | 2.000 | 6.000 | 8.000 | 1.000 | 9.000 | 0.2439 | 0.2558 | 0.4634 | 0.2439 | 0.0488 | 0.1463 | 0.0244 | 0.2195 |
| season | 0.60 | 73 | - | 285.000 | 84.000 | 20.000 | 1.000 | 7.000 | 28.000 | 34.000 | 9.000 | 32.000 | 0.2947 | 0.3142 | 0.4456 | 0.2947 | 0.0246 | 0.0983 | 0.0316 | 0.1123 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2230 |
| predicted_3B | 0.0270 |
| predicted_AB | 4.0260 |
| predicted_AVG | 0.2609 |
| predicted_BB | 0.1160 |
| predicted_H | 1.0510 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.1020 |
| predicted_OBP | 0.2795 |
| predicted_R | 0.5190 |
| predicted_RBI | 0.4040 |
| predicted_SLG | 0.4059 |
| predicted_SO | 0.6210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2740 | 0.2230 | 0.2524 | model_form_blend |
| predicted_3B | 0.0140 | 0.0270 | 0.0195 | model_form_blend |
| predicted_AB | 4.1100 | 4.0260 | 4.0745 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2609 | 0.2488 | model_form_blend |
| predicted_BB | 0.1230 | 0.1160 | 0.1200 | model_form_blend |
| predicted_H | 0.9900 | 1.0510 | 1.0158 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1000 | 0.1020 | 0.1008 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2795 | 0.2844 | model_form_blend |
| predicted_R | 0.4660 | 0.5190 | 0.4884 | model_form_blend |
| predicted_RBI | 0.4200 | 0.4040 | 0.4132 | model_form_blend |
| predicted_SLG | 0.3920 | 0.4059 | 0.3979 | model_form_blend |
| predicted_SO | 0.4380 | 0.6210 | 0.5154 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 238 |
| Season rows before report date | 238 |
| Report year | 2026 |
| Profile rows used | 73 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.295 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 676391 |
| playerID | 676391 |
| playerName | Ernie Clement |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 10.8 |
| sl_bb_percent | 3.0 |
| sl_woba | 0.33 |
| sl_xwoba | 0.267 |
| sl_xba | 0.25 |
| sl_xslg | 0.341 |
| sl_sweet_spot_percent | 32.5 |
| sl_barrel_batted_rate | 2.8 |
| sl_hard_hit_percent | 25.1 |
| sl_exit_velocity_avg | 85.4 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 16.2 |
| sl_swing_percent | 58.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.127 | 0.000 | 0.000 | Hitting_2B | 0.116 | 0.000 | -0.116 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.676 | 3.000 | 4.000 | Hitting_AB | 3.714 | 4.000 | -0.714 | -1.000 |
| predicted_AVG | 0.234 | 0.333 | 0.250 | Hitting_AVG | 0.223 | 0.000 | 0.110 | 0.333 |
| predicted_BB | 0.408 | 0.000 | 0.000 | Hitting_BB | 0.440 | 0.000 | -0.440 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.830 | 1.000 | 1.000 | Hitting_H | 0.830 | 0.000 | 0.170 | 1.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.216 | 0.000 | -0.216 | 0.000 |
| predicted_OBP | 0.315 | 0.333 | 0.250 | Hitting_OBP | 0.312 | 0.000 | 0.021 | 0.333 |
| predicted_R | 0.493 | 0.000 | 1.000 | Hitting_R | 0.506 | 0.000 | -0.506 | 0.000 |
| predicted_RBI | 0.580 | 0.000 | 1.000 | Hitting_RBI | 0.585 | 0.000 | -0.585 | 0.000 |
| predicted_SLG | 0.443 | 0.333 | 0.250 | Hitting_SLG | 0.429 | 0.000 | -0.096 | 0.333 |
| predicted_SO | 1.352 | 0.000 | 1.000 | Hitting_SO | 1.328 | 2.000 | -1.328 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_H: 0.8300 -> 1.0000 (boost 0.1700, better) |
| Biggest Deboost | predicted_SO: 1.3520 -> 0.0000 (deboost -1.3520, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.4430 -> 0.4570 (boost 0.0140, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4570 -> 0.4464 (deboost -0.0106, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_RBI: 0.6191 -> 1.0000 (boost 0.3809, better) | predicted_BB: 0.4216 -> 0.0000 (deboost -0.4216, worse) | AB rounded to 4 (raw=3.68), rates preserved: AVG=0.229 HR/AB=0.059 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5043 -> 1.0000 (boost 0.4957, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2304 -> 0.2500 (boost 0.0196, better) | predicted_SLG: 0.4464 -> 0.2500 (deboost -0.1964, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 0 | 4 | 1 | 3 | - | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4464 (boost 0.1964, better) | predicted_AVG: 0.2500 -> 0.2304 (deboost -0.0196, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672960",
"player_name": "Kazuma Okamoto",
"position": "3B",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.127,
"predicted_3B": 0.0,
"predicted_AB": 3.676,
"predicted_AVG": 0.234,
"predicted_BB": 0.408,
"predicted_H": 0.83,
"predicted_HR": 0.2,
"predicted_OBP": 0.315,
"predicted_R": 0.493,
"predicted_RBI": 0.58,
"predicted_SLG": 0.443,
"predicted_SO": 1.352
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.141,
"predicted_3B": 0.0004,
"predicted_AB": 3.6485,
"predicted_AVG": 0.2334,
"predicted_BB": 0.4194,
"predicted_H": 0.8342,
"predicted_HBP": 0.026,
"predicted_HR": 0.2165,
"predicted_OBP": 0.3158,
"predicted_R": 0.4951,
"predicted_RBI": 0.6079,
"predicted_SLG": 0.457,
"predicted_SO": 1.3262
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.127,
"after": 0.141,
"delta": 0.014,
"percent_delta": 0.1102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0004,
"delta": 0.0004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.676,
"after": 3.6485,
"delta": -0.0275,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2334,
"delta": -0.0006,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 0.4194,
"delta": 0.0114,
"percent_delta": 0.0279,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 0.8342,
"delta": 0.0042,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.2165,
"delta": 0.0165,
"percent_delta": 0.0825,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3158,
"delta": 0.0008,
"percent_delta": 0.0025,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.4951,
"delta": 0.0021,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.6079,
"delta": 0.0279,
"percent_delta": 0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.457,
"delta": 0.014,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.352,
"after": 1.3262,
"delta": -0.0258,
"percent_delta": -0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.457,
"delta": 0.014,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 71
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.141,
"predicted_3B": 0.0004,
"predicted_AB": 3.6485,
"predicted_AVG": 0.2304,
"predicted_BB": 0.4216,
"predicted_H": 0.8407,
"predicted_HBP": 0.026,
"predicted_HR": 0.2154,
"predicted_OBP": 0.3101,
"predicted_R": 0.5043,
"predicted_RBI": 0.6191,
"predicted_SLG": 0.4464,
"predicted_SO": 1.3193
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.141,
"after": 0.141,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6485,
"after": 3.6485,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2334,
"after": 0.2304,
"delta": -0.003,
"percent_delta": -0.0129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4194,
"after": 0.4216,
"delta": 0.0022,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8342,
"after": 0.8407,
"delta": 0.0065,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.026,
"after": 0.026,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2165,
"after": 0.2154,
"delta": -0.0011,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3158,
"after": 0.3101,
"delta": -0.0057,
"percent_delta": -0.018,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4951,
"after": 0.5043,
"delta": 0.0092,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6079,
"after": 0.6191,
"delta": 0.0112,
"percent_delta": 0.0184,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.457,
"after": 0.4464,
"delta": -0.0106,
"percent_delta": -0.0232,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3262,
"after": 1.3193,
"delta": -0.0069,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.457,
"after": 0.4464,
"delta": -0.0106,
"percent_delta": -0.0232,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.68), rates preserved: AVG=0.229 HR/AB=0.059",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.141,
"after": 0.0,
"delta": -0.141,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0,
"delta": -0.0004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6485,
"after": 4.0,
"delta": 0.3515,
"percent_delta": 0.0963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4216,
"after": 0.0,
"delta": -0.4216,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8407,
"after": 1.0,
"delta": 0.1593,
"percent_delta": 0.1895,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2154,
"after": 0.0,
"delta": -0.2154,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6191,
"after": 1.0,
"delta": 0.3809,
"percent_delta": 0.6152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3193,
"after": 1.0,
"delta": -0.3193,
"percent_delta": -0.242,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6191,
"after": 1.0,
"delta": 0.3809,
"percent_delta": 0.6152,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4216,
"after": 0.0,
"delta": -0.4216,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5043,
"after": 1.0,
"delta": 0.4957,
"percent_delta": 0.9829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5043,
"after": 1.0,
"delta": 0.4957,
"percent_delta": 0.9829,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2304,
"after": 0.25,
"delta": 0.0196,
"percent_delta": 0.0851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3101,
"after": 0.25,
"delta": -0.0601,
"percent_delta": -0.1938,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4464,
"after": 0.25,
"delta": -0.1964,
"percent_delta": -0.44,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2304,
"after": 0.25,
"delta": 0.0196,
"percent_delta": 0.0851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4464,
"after": 0.25,
"delta": -0.1964,
"percent_delta": -0.44,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2304,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3101,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4464,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2304,
"delta": -0.0196,
"percent_delta": -0.0783,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3101,
"delta": 0.0601,
"percent_delta": 0.2406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4464,
"delta": 0.1964,
"percent_delta": 0.7857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4464,
"delta": 0.1964,
"percent_delta": 0.7857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2304,
"delta": -0.0196,
"percent_delta": -0.0783,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.127,
"after": 0.0,
"delta": -0.127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.676,
"after": 3.0,
"delta": -0.676,
"percent_delta": -0.1839,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2304,
"delta": -0.0036,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.408,
"after": 0.0,
"delta": -0.408,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 1.0,
"delta": 0.17,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3101,
"delta": -0.0049,
"percent_delta": -0.0156,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.0,
"delta": -0.58,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.4464,
"delta": 0.0034,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.352,
"after": 0.0,
"delta": -1.352,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.83,
"after": 1.0,
"delta": 0.17,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.352,
"after": 0.0,
"delta": -1.352,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.127 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.676 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.408 | - |
| predicted_H | 0.830 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.493 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.443 | - |
| predicted_SO | 1.352 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | 0.014 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.648 | -0.028 |
| predicted_AVG | 0.233 | -0.001 |
| predicted_BB | 0.419 | 0.011 |
| predicted_H | 0.834 | 0.004 |
| predicted_HBP | 0.026 | - |
| predicted_HR | 0.216 | 0.016 |
| predicted_OBP | 0.316 | 0.001 |
| predicted_R | 0.495 | 0.002 |
| predicted_RBI | 0.608 | 0.028 |
| predicted_SLG | 0.457 | 0.014 |
| predicted_SO | 1.326 | -0.026 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.141 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.648 | 0.000 |
| predicted_AVG | 0.230 | -0.003 |
| predicted_BB | 0.422 | 0.002 |
| predicted_H | 0.841 | 0.006 |
| predicted_HBP | 0.026 | 0.000 |
| predicted_HR | 0.215 | -0.001 |
| predicted_OBP | 0.310 | -0.006 |
| predicted_R | 0.504 | 0.009 |
| predicted_RBI | 0.619 | 0.011 |
| predicted_SLG | 0.446 | -0.011 |
| predicted_SO | 1.319 | -0.007 |
AB rounded to 4 (raw=3.68), rates preserved: AVG=0.229 HR/AB=0.059
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.141 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.352 |
| predicted_AVG | 0.250 | 0.020 |
| predicted_BB | 0.000 | -0.422 |
| predicted_H | 1.000 | 0.159 |
| predicted_HR | 0.000 | -0.215 |
| predicted_OBP | 0.250 | -0.060 |
| predicted_R | 1.000 | 0.496 |
| predicted_RBI | 1.000 | 0.381 |
| predicted_SLG | 0.250 | -0.196 |
| predicted_SO | 1.000 | -0.319 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 0.000 | 2.000 | 4.000 | 3.000 | 3.000 | 6.000 | 0.2353 | 0.3500 | 0.6471 | 0.2353 | 0.1177 | 0.2353 | 0.1765 | 0.3529 |
| last_10 | 0.20 | 10 | - | 35.000 | 8.000 | 2.000 | 0.000 | 2.000 | 7.000 | 4.000 | 4.000 | 14.000 | 0.2286 | 0.3000 | 0.4571 | 0.2286 | 0.0571 | 0.2000 | 0.1143 | 0.4000 |
| season | 0.60 | 71 | - | 261.000 | 60.000 | 9.000 | 0.000 | 15.000 | 42.000 | 35.000 | 29.000 | 96.000 | 0.2299 | 0.3119 | 0.4368 | 0.2299 | 0.0575 | 0.1609 | 0.1111 | 0.3678 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1600 |
| predicted_3B | 0.0010 |
| predicted_AB | 3.6110 |
| predicted_AVG | 0.2325 |
| predicted_BB | 0.4350 |
| predicted_H | 0.8400 |
| predicted_HBP | 0.0260 |
| predicted_HR | 0.2390 |
| predicted_OBP | 0.3168 |
| predicted_R | 0.4980 |
| predicted_RBI | 0.6460 |
| predicted_SLG | 0.4762 |
| predicted_SO | 1.2910 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1270 | 0.1600 | 0.1410 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6760 | 3.6110 | 3.6485 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2325 | 0.2334 | model_form_blend |
| predicted_BB | 0.4080 | 0.4350 | 0.4194 | model_form_blend |
| predicted_H | 0.8300 | 0.8400 | 0.8342 | model_form_blend |
| predicted_HBP | - | 0.0260 | 0.0260 | form_only |
| predicted_HR | 0.2000 | 0.2390 | 0.2165 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3168 | 0.3158 | model_form_blend |
| predicted_R | 0.4930 | 0.4980 | 0.4951 | model_form_blend |
| predicted_RBI | 0.5800 | 0.6460 | 0.6079 | model_form_blend |
| predicted_SLG | 0.4430 | 0.4762 | 0.4570 | model_form_blend |
| predicted_SO | 1.3520 | 1.2910 | 1.3262 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 241 |
| Season rows before report date | 241 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 672960 |
| playerID | 672960 |
| playerName | Kazuma Okamoto |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 32.5 |
| sl_bb_percent | 9.8 |
| sl_woba | 0.329 |
| sl_xwoba | 0.323 |
| sl_xba | 0.219 |
| sl_xslg | 0.433 |
| sl_sweet_spot_percent | 34.1 |
| sl_barrel_batted_rate | 14.4 |
| sl_hard_hit_percent | 49.1 |
| sl_exit_velocity_avg | 91.8 |
| sl_launch_angle_avg | 17.2 |
| sl_whiff_percent | 34.4 |
| sl_swing_percent | 44.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.114 | 0.000 | 0.000 | Hitting_2B | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.955 | 3.000 | 3.000 | Hitting_AB | 3.050 | 3.000 | -0.050 | 0.000 |
| predicted_AVG | 0.264 | 0.333 | 0.333 | Hitting_AVG | 0.270 | 0.333 | 0.063 | 0.000 |
| predicted_BB | 0.386 | 0.000 | 0.000 | Hitting_BB | 0.458 | 1.000 | -0.458 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.680 | 1.000 | 1.000 | Hitting_H | 0.825 | 1.000 | 0.175 | 0.000 |
| predicted_HR | 0.140 | 1.000 | 0.000 | Hitting_HR | 0.167 | 0.000 | 0.833 | 1.000 |
| predicted_OBP | 0.326 | 0.333 | 0.333 | Hitting_OBP | 0.365 | 0.500 | -0.032 | -0.167 |
| predicted_R | 0.386 | 1.000 | 0.000 | Hitting_R | 0.467 | 0.000 | 0.533 | 1.000 |
| predicted_RBI | 0.450 | 1.000 | 0.000 | Hitting_RBI | 0.433 | 0.000 | 0.567 | 1.000 |
| predicted_SLG | 0.444 | 1.333 | 0.333 | Hitting_SLG | 0.467 | 0.333 | 0.866 | 1.000 |
| predicted_SO | 0.773 | 1.000 | 1.000 | Hitting_SO | 0.808 | 2.000 | 0.192 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 4 |
| Better Metrics | 4 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_HR: 0.1400 -> 1.0000 (boost 0.8600, better) |
| Biggest Deboost | predicted_BB: 0.3860 -> 0.0000 (deboost -0.3860, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 3 | 0 | predicted_AB: 2.9550 -> 3.0492 (boost 0.0942, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2613 -> 0.2433 (deboost -0.0180, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_H: 0.7418 -> 1.0000 (boost 0.2582, better) | predicted_RBI: 0.5016 -> 0.0000 (deboost -0.5016, worse) | AB rounded to 3 (raw=3.05), rates preserved: AVG=0.243 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3895 -> 0.0000 (deboost -0.3895, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2433 -> 0.3330 (boost 0.0897, better) | predicted_SLG: 0.4376 -> 0.3330 (deboost -0.1046, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4376 (boost 0.1046, better) | predicted_AVG: 0.3330 -> 0.2433 (deboost -0.0897, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678218",
"player_name": "Brandon Valenzuela",
"position": "C",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.114,
"predicted_3B": 0.0,
"predicted_AB": 2.955,
"predicted_AVG": 0.264,
"predicted_BB": 0.386,
"predicted_H": 0.68,
"predicted_HR": 0.14,
"predicted_OBP": 0.326,
"predicted_R": 0.386,
"predicted_RBI": 0.45,
"predicted_SLG": 0.444,
"predicted_SO": 0.773
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1168,
"predicted_3B": 0.0008,
"predicted_AB": 3.0492,
"predicted_AVG": 0.2613,
"predicted_BB": 0.3776,
"predicted_H": 0.7361,
"predicted_HBP": 0.005,
"predicted_HR": 0.1588,
"predicted_OBP": 0.3285,
"predicted_R": 0.3824,
"predicted_RBI": 0.4925,
"predicted_SLG": 0.4553,
"predicted_SO": 0.8039
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.114,
"after": 0.1168,
"delta": 0.0028,
"percent_delta": 0.0246,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.955,
"after": 3.0492,
"delta": 0.0942,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2613,
"delta": -0.0027,
"percent_delta": -0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.386,
"after": 0.3776,
"delta": -0.0084,
"percent_delta": -0.0218,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.68,
"after": 0.7361,
"delta": 0.0561,
"percent_delta": 0.0825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1588,
"delta": 0.0188,
"percent_delta": 0.1343,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3285,
"delta": 0.0025,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.386,
"after": 0.3824,
"delta": -0.0036,
"percent_delta": -0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.4925,
"delta": 0.0425,
"percent_delta": 0.0944,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.444,
"after": 0.4553,
"delta": 0.0113,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.773,
"after": 0.8039,
"delta": 0.0309,
"percent_delta": 0.04,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.955,
"after": 3.0492,
"delta": 0.0942,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 44
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1168,
"predicted_3B": 0.0008,
"predicted_AB": 3.0492,
"predicted_AVG": 0.2433,
"predicted_BB": 0.3796,
"predicted_H": 0.7418,
"predicted_HBP": 0.005,
"predicted_HR": 0.158,
"predicted_OBP": 0.3271,
"predicted_R": 0.3895,
"predicted_RBI": 0.5016,
"predicted_SLG": 0.4376,
"predicted_SO": 0.7997
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1168,
"after": 0.1168,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0492,
"after": 3.0492,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2613,
"after": 0.2433,
"delta": -0.018,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3776,
"after": 0.3796,
"delta": 0.002,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7361,
"after": 0.7418,
"delta": 0.0057,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.005,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1588,
"after": 0.158,
"delta": -0.0008,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3285,
"after": 0.3271,
"delta": -0.0014,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3824,
"after": 0.3895,
"delta": 0.0071,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4925,
"after": 0.5016,
"delta": 0.0091,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4553,
"after": 0.4376,
"delta": -0.0177,
"percent_delta": -0.0389,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8039,
"after": 0.7997,
"delta": -0.0042,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2613,
"after": 0.2433,
"delta": -0.018,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.05), rates preserved: AVG=0.243 HR/AB=0.052",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1168,
"after": 0.0,
"delta": -0.1168,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0492,
"after": 3.0,
"delta": -0.0492,
"percent_delta": -0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3796,
"after": 0.0,
"delta": -0.3796,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7418,
"after": 1.0,
"delta": 0.2582,
"percent_delta": 0.3481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.158,
"after": 0.0,
"delta": -0.158,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5016,
"after": 0.0,
"delta": -0.5016,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7997,
"after": 1.0,
"delta": 0.2003,
"percent_delta": 0.2505,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7418,
"after": 1.0,
"delta": 0.2582,
"percent_delta": 0.3481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.5016,
"after": 0.0,
"delta": -0.5016,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3895,
"after": 0.0,
"delta": -0.3895,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3895,
"after": 0.0,
"delta": -0.3895,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2433,
"after": 0.333,
"delta": 0.0897,
"percent_delta": 0.3687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3271,
"after": 0.333,
"delta": 0.0059,
"percent_delta": 0.018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4376,
"after": 0.333,
"delta": -0.1046,
"percent_delta": -0.239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2433,
"after": 0.333,
"delta": 0.0897,
"percent_delta": 0.3687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4376,
"after": 0.333,
"delta": -0.1046,
"percent_delta": -0.239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2433,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3271,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4376,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2433,
"delta": -0.0897,
"percent_delta": -0.2694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3271,
"delta": -0.0059,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4376,
"delta": 0.1046,
"percent_delta": 0.3141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4376,
"delta": 0.1046,
"percent_delta": 0.3141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2433,
"delta": -0.0897,
"percent_delta": -0.2694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.114,
"after": 0.0,
"delta": -0.114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.955,
"after": 3.0,
"delta": 0.045,
"percent_delta": 0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2433,
"delta": -0.0207,
"percent_delta": -0.0784,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.386,
"after": 0.0,
"delta": -0.386,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.68,
"after": 1.0,
"delta": 0.32,
"percent_delta": 0.4706,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 1.0,
"delta": 0.86,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3271,
"delta": 0.0011,
"percent_delta": 0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.386,
"after": 1.0,
"delta": 0.614,
"percent_delta": 1.5907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 1.0,
"delta": 0.55,
"percent_delta": 1.2222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.444,
"after": 0.4376,
"delta": -0.0064,
"percent_delta": -0.0144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.773,
"after": 1.0,
"delta": 0.227,
"percent_delta": 0.2937,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 5,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.14,
"after": 1.0,
"delta": 0.86,
"percent_delta": 6.1429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.386,
"after": 0.0,
"delta": -0.386,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.114 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.955 | - |
| predicted_AVG | 0.264 | - |
| predicted_BB | 0.386 | - |
| predicted_H | 0.680 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.386 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.444 | - |
| predicted_SO | 0.773 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | 0.003 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.049 | 0.094 |
| predicted_AVG | 0.261 | -0.003 |
| predicted_BB | 0.378 | -0.008 |
| predicted_H | 0.736 | 0.056 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.159 | 0.019 |
| predicted_OBP | 0.329 | 0.003 |
| predicted_R | 0.382 | -0.004 |
| predicted_RBI | 0.492 | 0.042 |
| predicted_SLG | 0.455 | 0.011 |
| predicted_SO | 0.804 | 0.031 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.049 | 0.000 |
| predicted_AVG | 0.243 | -0.018 |
| predicted_BB | 0.380 | 0.002 |
| predicted_H | 0.742 | 0.006 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.158 | -0.001 |
| predicted_OBP | 0.327 | -0.001 |
| predicted_R | 0.390 | 0.007 |
| predicted_RBI | 0.502 | 0.009 |
| predicted_SLG | 0.438 | -0.018 |
| predicted_SO | 0.800 | -0.004 |
AB rounded to 3 (raw=3.05), rates preserved: AVG=0.243 HR/AB=0.052
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.117 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.049 |
| predicted_AVG | 0.333 | 0.090 |
| predicted_BB | 0.000 | -0.380 |
| predicted_H | 1.000 | 0.258 |
| predicted_HR | 0.000 | -0.158 |
| predicted_OBP | 0.333 | 0.006 |
| predicted_R | 0.000 | -0.390 |
| predicted_RBI | 0.000 | -0.502 |
| predicted_SLG | 0.333 | -0.105 |
| predicted_SO | 1.000 | 0.200 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 3.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 4.000 | 0.000 | 0.000 | 1.000 | 4.000 | 1.000 | 2.000 | 5.000 | 0.2500 | 0.3333 | 0.4375 | 0.2500 | 0.0625 | 0.2500 | 0.1250 | 0.3125 |
| last_10 | 0.20 | 10 | - | 32.000 | 9.000 | 2.000 | 0.000 | 3.000 | 8.000 | 4.000 | 3.000 | 9.000 | 0.2812 | 0.3333 | 0.6250 | 0.2812 | 0.0938 | 0.2500 | 0.0938 | 0.2812 |
| season | 0.60 | 44 | - | 130.000 | 33.000 | 5.000 | 0.000 | 7.000 | 18.000 | 17.000 | 17.000 | 34.000 | 0.2538 | 0.3378 | 0.4538 | 0.2539 | 0.0539 | 0.1385 | 0.1308 | 0.2615 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1210 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.1900 |
| predicted_AVG | 0.2572 |
| predicted_BB | 0.3650 |
| predicted_H | 0.8200 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.1870 |
| predicted_OBP | 0.3322 |
| predicted_R | 0.3770 |
| predicted_RBI | 0.5560 |
| predicted_SLG | 0.4721 |
| predicted_SO | 0.8500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1140 | 0.1210 | 0.1168 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9550 | 3.1900 | 3.0492 | model_form_blend |
| predicted_AVG | 0.2640 | 0.2572 | 0.2613 | model_form_blend |
| predicted_BB | 0.3860 | 0.3650 | 0.3776 | model_form_blend |
| predicted_H | 0.6800 | 0.8200 | 0.7361 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.1400 | 0.1870 | 0.1588 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3322 | 0.3285 | model_form_blend |
| predicted_R | 0.3860 | 0.3770 | 0.3824 | model_form_blend |
| predicted_RBI | 0.4500 | 0.5560 | 0.4925 | model_form_blend |
| predicted_SLG | 0.4440 | 0.4721 | 0.4553 | model_form_blend |
| predicted_SO | 0.7730 | 0.8500 | 0.8039 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 120 |
| Season rows before report date | 120 |
| Report year | 2026 |
| Profile rows used | 44 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.254 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260613_NYY@TOR |
| game_type | full |
| mlbID | 678218 |
| playerID | 678218 |
| playerName | Brandon Valenzuela |
| pos | C |
| started | True |
| startingPosition | C |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-13 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.347 |
| sl_xwoba | 0.35 |
| sl_xba | 0.265 |
| sl_xslg | 0.448 |
| sl_sweet_spot_percent | 41.8 |
| sl_barrel_batted_rate | 9.2 |
| sl_hard_hit_percent | 36.7 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 16.0 |
| sl_whiff_percent | 25.8 |
| sl_swing_percent | 50.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.145 | 0.000 | 0.000 | Hitting_2B | 0.137 | 0.000 | -0.137 | 0.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 3.377 | 3.000 | 3.000 | Hitting_AB | 3.555 | 4.000 | -0.555 | -1.000 |
| predicted_AVG | 0.257 | 0.000 | 0.333 | Hitting_AVG | 0.232 | 0.500 | -0.232 | -0.500 |
| predicted_BB | 0.116 | 0.000 | 0.000 | Hitting_BB | 0.104 | 0.000 | -0.104 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 0.780 | 0.000 | 1.000 | Hitting_H | 0.825 | 2.000 | -0.825 | -2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.123 | 0.000 | -0.123 | 0.000 |
| predicted_OBP | 0.317 | 0.000 | 0.333 | Hitting_OBP | 0.267 | 0.500 | -0.267 | -0.500 |
| predicted_R | 0.290 | 0.000 | 0.000 | Hitting_R | 0.294 | 2.000 | -0.294 | -2.000 |
| predicted_RBI | 0.400 | 0.000 | 0.000 | Hitting_RBI | 0.545 | 1.000 | -0.545 | -1.000 |
| predicted_SLG | 0.408 | 0.000 | 0.333 | Hitting_SLG | 0.385 | 0.500 | -0.385 | -0.500 |
| predicted_SO | 0.725 | 1.000 | 1.000 | Hitting_SO | 0.668 | 1.000 | 0.332 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 8 |
| Better Metrics | 0 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.7250 -> 1.0000 (boost 0.2750, worse) |
| Biggest Deboost | predicted_H: 0.7800 -> 0.0000 (deboost -0.7800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 4 | 0 | 4 | 0 | predicted_R: 0.2900 -> 0.3758 (boost 0.0858, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3184 -> 0.2750 (deboost -0.0434, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 0.7604 -> 1.0000 (boost 0.2396, worse) | predicted_RBI: 0.4271 -> 0.0000 (deboost -0.4271, worse) | AB rounded to 3 (raw=3.40), rates preserved: AVG=0.252 HR/AB=0.032 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=20.0, weight=0.160, BvP AVG=0.250) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3828 -> 0.0000 (deboost -0.3828, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2524 -> 0.3330 (boost 0.0806, better) | predicted_SLG: 0.4030 -> 0.3330 (deboost -0.0700, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 1 | 0 | 1 | 0 | 1 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4030 (boost 0.0700, better) | predicted_AVG: 0.3330 -> 0.2524 (deboost -0.0806, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665926",
"player_name": "Andrés Giménez",
"position": "SS",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.145,
"predicted_3B": 0.014,
"predicted_AB": 3.377,
"predicted_AVG": 0.257,
"predicted_BB": 0.116,
"predicted_H": 0.78,
"predicted_HR": 0.1,
"predicted_OBP": 0.317,
"predicted_R": 0.29,
"predicted_RBI": 0.4,
"predicted_SLG": 0.408,
"predicted_SO": 0.725
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1626,
"predicted_3B": 0.0119,
"predicted_AB": 3.4021,
"predicted_AVG": 0.2654,
"predicted_BB": 0.1055,
"predicted_H": 0.852,
"predicted_HBP": 0.131,
"predicted_HR": 0.1092,
"predicted_OBP": 0.3184,
"predicted_R": 0.3758,
"predicted_RBI": 0.4193,
"predicted_SLG": 0.4229,
"predicted_SO": 0.7644
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.145,
"after": 0.1626,
"delta": 0.0176,
"percent_delta": 0.1214,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.377,
"after": 3.4021,
"delta": 0.0251,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2654,
"delta": 0.0084,
"percent_delta": 0.0327,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.116,
"after": 0.1055,
"delta": -0.0105,
"percent_delta": -0.0905,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.852,
"delta": 0.072,
"percent_delta": 0.0923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1092,
"delta": 0.0092,
"percent_delta": 0.092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3184,
"delta": 0.0014,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.29,
"after": 0.3758,
"delta": 0.0858,
"percent_delta": 0.2959,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.4193,
"delta": 0.0193,
"percent_delta": 0.0482,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.4229,
"delta": 0.0149,
"percent_delta": 0.0365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.725,
"after": 0.7644,
"delta": 0.0394,
"percent_delta": 0.0543,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.29,
"after": 0.3758,
"delta": 0.0858,
"percent_delta": 0.2959,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1626,
"predicted_3B": 0.0119,
"predicted_AB": 3.4021,
"predicted_AVG": 0.2524,
"predicted_BB": 0.106,
"predicted_H": 0.8586,
"predicted_HBP": 0.131,
"predicted_HR": 0.1087,
"predicted_OBP": 0.275,
"predicted_R": 0.3828,
"predicted_RBI": 0.4271,
"predicted_SLG": 0.403,
"predicted_SO": 0.7604
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1626,
"after": 0.1626,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4021,
"after": 3.4021,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2654,
"after": 0.2524,
"delta": -0.013,
"percent_delta": -0.049,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1055,
"after": 0.106,
"delta": 0.0005,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.852,
"after": 0.8586,
"delta": 0.0066,
"percent_delta": 0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.131,
"after": 0.131,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1092,
"after": 0.1087,
"delta": -0.0005,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3184,
"after": 0.275,
"delta": -0.0434,
"percent_delta": -0.1363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3758,
"after": 0.3828,
"delta": 0.007,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4193,
"after": 0.4271,
"delta": 0.0078,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4229,
"after": 0.403,
"delta": -0.0199,
"percent_delta": -0.0471,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7644,
"after": 0.7604,
"delta": -0.004,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3184,
"after": 0.275,
"delta": -0.0434,
"percent_delta": -0.1363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.40), rates preserved: AVG=0.252 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1626,
"after": 0.0,
"delta": -0.1626,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4021,
"after": 3.0,
"delta": -0.4021,
"percent_delta": -0.1182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.106,
"after": 0.0,
"delta": -0.106,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8586,
"after": 1.0,
"delta": 0.1414,
"percent_delta": 0.1647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.131,
"after": 0.0,
"delta": -0.131,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1087,
"after": 0.0,
"delta": -0.1087,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4271,
"after": 0.0,
"delta": -0.4271,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7604,
"after": 1.0,
"delta": 0.2396,
"percent_delta": 0.3151,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7604,
"after": 1.0,
"delta": 0.2396,
"percent_delta": 0.3151,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4271,
"after": 0.0,
"delta": -0.4271,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=20.0, weight=0.160, BvP AVG=0.250)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.84,
"bvp": 0.16
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3828,
"after": 0.0,
"delta": -0.3828,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3828,
"after": 0.0,
"delta": -0.3828,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2524,
"after": 0.333,
"delta": 0.0806,
"percent_delta": 0.3193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.275,
"after": 0.333,
"delta": 0.058,
"percent_delta": 0.2109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.333,
"delta": -0.07,
"percent_delta": -0.1737,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2524,
"after": 0.333,
"delta": 0.0806,
"percent_delta": 0.3193,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.333,
"delta": -0.07,
"percent_delta": -0.1737,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2524,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.275,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.403,
"predicted_SO": 1.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2524,
"delta": -0.0806,
"percent_delta": -0.2421,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.275,
"delta": -0.058,
"percent_delta": -0.1742,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.403,
"delta": 0.07,
"percent_delta": 0.2102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.403,
"delta": 0.07,
"percent_delta": 0.2102,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2524,
"delta": -0.0806,
"percent_delta": -0.2421,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.145,
"after": 0.0,
"delta": -0.145,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.377,
"after": 3.0,
"delta": -0.377,
"percent_delta": -0.1116,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2524,
"delta": -0.0046,
"percent_delta": -0.0179,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.116,
"after": 0.0,
"delta": -0.116,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.0,
"delta": -0.78,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.275,
"delta": -0.042,
"percent_delta": -0.1325,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.403,
"delta": -0.005,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.725,
"after": 1.0,
"delta": 0.275,
"percent_delta": 0.3793,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 0,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.725,
"after": 1.0,
"delta": 0.275,
"percent_delta": 0.3793,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.78,
"after": 0.0,
"delta": -0.78,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.145 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 3.377 | - |
| predicted_AVG | 0.257 | - |
| predicted_BB | 0.116 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.317 | - |
| predicted_R | 0.290 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.408 | - |
| predicted_SO | 0.725 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.163 | 0.018 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 3.402 | 0.025 |
| predicted_AVG | 0.265 | 0.008 |
| predicted_BB | 0.105 | -0.011 |
| predicted_H | 0.852 | 0.072 |
| predicted_HBP | 0.131 | - |
| predicted_HR | 0.109 | 0.009 |
| predicted_OBP | 0.318 | 0.001 |
| predicted_R | 0.376 | 0.086 |
| predicted_RBI | 0.419 | 0.019 |
| predicted_SLG | 0.423 | 0.015 |
| predicted_SO | 0.764 | 0.039 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.163 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 3.402 | 0.000 |
| predicted_AVG | 0.252 | -0.013 |
| predicted_BB | 0.106 | 0.001 |
| predicted_H | 0.859 | 0.007 |
| predicted_HBP | 0.131 | 0.000 |
| predicted_HR | 0.109 | -0.001 |
| predicted_OBP | 0.275 | -0.043 |
| predicted_R | 0.383 | 0.007 |
| predicted_RBI | 0.427 | 0.008 |
| predicted_SLG | 0.403 | -0.020 |
| predicted_SO | 0.760 | -0.004 |
AB rounded to 3 (raw=3.40), rates preserved: AVG=0.252 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=20.0, weight=0.160, BvP AVG=0.250)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.163 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 3.000 | -0.402 |
| predicted_AVG | 0.333 | 0.081 |
| predicted_BB | 0.000 | -0.106 |
| predicted_H | 1.000 | 0.141 |
| predicted_HR | 0.000 | -0.109 |
| predicted_OBP | 0.333 | 0.058 |
| predicted_R | 0.000 | -0.383 |
| predicted_RBI | 0.000 | -0.427 |
| predicted_SLG | 0.333 | -0.070 |
| predicted_SO | 1.000 | 0.240 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 6.000 | 1.000 | 0.000 | 1.000 | 2.000 | 5.000 | 0.000 | 4.000 | 0.3529 | 0.3889 | 0.5882 | 0.3529 | 0.0588 | 0.1177 | 0.0000 | 0.2353 |
| last_10 | 0.20 | 10 | - | 34.000 | 12.000 | 3.000 | 0.000 | 1.000 | 4.000 | 6.000 | 0.000 | 11.000 | 0.3529 | 0.3889 | 0.5294 | 0.3529 | 0.0294 | 0.1177 | 0.0000 | 0.3235 |
| season | 0.60 | 69 | - | 233.000 | 54.000 | 10.000 | 1.000 | 7.000 | 32.000 | 20.000 | 8.000 | 50.000 | 0.2318 | 0.2760 | 0.3734 | 0.2318 | 0.0300 | 0.1373 | 0.0343 | 0.2146 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1870 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.4370 |
| predicted_AVG | 0.2771 |
| predicted_BB | 0.0910 |
| predicted_H | 0.9520 |
| predicted_HBP | 0.1310 |
| predicted_HR | 0.1220 |
| predicted_OBP | 0.3203 |
| predicted_R | 0.4950 |
| predicted_RBI | 0.4460 |
| predicted_SLG | 0.4435 |
| predicted_SO | 0.8190 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1450 | 0.1870 | 0.1626 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 3.3770 | 3.4370 | 3.4021 | model_form_blend |
| predicted_AVG | 0.2570 | 0.2771 | 0.2654 | model_form_blend |
| predicted_BB | 0.1160 | 0.0910 | 0.1055 | model_form_blend |
| predicted_H | 0.7800 | 0.9520 | 0.8520 | model_form_blend |
| predicted_HBP | - | 0.1310 | 0.1310 | form_only |
| predicted_HR | 0.1000 | 0.1220 | 0.1092 | model_form_blend |
| predicted_OBP | 0.3170 | 0.3203 | 0.3184 | model_form_blend |
| predicted_R | 0.2900 | 0.4950 | 0.3758 | model_form_blend |
| predicted_RBI | 0.4000 | 0.4460 | 0.4193 | model_form_blend |
| predicted_SLG | 0.4080 | 0.4435 | 0.4229 | model_form_blend |
| predicted_SO | 0.7250 | 0.8190 | 0.7644 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 211 |
| Season rows before report date | 211 |
| Report year | 2026 |
| Profile rows used | 69 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.232 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 3 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 665926 |
| playerID | 665926 |
| playerName | Andrés Giménez |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.9 |
| sl_bb_percent | 3.2 |
| sl_woba | 0.286 |
| sl_xwoba | 0.265 |
| sl_xba | 0.224 |
| sl_xslg | 0.316 |
| sl_sweet_spot_percent | 28.0 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 23.7 |
| sl_exit_velocity_avg | 86.2 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 25.3 |
| sl_swing_percent | 57.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 2.778 | 6.000 | -2.778 | -6.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 2.222 | 5.000 | -2.222 | -5.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 3.889 | 4.000 | 0.111 | 0.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.167 | 5.000 | 0.033 | 0.200 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 5.222 | 3.000 | 0.778 | 3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "702056",
"player_name": "Trey Yesavage",
"position": "Starter",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 5.6667,
"predicted_SO": 6.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 5.2,
"predicted_R": 0.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 6.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 28.100 | 17.000 | 18.000 | 17.000 | 26.000 | 3.000 | 5.4000 | 1.2353 | 0.6000 | 0.6353 | 0.6000 | 0.9176 | 0.1059 |
| last_10 | 0.35 | 9 | 47.200 | 20.000 | 35.000 | 25.000 | 47.000 | 3.000 | 3.7762 | 1.2587 | 0.4196 | 0.7343 | 0.5245 | 0.9860 | 0.0629 |
| season | 0.20 | 9 | 47.200 | 20.000 | 35.000 | 25.000 | 47.000 | 3.000 | 3.7762 | 1.2587 | 0.4196 | 0.7343 | 0.5245 | 0.9860 | 0.0629 |
| Metric | Value |
|---|---|
| predicted_BB | 2.7740 |
| predicted_ER | 2.9050 |
| predicted_ERA | 4.6811 |
| predicted_H | 4.3600 |
| predicted_HR | 0.6120 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.2590 |
| predicted_WHIP | 1.2775 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 2.7740 | 1.3846 | model_form_blend |
| predicted_ER | 0.0000 | 2.9050 | 1.4500 | model_form_blend |
| predicted_ERA | - | 4.6811 | 4.6811 | form_only |
| predicted_H | 4.0000 | 4.3600 | 4.1797 | model_form_blend |
| predicted_HR | 0.0000 | 0.6120 | 0.3055 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 6.0000 | 5.2590 | 5.6301 | model_form_blend |
| predicted_WHIP | - | 1.2775 | 1.2775 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 9 |
| Season rows before report date | 9 |
| Report year | 2026 |
| Profile rows used | 9 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 4 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 6 |
| HR | 0 |
| BF | 21 |
| Pitches | 88 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 6 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 25 |
| Pitching_ER | 5 |
| Pitching_ERA | 3.78 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 3 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 81 |
| Pitching_R | 5 |
| Pitching_SO | 3 |
| Pitching_Strikes | 42 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_NYY@TOR |
| game_type | full |
| mlbID | 702056 |
| playerID | 702056 |
| playerName | Trey Yesavage |
| pos | P |
| started | True |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-12 |
| sl_k_percent | 23.7 |
| sl_bb_percent | 12.6 |
| sl_woba | 0.296 |
| sl_xwoba | 0.28 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 33.6 |
| sl_whiff_percent | 29.1 |
| sl_swing_percent | 48.5 |
| sl_avg_best_speed | 78.579100984 |
| sl_avg_hyper_speed | 93.468727623 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 0.314 | 0.000 | 1.686 | 2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.543 | 0.000 | 0.457 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.086 | 1.000 | -0.086 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.837 | 1.000 | 0.163 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.514 | 0.000 | -1.514 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656546",
"player_name": "Jeff Hoffman",
"position": "Middle Reliever",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 0.000 | 2.000 | 1.000 | 6.000 | 0.000 | 0.0000 | 0.6000 | 0.0000 | 0.4000 | 0.2000 | 1.2000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 6.000 | 9.000 | 3.000 | 13.000 | 1.000 | 5.7857 | 1.2857 | 0.6429 | 0.9643 | 0.3214 | 1.3929 | 0.1071 |
| season | 0.20 | 35 | 32.100 | 19.000 | 38.000 | 11.000 | 53.000 | 4.000 | 5.2887 | 1.5155 | 0.5876 | 1.1753 | 0.3402 | 1.6392 | 0.1237 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3110 |
| predicted_ER | 0.4120 |
| predicted_ERA | 3.7068 |
| predicted_H | 0.8500 |
| predicted_HR | 0.0990 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1720 |
| predicted_WHIP | 1.1606 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.3110 | 1.2146 | model_form_blend |
| predicted_ER | 1.0000 | 0.4120 | 0.7266 | model_form_blend |
| predicted_ERA | - | 3.7068 | 3.7068 | form_only |
| predicted_H | 1.0000 | 0.8500 | 0.9302 | model_form_blend |
| predicted_HR | 1.0000 | 0.0990 | 0.5810 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1720 | 0.5450 | model_form_blend |
| predicted_WHIP | - | 1.1606 | 1.1606 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 35 |
| Season rows before report date | 35 |
| Report year | 2026 |
| Profile rows used | 35 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 0 |
| HR | 1 |
| BF | 6 |
| Pitches | 24 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.29 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 25 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 17 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 656546 |
| playerID | 656546 |
| playerName | Jeff Hoffman |
| pos | P |
| started | False |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 36.1 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.34 |
| sl_xwoba | 0.269 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 27.5 |
| sl_whiff_percent | 39.6 |
| sl_swing_percent | 50.6 |
| sl_avg_best_speed | 76.348508462 |
| sl_avg_hyper_speed | 92.432184744 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.306 | 0.000 | -0.306 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.778 | 0.000 | -0.778 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 1.014 | 1.000 | 0.086 | 0.100 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.528 | 3.000 | 0.472 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "686973",
"player_name": "Louis Varland",
"position": "Middle Reliever",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 3.000 | 4.000 | 2.000 | 10.000 | 1.000 | 5.0625 | 1.1250 | 0.5625 | 0.7500 | 0.3750 | 1.8750 | 0.1875 |
| last_10 | 0.35 | 10 | 11.100 | 3.000 | 6.000 | 2.000 | 14.000 | 1.000 | 2.3824 | 0.7059 | 0.2647 | 0.5294 | 0.1765 | 1.2353 | 0.0882 |
| season | 0.20 | 36 | 40.000 | 4.000 | 28.000 | 11.000 | 55.000 | 1.000 | 0.9000 | 0.9750 | 0.1000 | 0.7000 | 0.2750 | 1.3750 | 0.0250 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3160 |
| predicted_ER | 0.4180 |
| predicted_ERA | 3.7618 |
| predicted_H | 0.7830 |
| predicted_HR | 0.1300 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.3140 |
| predicted_WHIP | 1.0985 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3160 | 0.1538 | model_form_blend |
| predicted_ER | 0.0000 | 0.4180 | 0.2035 | model_form_blend |
| predicted_ERA | - | 3.7618 | 3.7618 | form_only |
| predicted_H | 0.0000 | 0.7830 | 0.3812 | model_form_blend |
| predicted_HR | 0.0000 | 0.1300 | 0.0633 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.3140 | 1.6661 | model_form_blend |
| predicted_WHIP | - | 1.0985 | 1.0985 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 36 |
| Season rows before report date | 36 |
| Report year | 2026 |
| Profile rows used | 36 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.90 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 7 |
| allPositionsPlayed | P |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 686973 |
| playerID | 686973 |
| playerName | Louis Varland |
| pos | P |
| started | False |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 35.7 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.227 |
| sl_xwoba | 0.226 |
| sl_sweet_spot_percent | 23.9 |
| sl_barrel_batted_rate | 3.4 |
| sl_hard_hit_percent | 36.4 |
| sl_whiff_percent | 29.1 |
| sl_swing_percent | 52.5 |
| sl_avg_best_speed | 75.030713636 |
| sl_avg_hyper_speed | 93.423063409 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.278 | 0.000 | -0.278 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.194 | 0.000 | -0.194 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.722 | 1.000 | 0.278 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.894 | 1.000 | 0.106 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.556 | 0.000 | -0.556 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "643511",
"player_name": "Tyler Rogers",
"position": "Middle Reliever",
"team": "TOR",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 0.000 | 5.000 | 0.000 | 2.000 | 0.000 | 0.0000 | 1.0000 | 0.0000 | 1.0000 | 0.0000 | 0.4000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 0.000 | 7.000 | 1.000 | 5.000 | 0.000 | 0.0000 | 0.8000 | 0.0000 | 0.7000 | 0.1000 | 0.5000 | 0.0000 |
| season | 0.20 | 36 | 35.000 | 7.000 | 26.000 | 10.000 | 20.000 | 0.000 | 1.8000 | 1.0286 | 0.2000 | 0.7429 | 0.2857 | 0.5714 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2060 |
| predicted_ER | 0.2330 |
| predicted_ERA | 2.0956 |
| predicted_H | 0.8980 |
| predicted_HR | 0.0610 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.6650 |
| predicted_WHIP | 1.1037 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2060 | 0.0975 | model_form_blend |
| predicted_ER | 0.0000 | 0.2330 | 0.1103 | model_form_blend |
| predicted_ERA | - | 2.0956 | 2.0956 | form_only |
| predicted_H | 1.0000 | 0.8980 | 0.9517 | model_form_blend |
| predicted_HR | 0.0000 | 0.0610 | 0.0289 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.6650 | 0.3147 | model_form_blend |
| predicted_WHIP | - | 1.1037 | 1.1037 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 36 |
| Season rows before report date | 36 |
| Report year | 2026 |
| Profile rows used | 36 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.80 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 643511 |
| playerID | 643511 |
| playerName | Tyler Rogers |
| pos | P |
| started | False |
| startingPosition | P |
| team | TOR |
| teamID | 29 |
| game_date | 2026-06-17 |
| sl_k_percent | 14.4 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.219 |
| sl_xwoba | 0.24 |
| sl_sweet_spot_percent | 21.1 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 22.9 |
| sl_whiff_percent | 14.6 |
| sl_swing_percent | 49.1 |
| sl_avg_best_speed | 71.755993396 |
| sl_avg_hyper_speed | 91.892337925 |
| Field | Value |
|---|---|
| Pitcher | Sonny Gray |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.0702 |
| ESPN Rank | 73 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1359 |
| Avg Velo | 87.3030 |
| Avg Spin | 2518.9902 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 10 |
| Season ERA | 3.0321 |
| Season WHIP | 1.2032 |
| Role Avg IP | 5.1940 |
| Recent Avg IP | 5.6670 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"opponent": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"edges": {
"quality_edge": -0.2738,
"offense_edge": -0.1629,
"opponent_offense_edge": -0.0742,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9949,
"run_prevention": 0.9922,
"strikeout": 0.9977
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "543243",
"profile": {
"available": true,
"pitcher_id": "543243",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 177.0,
"k_percent": 19.9,
"bb_percent": 6.3,
"woba": 0.309,
"xwoba": 0.317,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 35.5,
"avg_best_speed": 77.5161,
"avg_hyper_speed": 93.718,
"whiff_percent": 22.1,
"swing_percent": 47.0
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.023,
"command_and_miss": -0.2021,
"regression_edge": -0.2286,
"xwoba_edge": -0.0571,
"barrel_edge": -0.0889,
"hard_hit_edge": 0.4,
"whiff_edge": -0.5143,
"bb_edge": 0.725,
"pitch_design_score": -0.1359
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "543243",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 77,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 77,
"pitch_usage": 0.0,
"release_speed": 87.30296275663324,
"release_spin_rate": 2518.9902176014775,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 77,
"pitch_usage": 0.0,
"release_speed": 87.30296275663324,
"release_spin_rate": 2518.9902176014775,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 87.303,
"release_spin_rate": 2518.9902,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1359,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.9704,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": -0.0702,
"sample_weight": 0.708,
"run_prevention_factor": 1.006,
"strikeout_factor": 0.9749,
"walk_factor": 0.9589,
"homer_factor": 0.9949,
"woba_minus_xwoba": -0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "543243",
"espn_id": 32082,
"player_name": "Sonny Gray",
"team": "BOS",
"role": "pitcher",
"espn_rank": 73,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 73,
"gp_value": 12.0,
"gp_rank": 352,
"gs_value": 12.0,
"gs_rank": 88,
"qs_value": 7.0,
"qs_rank": 29,
"era_value": 3.032,
"era_rank": null,
"w_value": 8.0,
"w_rank": 4,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 62.1,
"ip_rank": 107,
"h_value": 59.0,
"h_rank": 101,
"er_value": 21.0,
"er_rank": 147,
"hr_value": 6.0,
"hr_rank": 125,
"bb_value": 16.0,
"bb_rank": 176,
"k_value": 51.0,
"k_rank": 108,
"k_per_9_value": 7.3636365,
"k_per_9_rank": 27,
"whip_value": 1.2032,
"whip_rank": null,
"war_value": 1.22,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0042,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0042,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9709,
"adjusted": 1
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9964,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9822,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 52.1,
"ER": 16,
"H": 49,
"BB": 15,
"SO": 43,
"HR": 5,
"ERA": 2.751592356687898,
"WHIP": 1.2229299363057324,
"K9": 7.394904458598726,
"HR9": 0.8598726114649681,
"games_pitched": 10,
"quality_starts": 6,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-12T00:00:00"
}{
"available": true,
"pitcher_id": "543243",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 77,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 77,
"pitch_usage": 0.0,
"release_speed": 87.30296275663324,
"release_spin_rate": 2518.9902176014775,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 77,
"pitch_usage": 0.0,
"release_speed": 87.30296275663324,
"release_spin_rate": 2518.9902176014775,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 87.303,
"release_spin_rate": 2518.9902,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.1359,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.9704,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 12.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7059,
"prior_weight": 0.2941
},
"role": "pitcher",
"player_id": "543243",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 28.1,
"ER": 9.0,
"R": 9.0,
"H": 28.0,
"BB": 8.0,
"SO": 30.0,
"HR": 2.0,
"BF": 117.0,
"Pitches": 414.0
},
"per_game": {
"IP": 5.2,
"ER": 1.8,
"R": 1.8,
"H": 5.6,
"BB": 1.6,
"SO": 6.0,
"HR": 0.4,
"BF": 23.4,
"Pitches": 82.8
},
"rates": {
"ERA": 2.8588,
"WHIP": 1.2706,
"ER_per_IP": 0.31765,
"H_per_IP": 0.98824,
"BB_per_IP": 0.28235,
"SO_per_IP": 1.05882,
"HR_per_IP": 0.07059
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 52.1,
"ER": 16.0,
"R": 16.0,
"H": 49.0,
"BB": 15.0,
"SO": 43.0,
"HR": 5.0,
"BF": 214.0,
"Pitches": 785.0
},
"per_game": {
"IP": 5.1,
"ER": 1.6,
"R": 1.6,
"H": 4.9,
"BB": 1.5,
"SO": 4.3,
"HR": 0.5,
"BF": 21.4,
"Pitches": 78.5
},
"rates": {
"ERA": 2.7516,
"WHIP": 1.2229,
"ER_per_IP": 0.30573,
"H_per_IP": 0.93631,
"BB_per_IP": 0.28662,
"SO_per_IP": 0.82166,
"HR_per_IP": 0.09554
}
},
"season": {
"games": 12,
"totals": {
"IP": 62.1,
"ER": 21.0,
"R": 22.0,
"H": 59.0,
"BB": 16.0,
"SO": 51.0,
"HR": 6.0,
"BF": 256.0,
"Pitches": 952.0
},
"per_game": {
"IP": 5.1,
"ER": 1.75,
"R": 1.8333,
"H": 4.9167,
"BB": 1.3333,
"SO": 4.25,
"HR": 0.5,
"BF": 21.3333,
"Pitches": 79.3333
},
"rates": {
"ERA": 3.0321,
"WHIP": 1.2032,
"ER_per_IP": 0.3369,
"H_per_IP": 0.94652,
"BB_per_IP": 0.25668,
"SO_per_IP": 0.81818,
"HR_per_IP": 0.09626
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.056,
"predicted_H": 5.345,
"predicted_BB": 1.681,
"predicted_SO": 5.153,
"predicted_HR": 0.568,
"predicted_ERA": 3.3419,
"predicted_WHIP": 1.2689
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4743,
"form_weight": 0.5257,
"form_reliability": 0.7059,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 12.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7059,
"prior_weight": 0.2941
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.056,
"final": 1.5552,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 5.345,
"final": 3.2844,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.681,
"final": 1.8323,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 10.0,
"form": 5.153,
"final": 7.4517,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.568,
"final": 0.7729,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.3419,
"final": 3.3419,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2689,
"final": 1.2689,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Aroldis Chapman |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2916 |
| ESPN Rank | 68 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2790 |
| Avg Velo | 94.7112 |
| Avg Spin | 2304.1363 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 0.4355 |
| Season WHIP | 0.9194 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"opponent": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"edges": {
"quality_edge": -0.2738,
"offense_edge": -0.1629,
"opponent_offense_edge": -0.0742,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9949,
"run_prevention": 0.9922,
"strikeout": 0.9977
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "547973",
"profile": {
"available": true,
"pitcher_id": "547973",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 64.0,
"k_percent": 34.6,
"bb_percent": 11.1,
"woba": 0.216,
"xwoba": 0.266,
"sweet_spot_percent": 20.9,
"barrel_batted_rate": 11.6,
"hard_hit_percent": 44.2,
"avg_best_speed": 76.6438,
"avg_hyper_speed": 95.6826,
"whiff_percent": 32.7,
"swing_percent": 48.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.8927,
"command_and_miss": 1.0329,
"regression_edge": -1.4286,
"xwoba_edge": 1.4,
"barrel_edge": -0.9556,
"hard_hit_edge": -0.8429,
"whiff_edge": 1.0,
"bb_edge": -0.475,
"pitch_design_score": 0.279
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "547973",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 17,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 17,
"pitch_usage": 0.0,
"release_speed": 94.71123024946986,
"release_spin_rate": 2304.136300190582,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 17,
"pitch_usage": 0.0,
"release_speed": 94.71123024946986,
"release_spin_rate": 2304.136300190582,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 94.7112,
"release_spin_rate": 2304.1363,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.279,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.9929,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.2916,
"sample_weight": 0.45,
"run_prevention_factor": 0.9752,
"strikeout_factor": 1.0491,
"walk_factor": 1.0171,
"homer_factor": 1.0307,
"woba_minus_xwoba": -0.05,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "547973",
"espn_id": 30442,
"player_name": "Aroldis Chapman",
"team": "BOS",
"role": "pitcher",
"espn_rank": 68,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 68,
"gp_value": 21.0,
"gp_rank": 166,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 0.4354,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 14.0,
"sv_rank": 7,
"hld_value": 0.0,
"hld_rank": 256,
"ip_value": 20.2,
"ip_rank": 369,
"h_value": 10.0,
"h_rank": 484,
"er_value": 1.0,
"er_rank": 620,
"hr_value": 0.0,
"hr_rank": 578,
"bb_value": 9.0,
"bb_rank": 332,
"k_value": 28.0,
"k_rank": 268,
"k_per_9_value": 12.193548,
"k_per_9_rank": 19,
"whip_value": 0.9193,
"whip_rank": null,
"war_value": 1.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9888,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9888,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0077,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0138,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0221,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.0,
"ER": 0,
"H": 3,
"BB": 6,
"SO": 15,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.9,
"K9": 13.5,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "547973",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 17,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 17,
"pitch_usage": 0.0,
"release_speed": 94.71123024946986,
"release_spin_rate": 2304.136300190582,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 17,
"pitch_usage": 0.0,
"release_speed": 94.71123024946986,
"release_spin_rate": 2304.136300190582,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 94.7112,
"release_spin_rate": 2304.1363,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.279,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.9929,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.104,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4508,
"prior_weight": 0.5492
},
"role": "pitcher",
"player_id": "547973",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 21,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 2.0,
"SO": 7.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 74.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.4,
"SO": 1.4,
"HR": 0.0,
"BF": 4.0,
"Pitches": 14.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.0,
"ER_per_IP": 0.0,
"H_per_IP": 0.6,
"BB_per_IP": 0.4,
"SO_per_IP": 1.4,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 6.0,
"SO": 15.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 157.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.3,
"BB": 0.6,
"SO": 1.5,
"HR": 0.0,
"BF": 4.0,
"Pitches": 15.7
},
"rates": {
"ERA": 0.0,
"WHIP": 0.9,
"ER_per_IP": 0.0,
"H_per_IP": 0.3,
"BB_per_IP": 0.6,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"season": {
"games": 21,
"totals": {
"IP": 20.2,
"ER": 1.0,
"R": 1.0,
"H": 10.0,
"BB": 9.0,
"SO": 28.0,
"HR": 0.0,
"BF": 81.0,
"Pitches": 312.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0476,
"R": 0.0476,
"H": 0.4762,
"BB": 0.4286,
"SO": 1.3333,
"HR": 0.0,
"BF": 3.8571,
"Pitches": 14.8571
},
"rates": {
"ERA": 0.4355,
"WHIP": 0.9194,
"ER_per_IP": 0.04839,
"H_per_IP": 0.48387,
"BB_per_IP": 0.43548,
"SO_per_IP": 1.35484,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.279,
"predicted_H": 0.748,
"predicted_BB": 0.415,
"predicted_SO": 1.158,
"predicted_HR": 0.08,
"predicted_ERA": 2.5152,
"predicted_WHIP": 1.1621
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.582,
"form_weight": 0.418,
"form_reliability": 0.4508,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.104,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4508,
"prior_weight": 0.5492
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.279,
"final": 0.1166,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.748,
"final": 0.3126,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.415,
"final": 0.1735,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.158,
"final": 0.484,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.08,
"final": 0.0334,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5152,
"final": 2.5152,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1621,
"final": 1.1621,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Garrett Whitlock |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1495 |
| ESPN Rank | 215 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0223 |
| Avg Velo | 90.1279 |
| Avg Spin | 2107.6779 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.9077 |
| Season WHIP | 1.0615 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"opponent": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"edges": {
"quality_edge": -0.2738,
"offense_edge": -0.1629,
"opponent_offense_edge": -0.0742,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9949,
"run_prevention": 0.9922,
"strikeout": 0.9977
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676477",
"profile": {
"available": true,
"pitcher_id": "676477",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 80.0,
"k_percent": 30.7,
"bb_percent": 6.8,
"woba": 0.267,
"xwoba": 0.308,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 30.9,
"avg_best_speed": 77.0186,
"avg_hyper_speed": 93.4064,
"whiff_percent": 29.8,
"swing_percent": 54.2
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": 0.4036,
"command_and_miss": 0.8521,
"regression_edge": -1.1714,
"xwoba_edge": 0.2,
"barrel_edge": 0.0,
"hard_hit_edge": 1.0571,
"whiff_edge": 0.5857,
"bb_edge": 0.6,
"pitch_design_score": 0.0223
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676477",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 11,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 11,
"pitch_usage": 0.0,
"release_speed": 90.12792508309943,
"release_spin_rate": 2107.6778829395935,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 11,
"pitch_usage": 0.0,
"release_speed": 90.12792508309943,
"release_spin_rate": 2107.6778829395935,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.1279,
"release_spin_rate": 2107.6779,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0223,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1596,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.1495,
"sample_weight": 0.45,
"run_prevention_factor": 0.9873,
"strikeout_factor": 1.0316,
"walk_factor": 0.9784,
"homer_factor": 0.9783,
"woba_minus_xwoba": -0.041,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "676477",
"espn_id": 39674,
"player_name": "Garrett Whitlock",
"team": "BOS",
"role": "pitcher",
"espn_rank": 215,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 215,
"gp_value": 22.0,
"gp_rank": 157,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 2.9076,
"era_rank": null,
"w_value": 4.0,
"w_rank": 65,
"l_value": 1.0,
"l_rank": 275,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 9.0,
"hld_rank": 31,
"ip_value": 21.2,
"ip_rank": 362,
"h_value": 17.0,
"h_rank": 386,
"er_value": 7.0,
"er_rank": 431,
"hr_value": 2.0,
"hr_rank": 335,
"bb_value": 6.0,
"bb_rank": 436,
"k_value": 27.0,
"k_rank": 277,
"k_per_9_value": 11.2153845,
"k_per_9_rank": 20,
"whip_value": 1.0615,
"whip_rank": null,
"war_value": 0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9943,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9943,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9903,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9902,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0142,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.2,
"ER": 3,
"H": 7,
"BB": 1,
"SO": 14,
"HR": 0,
"ERA": 2.793103448275862,
"WHIP": 0.8275862068965518,
"K9": 13.03448275862069,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "676477",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 11,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 11,
"pitch_usage": 0.0,
"release_speed": 90.12792508309943,
"release_spin_rate": 2107.6778829395935,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 11,
"pitch_usage": 0.0,
"release_speed": 90.12792508309943,
"release_spin_rate": 2107.6778829395935,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 90.1279,
"release_spin_rate": 2107.6779,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.0223,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1596,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.303,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4625,
"prior_weight": 0.5375
},
"role": "pitcher",
"player_id": "676477",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 0.0,
"SO": 5.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 61.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.0,
"SO": 1.0,
"HR": 0.0,
"BF": 3.4,
"Pitches": 12.2
},
"rates": {
"ERA": 2.0769,
"WHIP": 0.9231,
"ER_per_IP": 0.23077,
"H_per_IP": 0.92308,
"BB_per_IP": 0.0,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 3.0,
"R": 3.0,
"H": 7.0,
"BB": 1.0,
"SO": 14.0,
"HR": 0.0,
"BF": 37.0,
"Pitches": 138.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.7,
"BB": 0.1,
"SO": 1.4,
"HR": 0.0,
"BF": 3.7,
"Pitches": 13.8
},
"rates": {
"ERA": 2.7931,
"WHIP": 0.8276,
"ER_per_IP": 0.31034,
"H_per_IP": 0.72414,
"BB_per_IP": 0.10345,
"SO_per_IP": 1.44828,
"HR_per_IP": 0.0
}
},
"season": {
"games": 22,
"totals": {
"IP": 21.2,
"ER": 7.0,
"R": 8.0,
"H": 17.0,
"BB": 6.0,
"SO": 27.0,
"HR": 2.0,
"BF": 88.0,
"Pitches": 347.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3182,
"R": 0.3636,
"H": 0.7727,
"BB": 0.2727,
"SO": 1.2273,
"HR": 0.0909,
"BF": 4.0,
"Pitches": 15.7727
},
"rates": {
"ERA": 2.9077,
"WHIP": 1.0615,
"ER_per_IP": 0.32308,
"H_per_IP": 0.78462,
"BB_per_IP": 0.27692,
"SO_per_IP": 1.24615,
"HR_per_IP": 0.09231
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.397,
"predicted_H": 0.905,
"predicted_BB": 0.238,
"predicted_SO": 1.094,
"predicted_HR": 0.087,
"predicted_ERA": 3.5765,
"predicted_WHIP": 1.143
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5771,
"form_weight": 0.4229,
"form_reliability": 0.4625,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.303,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4625,
"prior_weight": 0.5375
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.397,
"final": 0.1679,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.905,
"final": 0.9598,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.238,
"final": 0.1007,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.094,
"final": 0.4627,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.087,
"final": 0.0368,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5765,
"final": 3.5765,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.143,
"final": 1.143,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Justin Slaten |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0473 |
| ESPN Rank | 652 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1636 |
| Avg Velo | 92.6503 |
| Avg Spin | 2527.9024 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 6.7500 |
| Season WHIP | 1.5750 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BOS",
"games": 80,
"wins": 31,
"losses": 49,
"win_pct": 0.3875,
"runs_scored": 302.0,
"runs_allowed": 329.0,
"run_differential": -27.0,
"run_differential_per_game": -0.3375,
"avg_runs_scored": 3.775,
"avg_runs_allowed": 4.1125,
"offense_index": 0.8371,
"defense_index": 1.0965,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 2,
"losses": 8,
"win_pct": 0.2,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 3.9,
"run_differential": -8.0
},
"available": true,
"quality_score": -0.2418
},
"opponent": {
"team": "TOR",
"games": 80,
"wins": 39,
"losses": 41,
"win_pct": 0.4875,
"runs_scored": 334.0,
"runs_allowed": 329.0,
"run_differential": 5.0,
"run_differential_per_game": 0.0625,
"avg_runs_scored": 4.175,
"avg_runs_allowed": 4.1125,
"offense_index": 0.9258,
"defense_index": 1.0965,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.2,
"avg_runs_allowed": 3.9,
"run_differential": 3.0
},
"available": true,
"quality_score": 0.032
},
"edges": {
"quality_edge": -0.2738,
"offense_edge": -0.1629,
"opponent_offense_edge": -0.0742,
"defense_strength": 0.0965,
"opponent_defense_weakness": -0.0965,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.9949,
"run_prevention": 0.9922,
"strikeout": 0.9977
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "686580",
"profile": {
"available": true,
"pitcher_id": "686580",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 37.0,
"k_percent": 27.9,
"bb_percent": 8.2,
"woba": 0.374,
"xwoba": 0.304,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 46.2,
"avg_best_speed": 78.7243,
"avg_hyper_speed": 94.9418,
"whiff_percent": 27.4,
"swing_percent": 48.1
},
"league_medians": {
"pa": 70.0,
"k_percent": 22.5,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.315,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.3,
"avg_best_speed": 77.8423,
"avg_hyper_speed": 94.021,
"whiff_percent": 25.7,
"swing_percent": 47.2
},
"components": {
"contact_quality": -0.4168,
"command_and_miss": 0.4821,
"regression_edge": 2.0,
"xwoba_edge": 0.3143,
"barrel_edge": -0.6667,
"hard_hit_edge": -1.1286,
"whiff_edge": 0.2429,
"bb_edge": 0.25,
"pitch_design_score": 0.1636
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "686580",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 28,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 92.65026433843074,
"release_spin_rate": 2527.902351533915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 92.65026433843074,
"release_spin_rate": 2527.902351533915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.6503,
"release_spin_rate": 2527.9024,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1636,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1685,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
},
"quality_score": 0.0473,
"sample_weight": 0.45,
"run_prevention_factor": 0.996,
"strikeout_factor": 1.0183,
"walk_factor": 0.991,
"homer_factor": 1.0401,
"woba_minus_xwoba": 0.07,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "686580",
"espn_id": 4917925,
"player_name": "Justin Slaten",
"team": "BOS",
"role": "pitcher",
"espn_rank": 652,
"espn_total_ranked": 701,
"metrics": {
"espn_rank": 652,
"gp_value": 15.0,
"gp_rank": 228,
"gs_value": 0.0,
"gs_rank": 288,
"qs_value": 0.0,
"qs_rank": 175,
"era_value": 6.75,
"era_rank": null,
"w_value": 0.0,
"w_rank": 404,
"l_value": 3.0,
"l_rank": 110,
"sv_value": 0.0,
"sv_rank": 172,
"hld_value": 7.0,
"hld_rank": 54,
"ip_value": 13.1,
"ip_rank": 448,
"h_value": 16.0,
"h_rank": 401,
"er_value": 10.0,
"er_rank": 324,
"hr_value": 4.0,
"hr_rank": 199,
"bb_value": 5.0,
"bb_rank": 474,
"k_value": 17.0,
"k_rank": 386,
"k_per_9_value": 11.475,
"k_per_9_rank": 23,
"whip_value": 1.575,
"whip_rank": null,
"war_value": -0.55,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9982,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9982,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.018,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0082,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 10,
"H": 14,
"BB": 3,
"SO": 11,
"HR": 4,
"ERA": 10.0,
"WHIP": 1.8888888888888888,
"K9": 11.0,
"HR9": 4.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-13T00:00:00"
}{
"available": true,
"pitcher_id": "686580",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 28,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 92.65026433843074,
"release_spin_rate": 2527.902351533915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 28,
"pitch_usage": 0.0,
"release_speed": 92.65026433843074,
"release_spin_rate": 2527.902351533915,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.6503,
"release_spin_rate": 2527.9024,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1636,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1685,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.648,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3462,
"prior_weight": 0.6538
},
"role": "pitcher",
"player_id": "686580",
"report_date": "20260618_T",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 6.0,
"R": 6.0,
"H": 8.0,
"BB": 2.0,
"SO": 5.0,
"HR": 2.0,
"BF": 24.0,
"Pitches": 85.0
},
"per_game": {
"IP": 1.0,
"ER": 1.2,
"R": 1.2,
"H": 1.6,
"BB": 0.4,
"SO": 1.0,
"HR": 0.4,
"BF": 4.8,
"Pitches": 17.0
},
"rates": {
"ERA": 11.5714,
"WHIP": 2.1429,
"ER_per_IP": 1.28571,
"H_per_IP": 1.71429,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.42857
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 10.0,
"R": 10.0,
"H": 14.0,
"BB": 3.0,
"SO": 11.0,
"HR": 4.0,
"BF": 44.0,
"Pitches": 164.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 1.4,
"BB": 0.3,
"SO": 1.1,
"HR": 0.4,
"BF": 4.4,
"Pitches": 16.4
},
"rates": {
"ERA": 10.0,
"WHIP": 1.8889,
"ER_per_IP": 1.11111,
"H_per_IP": 1.55556,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.22222,
"HR_per_IP": 0.44444
}
},
"season": {
"games": 15,
"totals": {
"IP": 13.1,
"ER": 10.0,
"R": 11.0,
"H": 16.0,
"BB": 5.0,
"SO": 17.0,
"HR": 4.0,
"BF": 61.0,
"Pitches": 235.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6667,
"R": 0.7333,
"H": 1.0667,
"BB": 0.3333,
"SO": 1.1333,
"HR": 0.2667,
"BF": 4.0667,
"Pitches": 15.6667
},
"rates": {
"ERA": 6.75,
"WHIP": 1.575,
"ER_per_IP": 0.75,
"H_per_IP": 1.2,
"BB_per_IP": 0.375,
"SO_per_IP": 1.275,
"HR_per_IP": 0.3
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.714,
"predicted_H": 1.175,
"predicted_BB": 0.371,
"predicted_SO": 1.016,
"predicted_HR": 0.237,
"predicted_ERA": 6.4293,
"predicted_WHIP": 1.546
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6262,
"form_weight": 0.3738,
"form_reliability": 0.3462,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.648,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3462,
"prior_weight": 0.6538
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.714,
"final": 0.8931,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 1.175,
"final": 1.6916,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.371,
"final": 0.1387,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.016,
"final": 0.3797,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.237,
"final": 0.0886,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.4293,
"final": 6.4293,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.546,
"final": 1.546,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.229 | 0.000 | 0.000 | Hitting_2B | 0.206 | 1.000 | -0.206 | -1.000 |
| predicted_3B | 0.014 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 4.190 | 4.000 | 4.000 | Hitting_AB | 3.927 | 5.000 | 0.073 | -1.000 |
| predicted_AVG | 0.249 | 0.250 | 0.250 | Hitting_AVG | 0.280 | 0.400 | -0.030 | -0.150 |
| predicted_BB | 0.371 | 0.000 | 0.000 | Hitting_BB | 0.401 | 0.000 | -0.401 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_H | 1.040 | 1.000 | 1.000 | Hitting_H | 1.101 | 2.000 | -0.101 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.113 | 0.000 | -0.113 | 0.000 |
| predicted_OBP | 0.328 | 0.250 | 0.250 | Hitting_OBP | 0.345 | 0.400 | -0.095 | -0.150 |
| predicted_R | 0.443 | 0.000 | 0.000 | Hitting_R | 0.457 | 0.000 | -0.457 | 0.000 |
| predicted_RBI | 0.580 | 0.000 | 1.000 | Hitting_RBI | 0.445 | 0.000 | -0.445 | 0.000 |
| predicted_SLG | 0.443 | 0.250 | 0.250 | Hitting_SLG | 0.428 | 0.600 | -0.178 | -0.350 |
| predicted_SO | 0.857 | 0.000 | 1.000 | Hitting_SO | 0.814 | 1.000 | -0.814 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 8 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 0.8570 -> 0.0000 (deboost -0.8570, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2490 -> 0.2637 (boost 0.0147, better) | predicted_AB: 4.1900 -> 4.0811 (deboost -0.1089, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 0 | 4 | 0 | 4 | - | predicted_H: 1.0722 -> 1.0218 (deboost -0.0504, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_RBI: 0.5417 -> 1.0000 (boost 0.4583, better) | predicted_BB: 0.3521 -> 0.0000 (deboost -0.3521, worse) | AB rounded to 4 (raw=4.19), rates preserved: AVG=0.244 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4179 -> 0.0000 (deboost -0.4179, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4212 -> 0.2500 (deboost -0.1712, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 1 | 1 | - | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4212 (boost 0.1712, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677800",
"player_name": "Wilyer Abreu",
"position": "RF",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.229,
"predicted_3B": 0.014,
"predicted_AB": 4.19,
"predicted_AVG": 0.249,
"predicted_BB": 0.371,
"predicted_H": 1.04,
"predicted_HR": 0.15,
"predicted_OBP": 0.328,
"predicted_R": 0.443,
"predicted_RBI": 0.58,
"predicted_SLG": 0.443,
"predicted_SO": 0.857
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2684,
"predicted_3B": 0.0119,
"predicted_AB": 4.0811,
"predicted_AVG": 0.2637,
"predicted_BB": 0.3574,
"predicted_H": 1.0722,
"predicted_HBP": 0.003,
"predicted_HR": 0.1411,
"predicted_OBP": 0.3308,
"predicted_R": 0.454,
"predicted_RBI": 0.5885,
"predicted_SLG": 0.4538,
"predicted_SO": 0.871
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.229,
"after": 0.2684,
"delta": 0.0394,
"percent_delta": 0.1721,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0119,
"delta": -0.0021,
"percent_delta": -0.15,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.19,
"after": 4.0811,
"delta": -0.1089,
"percent_delta": -0.026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2637,
"delta": 0.0147,
"percent_delta": 0.059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.371,
"after": 0.3574,
"delta": -0.0136,
"percent_delta": -0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.0722,
"delta": 0.0322,
"percent_delta": 0.031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1411,
"delta": -0.0089,
"percent_delta": -0.0593,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3308,
"delta": 0.0028,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.443,
"after": 0.454,
"delta": 0.011,
"percent_delta": 0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.5885,
"delta": 0.0085,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.4538,
"delta": 0.0108,
"percent_delta": 0.0244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.857,
"after": 0.871,
"delta": 0.014,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2637,
"delta": 0.0147,
"percent_delta": 0.059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.19,
"after": 4.0811,
"delta": -0.1089,
"percent_delta": -0.026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 70
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2684,
"predicted_3B": 0.0119,
"predicted_AB": 4.0811,
"predicted_AVG": 0.2504,
"predicted_BB": 0.3521,
"predicted_H": 1.0218,
"predicted_HBP": 0.003,
"predicted_HR": 0.135,
"predicted_OBP": 0.3099,
"predicted_R": 0.4179,
"predicted_RBI": 0.5417,
"predicted_SLG": 0.4212,
"predicted_SO": 0.8838
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2684,
"after": 0.2684,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0119,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0811,
"after": 4.0811,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2637,
"after": 0.2504,
"delta": -0.0133,
"percent_delta": -0.0504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3574,
"after": 0.3521,
"delta": -0.0053,
"percent_delta": -0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0722,
"after": 1.0218,
"delta": -0.0504,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.003,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1411,
"after": 0.135,
"delta": -0.0061,
"percent_delta": -0.0432,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3308,
"after": 0.3099,
"delta": -0.0209,
"percent_delta": -0.0632,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.454,
"after": 0.4179,
"delta": -0.0361,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5885,
"after": 0.5417,
"delta": -0.0468,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4538,
"after": 0.4212,
"delta": -0.0326,
"percent_delta": -0.0718,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.871,
"after": 0.8838,
"delta": 0.0128,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0722,
"after": 1.0218,
"delta": -0.0504,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.19), rates preserved: AVG=0.244 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2684,
"after": 0.0,
"delta": -0.2684,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0119,
"after": 0.0,
"delta": -0.0119,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0811,
"after": 4.0,
"delta": -0.0811,
"percent_delta": -0.0199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3521,
"after": 0.0,
"delta": -0.3521,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0218,
"after": 1.0,
"delta": -0.0218,
"percent_delta": -0.0213,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.0,
"delta": -0.003,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.135,
"after": 0.0,
"delta": -0.135,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5417,
"after": 1.0,
"delta": 0.4583,
"percent_delta": 0.846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8838,
"after": 1.0,
"delta": 0.1162,
"percent_delta": 0.1315,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5417,
"after": 1.0,
"delta": 0.4583,
"percent_delta": 0.846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3521,
"after": 0.0,
"delta": -0.3521,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4179,
"after": 0.0,
"delta": -0.4179,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4179,
"after": 0.0,
"delta": -0.4179,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2504,
"after": 0.25,
"delta": -0.0004,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3099,
"after": 0.25,
"delta": -0.0599,
"percent_delta": -0.1933,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4212,
"after": 0.25,
"delta": -0.1712,
"percent_delta": -0.4065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4212,
"after": 0.25,
"delta": -0.1712,
"percent_delta": -0.4065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2504,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3099,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4212,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2504,
"delta": 0.0004,
"percent_delta": 0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3099,
"delta": 0.0599,
"percent_delta": 0.2397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4212,
"delta": 0.1712,
"percent_delta": 0.685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4212,
"delta": 0.1712,
"percent_delta": 0.685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.229,
"after": 0.0,
"delta": -0.229,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.19,
"after": 4.0,
"delta": -0.19,
"percent_delta": -0.0453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2504,
"delta": 0.0014,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.371,
"after": 0.0,
"delta": -0.371,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.0,
"delta": -0.04,
"percent_delta": -0.0385,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3099,
"delta": -0.0181,
"percent_delta": -0.0552,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.443,
"after": 0.0,
"delta": -0.443,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.0,
"delta": -0.58,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.443,
"after": 0.4212,
"delta": -0.0218,
"percent_delta": -0.0492,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.857,
"after": 0.0,
"delta": -0.857,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 0,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 8,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.857,
"after": 0.0,
"delta": -0.857,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.229 | - |
| predicted_3B | 0.014 | - |
| predicted_AB | 4.190 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.371 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.328 | - |
| predicted_R | 0.443 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.443 | - |
| predicted_SO | 0.857 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.268 | 0.039 |
| predicted_3B | 0.012 | -0.002 |
| predicted_AB | 4.081 | -0.109 |
| predicted_AVG | 0.264 | 0.015 |
| predicted_BB | 0.357 | -0.014 |
| predicted_H | 1.072 | 0.032 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.141 | -0.009 |
| predicted_OBP | 0.331 | 0.003 |
| predicted_R | 0.454 | 0.011 |
| predicted_RBI | 0.589 | 0.009 |
| predicted_SLG | 0.454 | 0.011 |
| predicted_SO | 0.871 | 0.014 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.268 | 0.000 |
| predicted_3B | 0.012 | 0.000 |
| predicted_AB | 4.081 | 0.000 |
| predicted_AVG | 0.250 | -0.013 |
| predicted_BB | 0.352 | -0.005 |
| predicted_H | 1.022 | -0.050 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.135 | -0.006 |
| predicted_OBP | 0.310 | -0.021 |
| predicted_R | 0.418 | -0.036 |
| predicted_RBI | 0.542 | -0.047 |
| predicted_SLG | 0.421 | -0.033 |
| predicted_SO | 0.884 | 0.013 |
AB rounded to 4 (raw=4.19), rates preserved: AVG=0.244 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.268 |
| predicted_3B | 0.000 | -0.012 |
| predicted_AB | 4.000 | -0.081 |
| predicted_AVG | 0.250 | -0.000 |
| predicted_BB | 0.000 | -0.352 |
| predicted_H | 1.000 | -0.022 |
| predicted_HR | 0.000 | -0.135 |
| predicted_OBP | 0.250 | -0.060 |
| predicted_R | 0.000 | -0.418 |
| predicted_RBI | 1.000 | 0.458 |
| predicted_SLG | 0.250 | -0.171 |
| predicted_SO | 1.000 | 0.116 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 7.000 | 3.000 | 0.000 | 1.000 | 5.000 | 3.000 | 2.000 | 4.000 | 0.3500 | 0.3913 | 0.6500 | 0.3500 | 0.0500 | 0.2500 | 0.1000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 40.000 | 10.000 | 4.000 | 0.000 | 1.000 | 6.000 | 4.000 | 2.000 | 11.000 | 0.2500 | 0.2791 | 0.4250 | 0.2500 | 0.0250 | 0.1500 | 0.0500 | 0.2750 |
| season | 0.60 | 70 | - | 273.000 | 76.000 | 16.000 | 1.000 | 8.000 | 34.000 | 31.000 | 26.000 | 60.000 | 0.2784 | 0.3377 | 0.4322 | 0.2784 | 0.0293 | 0.1245 | 0.0952 | 0.2198 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3220 |
| predicted_3B | 0.0090 |
| predicted_AB | 3.9330 |
| predicted_AVG | 0.2837 |
| predicted_BB | 0.3390 |
| predicted_H | 1.1160 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.1290 |
| predicted_OBP | 0.3346 |
| predicted_R | 0.4690 |
| predicted_RBI | 0.6000 |
| predicted_SLG | 0.4685 |
| predicted_SO | 0.8900 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2290 | 0.3220 | 0.2684 | model_form_blend |
| predicted_3B | 0.0140 | 0.0090 | 0.0119 | model_form_blend |
| predicted_AB | 4.1900 | 3.9330 | 4.0811 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2837 | 0.2637 | model_form_blend |
| predicted_BB | 0.3710 | 0.3390 | 0.3574 | model_form_blend |
| predicted_H | 1.0400 | 1.1160 | 1.0722 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1500 | 0.1290 | 0.1411 | model_form_blend |
| predicted_OBP | 0.3280 | 0.3346 | 0.3308 | model_form_blend |
| predicted_R | 0.4430 | 0.4690 | 0.4540 | model_form_blend |
| predicted_RBI | 0.5800 | 0.6000 | 0.5885 | model_form_blend |
| predicted_SLG | 0.4430 | 0.4685 | 0.4538 | model_form_blend |
| predicted_SO | 0.8570 | 0.8900 | 0.8710 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 247 |
| Season rows before report date | 247 |
| Report year | 2026 |
| Profile rows used | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.278 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 677800 |
| playerID | 677800 |
| playerName | Wilyer Abreu |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 19.8 |
| sl_bb_percent | 8.6 |
| sl_woba | 0.337 |
| sl_xwoba | 0.336 |
| sl_xba | 0.261 |
| sl_xslg | 0.455 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 11.1 |
| sl_hard_hit_percent | 41.5 |
| sl_exit_velocity_avg | 89.7 |
| sl_launch_angle_avg | 18.2 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 49.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.164 | 0.000 | 0.000 | Hitting_2B | 0.130 | 0.000 | -0.130 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_AB | 3.700 | 4.000 | 4.000 | Hitting_AB | 3.647 | 4.000 | 0.353 | 0.000 |
| predicted_AVG | 0.270 | 0.250 | 0.250 | Hitting_AVG | 0.286 | 0.250 | -0.036 | 0.000 |
| predicted_BB | 0.403 | 0.000 | 0.000 | Hitting_BB | 0.441 | 1.000 | -0.441 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Hitting_H | 1.042 | 1.000 | -0.042 | 0.000 |
| predicted_HR | 0.240 | 1.000 | 0.000 | Hitting_HR | 0.227 | 0.000 | 0.773 | 1.000 |
| predicted_OBP | 0.379 | 0.250 | 0.250 | Hitting_OBP | 0.381 | 0.400 | -0.131 | -0.150 |
| predicted_R | 0.507 | 1.000 | 1.000 | Hitting_R | 0.496 | 0.000 | 0.504 | 1.000 |
| predicted_RBI | 0.610 | 1.000 | 1.000 | Hitting_RBI | 0.702 | 0.000 | 0.298 | 1.000 |
| predicted_SLG | 0.551 | 1.000 | 0.250 | Hitting_SLG | 0.520 | 0.250 | 0.480 | 0.750 |
| predicted_SO | 1.119 | 0.000 | 1.000 | Hitting_SO | 1.105 | 2.000 | -1.105 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 9 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 4 |
| Better Metrics | 6 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_HR: 0.2400 -> 1.0000 (boost 0.7600, better) |
| Biggest Deboost | predicted_SO: 1.1190 -> 0.0000 (deboost -1.1190, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 4 | 0 | 4 | 0 | predicted_H: 1.0000 -> 1.0933 (boost 0.0933, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.0933 -> 1.0419 (deboost -0.0514, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 3 | 4 | predicted_RBI: 0.5911 -> 1.0000 (boost 0.4089, better) | predicted_BB: 0.3780 -> 0.0000 (deboost -0.3780, worse) | AB rounded to 4 (raw=3.73), rates preserved: AVG=0.280 HR/AB=0.070 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5060 -> 1.0000 (boost 0.4940, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5554 -> 0.2500 (deboost -0.3054, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 2 | 0 | predicted_HR: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5554 (boost 0.3054, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "575929",
"player_name": "Willson Contreras",
"position": "1B",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.164,
"predicted_3B": 0.03,
"predicted_AB": 3.7,
"predicted_AVG": 0.27,
"predicted_BB": 0.403,
"predicted_H": 1.0,
"predicted_HR": 0.24,
"predicted_OBP": 0.379,
"predicted_R": 0.507,
"predicted_RBI": 0.61,
"predicted_SLG": 0.551,
"predicted_SO": 1.119
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1923,
"predicted_3B": 0.0249,
"predicted_AB": 3.7275,
"predicted_AVG": 0.2929,
"predicted_BB": 0.3836,
"predicted_H": 1.0933,
"predicted_HBP": 0.191,
"predicted_HR": 0.2738,
"predicted_OBP": 0.3911,
"predicted_R": 0.5497,
"predicted_RBI": 0.6421,
"predicted_SLG": 0.5929,
"predicted_SO": 1.165
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.164,
"after": 0.1923,
"delta": 0.0283,
"percent_delta": 0.1726,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0249,
"delta": -0.0051,
"percent_delta": -0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7,
"after": 3.7275,
"delta": 0.0275,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2929,
"delta": 0.0229,
"percent_delta": 0.0848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.403,
"after": 0.3836,
"delta": -0.0194,
"percent_delta": -0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0933,
"delta": 0.0933,
"percent_delta": 0.0933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.24,
"after": 0.2738,
"delta": 0.0338,
"percent_delta": 0.1408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.379,
"after": 0.3911,
"delta": 0.0121,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.507,
"after": 0.5497,
"delta": 0.0427,
"percent_delta": 0.0842,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 0.6421,
"delta": 0.0321,
"percent_delta": 0.0526,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.551,
"after": 0.5929,
"delta": 0.0419,
"percent_delta": 0.076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.119,
"after": 1.165,
"delta": 0.046,
"percent_delta": 0.0411,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 1.0933,
"delta": 0.0933,
"percent_delta": 0.0933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1923,
"predicted_3B": 0.0249,
"predicted_AB": 3.7275,
"predicted_AVG": 0.2795,
"predicted_BB": 0.378,
"predicted_H": 1.0419,
"predicted_HBP": 0.191,
"predicted_HR": 0.2621,
"predicted_OBP": 0.3459,
"predicted_R": 0.506,
"predicted_RBI": 0.5911,
"predicted_SLG": 0.5554,
"predicted_SO": 1.1821
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1923,
"after": 0.1923,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0249,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7275,
"after": 3.7275,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2929,
"after": 0.2795,
"delta": -0.0134,
"percent_delta": -0.0457,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3836,
"after": 0.378,
"delta": -0.0056,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0933,
"after": 1.0419,
"delta": -0.0514,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.191,
"after": 0.191,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2738,
"after": 0.2621,
"delta": -0.0117,
"percent_delta": -0.0427,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3911,
"after": 0.3459,
"delta": -0.0452,
"percent_delta": -0.1156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5497,
"after": 0.506,
"delta": -0.0437,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6421,
"after": 0.5911,
"delta": -0.051,
"percent_delta": -0.0794,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5929,
"after": 0.5554,
"delta": -0.0375,
"percent_delta": -0.0632,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.165,
"after": 1.1821,
"delta": 0.0171,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0933,
"after": 1.0419,
"delta": -0.0514,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.73), rates preserved: AVG=0.280 HR/AB=0.070",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1923,
"after": 0.0,
"delta": -0.1923,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0,
"delta": -0.0249,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7275,
"after": 4.0,
"delta": 0.2725,
"percent_delta": 0.0731,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.378,
"after": 0.0,
"delta": -0.378,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0419,
"after": 1.0,
"delta": -0.0419,
"percent_delta": -0.0402,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.191,
"after": 0.0,
"delta": -0.191,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2621,
"after": 0.0,
"delta": -0.2621,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5911,
"after": 1.0,
"delta": 0.4089,
"percent_delta": 0.6918,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1821,
"after": 1.0,
"delta": -0.1821,
"percent_delta": -0.154,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5911,
"after": 1.0,
"delta": 0.4089,
"percent_delta": 0.6918,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.378,
"after": 0.0,
"delta": -0.378,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.506,
"after": 1.0,
"delta": 0.494,
"percent_delta": 0.9763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.506,
"after": 1.0,
"delta": 0.494,
"percent_delta": 0.9763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2795,
"after": 0.25,
"delta": -0.0295,
"percent_delta": -0.1055,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3459,
"after": 0.25,
"delta": -0.0959,
"percent_delta": -0.2772,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5554,
"after": 0.25,
"delta": -0.3054,
"percent_delta": -0.5499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5554,
"after": 0.25,
"delta": -0.3054,
"percent_delta": -0.5499,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2795,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3459,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5554,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2795,
"delta": 0.0295,
"percent_delta": 0.1181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3459,
"delta": 0.0959,
"percent_delta": 0.3834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5554,
"delta": 0.3054,
"percent_delta": 1.2215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5554,
"delta": 0.3054,
"percent_delta": 1.2215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.164,
"after": 0.0,
"delta": -0.164,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7,
"after": 4.0,
"delta": 0.3,
"percent_delta": 0.0811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.27,
"after": 0.2795,
"delta": 0.0095,
"percent_delta": 0.0352,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.403,
"after": 0.0,
"delta": -0.403,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.24,
"after": 1.0,
"delta": 0.76,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.379,
"after": 0.3459,
"delta": -0.0331,
"percent_delta": -0.0873,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.507,
"after": 1.0,
"delta": 0.493,
"percent_delta": 0.9724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 1.0,
"delta": 0.39,
"percent_delta": 0.6393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.551,
"after": 0.5554,
"delta": 0.0044,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.119,
"after": 0.0,
"delta": -1.119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 5,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.24,
"after": 1.0,
"delta": 0.76,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.119,
"after": 0.0,
"delta": -1.119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.164 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.700 | - |
| predicted_AVG | 0.270 | - |
| predicted_BB | 0.403 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.240 | - |
| predicted_OBP | 0.379 | - |
| predicted_R | 0.507 | - |
| predicted_RBI | 0.610 | - |
| predicted_SLG | 0.551 | - |
| predicted_SO | 1.119 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | 0.028 |
| predicted_3B | 0.025 | -0.005 |
| predicted_AB | 3.728 | 0.027 |
| predicted_AVG | 0.293 | 0.023 |
| predicted_BB | 0.384 | -0.019 |
| predicted_H | 1.093 | 0.093 |
| predicted_HBP | 0.191 | - |
| predicted_HR | 0.274 | 0.034 |
| predicted_OBP | 0.391 | 0.012 |
| predicted_R | 0.550 | 0.043 |
| predicted_RBI | 0.642 | 0.032 |
| predicted_SLG | 0.593 | 0.042 |
| predicted_SO | 1.165 | 0.046 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.192 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 3.728 | 0.000 |
| predicted_AVG | 0.280 | -0.013 |
| predicted_BB | 0.378 | -0.006 |
| predicted_H | 1.042 | -0.051 |
| predicted_HBP | 0.191 | 0.000 |
| predicted_HR | 0.262 | -0.012 |
| predicted_OBP | 0.346 | -0.045 |
| predicted_R | 0.506 | -0.044 |
| predicted_RBI | 0.591 | -0.051 |
| predicted_SLG | 0.555 | -0.037 |
| predicted_SO | 1.182 | 0.017 |
AB rounded to 4 (raw=3.73), rates preserved: AVG=0.280 HR/AB=0.070
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.192 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 4.000 | 0.272 |
| predicted_AVG | 0.250 | -0.030 |
| predicted_BB | 0.000 | -0.378 |
| predicted_H | 1.000 | -0.042 |
| predicted_HR | 0.000 | -0.262 |
| predicted_OBP | 0.250 | -0.096 |
| predicted_R | 1.000 | 0.494 |
| predicted_RBI | 1.000 | 0.409 |
| predicted_SLG | 0.250 | -0.305 |
| predicted_SO | 1.000 | -0.182 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 9.000 | 2.000 | 0.000 | 3.000 | 4.000 | 5.000 | 2.000 | 8.000 | 0.4500 | 0.5217 | 1.0000 | 0.4500 | 0.1500 | 0.2000 | 0.1000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 38.000 | 12.000 | 3.000 | 0.000 | 4.000 | 8.000 | 6.000 | 2.000 | 14.000 | 0.3158 | 0.3953 | 0.7105 | 0.3158 | 0.1053 | 0.2105 | 0.0526 | 0.3684 |
| season | 0.60 | 67 | - | 245.000 | 73.000 | 11.000 | 2.000 | 16.000 | 43.000 | 34.000 | 27.000 | 75.000 | 0.2980 | 0.3902 | 0.5551 | 0.2980 | 0.0653 | 0.1755 | 0.1102 | 0.3061 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2310 |
| predicted_3B | 0.0180 |
| predicted_AB | 3.7650 |
| predicted_AVG | 0.3243 |
| predicted_BB | 0.3570 |
| predicted_H | 1.2210 |
| predicted_HBP | 0.1910 |
| predicted_HR | 0.3200 |
| predicted_OBP | 0.4077 |
| predicted_R | 0.6080 |
| predicted_RBI | 0.6860 |
| predicted_SLG | 0.6501 |
| predicted_SO | 1.2280 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1640 | 0.2310 | 0.1923 | model_form_blend |
| predicted_3B | 0.0300 | 0.0180 | 0.0249 | model_form_blend |
| predicted_AB | 3.7000 | 3.7650 | 3.7275 | model_form_blend |
| predicted_AVG | 0.2700 | 0.3243 | 0.2929 | model_form_blend |
| predicted_BB | 0.4030 | 0.3570 | 0.3836 | model_form_blend |
| predicted_H | 1.0000 | 1.2210 | 1.0933 | model_form_blend |
| predicted_HBP | - | 0.1910 | 0.1910 | form_only |
| predicted_HR | 0.2400 | 0.3200 | 0.2738 | model_form_blend |
| predicted_OBP | 0.3790 | 0.4077 | 0.3911 | model_form_blend |
| predicted_R | 0.5070 | 0.6080 | 0.5497 | model_form_blend |
| predicted_RBI | 0.6100 | 0.6860 | 0.6421 | model_form_blend |
| predicted_SLG | 0.5510 | 0.6501 | 0.5929 | model_form_blend |
| predicted_SO | 1.1190 | 1.2280 | 1.1650 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 238 |
| Season rows before report date | 238 |
| Report year | 2026 |
| Profile rows used | 67 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.298 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 575929 |
| playerID | 575929 |
| playerName | Willson Contreras |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 26.0 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.405 |
| sl_xwoba | 0.383 |
| sl_xba | 0.266 |
| sl_xslg | 0.504 |
| sl_sweet_spot_percent | 33.5 |
| sl_barrel_batted_rate | 14.0 |
| sl_hard_hit_percent | 44.5 |
| sl_exit_velocity_avg | 90.1 |
| sl_launch_angle_avg | 16.9 |
| sl_whiff_percent | 30.3 |
| sl_swing_percent | 49.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.143 | 1.000 | 0.000 | Hitting_2B | 0.164 | 0.000 | 0.836 | 1.000 |
| predicted_3B | 0.036 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.490 | 4.000 | 3.000 | Hitting_AB | 3.492 | 4.000 | 0.508 | 0.000 |
| predicted_AVG | 0.233 | 0.250 | 0.333 | Hitting_AVG | 0.310 | 0.000 | -0.060 | 0.250 |
| predicted_BB | 0.250 | 0.000 | 0.000 | Hitting_BB | 0.213 | 1.000 | -0.213 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.082 | 0.000 | -0.082 | 0.000 |
| predicted_H | 0.820 | 1.000 | 1.000 | Hitting_H | 1.082 | 0.000 | -0.082 | 1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.301 | 0.250 | 0.333 | Hitting_OBP | 0.359 | 0.200 | -0.109 | 0.050 |
| predicted_R | 0.393 | 0.000 | 0.000 | Hitting_R | 0.541 | 0.000 | -0.541 | 0.000 |
| predicted_RBI | 0.350 | 0.000 | 0.000 | Hitting_RBI | 0.213 | 0.000 | -0.213 | 0.000 |
| predicted_SLG | 0.336 | 0.500 | 0.333 | Hitting_SLG | 0.366 | 0.000 | 0.134 | 0.500 |
| predicted_SO | 0.714 | 1.000 | 1.000 | Hitting_SO | 0.689 | 0.000 | 0.311 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_2B: 0.1430 -> 1.0000 (boost 0.8570, better) |
| Biggest Deboost | predicted_R: 0.3930 -> 0.0000 (deboost -0.3930, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3360 -> 0.3266 (deboost -0.0094, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.2993 -> 0.2777 (deboost -0.0216, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 0.7028 -> 1.0000 (boost 0.2972, worse) | predicted_AB: 3.4408 -> 3.0000 (deboost -0.4408, worse) | AB rounded to 3 (raw=3.49), rates preserved: AVG=0.215 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3491 -> 0.0000 (deboost -0.3491, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.2186 -> 0.3330 (boost 0.1144, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.2186 (deboost -0.1144, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681508",
"player_name": "Mickey Gasper",
"position": "DH",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.143,
"predicted_3B": 0.036,
"predicted_AB": 3.49,
"predicted_AVG": 0.233,
"predicted_BB": 0.25,
"predicted_H": 0.82,
"predicted_HR": 0.07,
"predicted_OBP": 0.301,
"predicted_R": 0.393,
"predicted_RBI": 0.35,
"predicted_SLG": 0.336,
"predicted_SO": 0.714
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1483,
"predicted_3B": 0.0356,
"predicted_AB": 3.4408,
"predicted_AVG": 0.2279,
"predicted_BB": 0.2859,
"predicted_H": 0.7891,
"predicted_HBP": 0.025,
"predicted_HR": 0.0536,
"predicted_OBP": 0.2993,
"predicted_R": 0.3793,
"predicted_RBI": 0.3256,
"predicted_SLG": 0.3266,
"predicted_SO": 0.6926
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.143,
"after": 0.1483,
"delta": 0.0053,
"percent_delta": 0.0371,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.036,
"after": 0.0356,
"delta": -0.0004,
"percent_delta": -0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.49,
"after": 3.4408,
"delta": -0.0492,
"percent_delta": -0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2279,
"delta": -0.0051,
"percent_delta": -0.0219,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.25,
"after": 0.2859,
"delta": 0.0359,
"percent_delta": 0.1436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 0.7891,
"delta": -0.0309,
"percent_delta": -0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0536,
"delta": -0.0164,
"percent_delta": -0.2343,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2993,
"delta": -0.0017,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.393,
"after": 0.3793,
"delta": -0.0137,
"percent_delta": -0.0349,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.3256,
"delta": -0.0244,
"percent_delta": -0.0697,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3266,
"delta": -0.0094,
"percent_delta": -0.028,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.714,
"after": 0.6926,
"delta": -0.0214,
"percent_delta": -0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3266,
"delta": -0.0094,
"percent_delta": -0.028,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 28
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1483,
"predicted_3B": 0.0356,
"predicted_AB": 3.4408,
"predicted_AVG": 0.2186,
"predicted_BB": 0.2817,
"predicted_H": 0.752,
"predicted_HBP": 0.025,
"predicted_HR": 0.0513,
"predicted_OBP": 0.2777,
"predicted_R": 0.3491,
"predicted_RBI": 0.2997,
"predicted_SLG": 0.3271,
"predicted_SO": 0.7028
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1483,
"after": 0.1483,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0356,
"after": 0.0356,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4408,
"after": 3.4408,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2279,
"after": 0.2186,
"delta": -0.0093,
"percent_delta": -0.0408,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2859,
"after": 0.2817,
"delta": -0.0042,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7891,
"after": 0.752,
"delta": -0.0371,
"percent_delta": -0.047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.025,
"after": 0.025,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0536,
"after": 0.0513,
"delta": -0.0023,
"percent_delta": -0.0429,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2993,
"after": 0.2777,
"delta": -0.0216,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3793,
"after": 0.3491,
"delta": -0.0302,
"percent_delta": -0.0796,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3256,
"after": 0.2997,
"delta": -0.0259,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3266,
"after": 0.3271,
"delta": 0.0005,
"percent_delta": 0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6926,
"after": 0.7028,
"delta": 0.0102,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2993,
"after": 0.2777,
"delta": -0.0216,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.49), rates preserved: AVG=0.215 HR/AB=0.015",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1483,
"after": 0.0,
"delta": -0.1483,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0356,
"after": 0.0,
"delta": -0.0356,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.4408,
"after": 3.0,
"delta": -0.4408,
"percent_delta": -0.1281,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2817,
"after": 0.0,
"delta": -0.2817,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.752,
"after": 1.0,
"delta": 0.248,
"percent_delta": 0.3298,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.025,
"after": 0.0,
"delta": -0.025,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0513,
"after": 0.0,
"delta": -0.0513,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2997,
"after": 0.0,
"delta": -0.2997,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7028,
"after": 1.0,
"delta": 0.2972,
"percent_delta": 0.4229,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7028,
"after": 1.0,
"delta": 0.2972,
"percent_delta": 0.4229,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.4408,
"after": 3.0,
"delta": -0.4408,
"percent_delta": -0.1281,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3491,
"after": 0.0,
"delta": -0.3491,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3491,
"after": 0.0,
"delta": -0.3491,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2186,
"after": 0.333,
"delta": 0.1144,
"percent_delta": 0.5233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2777,
"after": 0.333,
"delta": 0.0553,
"percent_delta": 0.1991,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3271,
"after": 0.333,
"delta": 0.0059,
"percent_delta": 0.018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2186,
"after": 0.333,
"delta": 0.1144,
"percent_delta": 0.5233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2186,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2777,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3271,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2186,
"delta": -0.1144,
"percent_delta": -0.3437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2777,
"delta": -0.0553,
"percent_delta": -0.1661,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3271,
"delta": -0.0059,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2186,
"delta": -0.1144,
"percent_delta": -0.3437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.143,
"after": 1.0,
"delta": 0.857,
"percent_delta": 5.993,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.036,
"after": 0.0,
"delta": -0.036,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.49,
"after": 4.0,
"delta": 0.51,
"percent_delta": 0.1461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2186,
"delta": -0.0144,
"percent_delta": -0.0618,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 1.0,
"delta": 0.18,
"percent_delta": 0.2195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2777,
"delta": -0.0233,
"percent_delta": -0.0774,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.393,
"after": 0.0,
"delta": -0.393,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3271,
"delta": -0.0089,
"percent_delta": -0.0265,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.714,
"after": 1.0,
"delta": 0.286,
"percent_delta": 0.4006,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.143,
"after": 1.0,
"delta": 0.857,
"percent_delta": 5.993,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.393,
"after": 0.0,
"delta": -0.393,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.143 | - |
| predicted_3B | 0.036 | - |
| predicted_AB | 3.490 | - |
| predicted_AVG | 0.233 | - |
| predicted_BB | 0.250 | - |
| predicted_H | 0.820 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.393 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.336 | - |
| predicted_SO | 0.714 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | 0.005 |
| predicted_3B | 0.036 | -0.000 |
| predicted_AB | 3.441 | -0.049 |
| predicted_AVG | 0.228 | -0.005 |
| predicted_BB | 0.286 | 0.036 |
| predicted_H | 0.789 | -0.031 |
| predicted_HBP | 0.025 | - |
| predicted_HR | 0.054 | -0.016 |
| predicted_OBP | 0.299 | -0.002 |
| predicted_R | 0.379 | -0.014 |
| predicted_RBI | 0.326 | -0.024 |
| predicted_SLG | 0.327 | -0.009 |
| predicted_SO | 0.693 | -0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.148 | 0.000 |
| predicted_3B | 0.036 | 0.000 |
| predicted_AB | 3.441 | 0.000 |
| predicted_AVG | 0.219 | -0.009 |
| predicted_BB | 0.282 | -0.004 |
| predicted_H | 0.752 | -0.037 |
| predicted_HBP | 0.025 | 0.000 |
| predicted_HR | 0.051 | -0.002 |
| predicted_OBP | 0.278 | -0.022 |
| predicted_R | 0.349 | -0.030 |
| predicted_RBI | 0.300 | -0.026 |
| predicted_SLG | 0.327 | 0.001 |
| predicted_SO | 0.703 | 0.010 |
AB rounded to 3 (raw=3.49), rates preserved: AVG=0.215 HR/AB=0.015
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.148 |
| predicted_3B | 0.000 | -0.036 |
| predicted_AB | 3.000 | -0.441 |
| predicted_AVG | 0.333 | 0.114 |
| predicted_BB | 0.000 | -0.282 |
| predicted_H | 1.000 | 0.248 |
| predicted_HR | 0.000 | -0.051 |
| predicted_OBP | 0.333 | 0.055 |
| predicted_R | 0.000 | -0.349 |
| predicted_RBI | 0.000 | -0.300 |
| predicted_SLG | 0.333 | 0.006 |
| predicted_SO | 1.000 | 0.297 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 2.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 3.000 | 1.000 | 0.1333 | 0.2778 | 0.2000 | 0.1333 | 0.0000 | 0.0667 | 0.2000 | 0.0667 |
| last_10 | 0.20 | 10 | - | 35.000 | 5.000 | 1.000 | 1.000 | 0.000 | 3.000 | 2.000 | 4.000 | 7.000 | 0.1429 | 0.2308 | 0.2286 | 0.1429 | 0.0000 | 0.0857 | 0.1143 | 0.2000 |
| season | 0.60 | 28 | - | 89.000 | 23.000 | 4.000 | 1.000 | 0.000 | 6.000 | 11.000 | 7.000 | 20.000 | 0.2584 | 0.3163 | 0.3258 | 0.2584 | 0.0000 | 0.0674 | 0.0786 | 0.2247 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1570 |
| predicted_3B | 0.0350 |
| predicted_AB | 3.3610 |
| predicted_AVG | 0.2197 |
| predicted_BB | 0.3440 |
| predicted_H | 0.7390 |
| predicted_HBP | 0.0250 |
| predicted_HR | 0.0270 |
| predicted_OBP | 0.2966 |
| predicted_R | 0.3570 |
| predicted_RBI | 0.2860 |
| predicted_SLG | 0.3113 |
| predicted_SO | 0.6580 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1430 | 0.1570 | 0.1483 | model_form_blend |
| predicted_3B | 0.0360 | 0.0350 | 0.0356 | model_form_blend |
| predicted_AB | 3.4900 | 3.3610 | 3.4408 | model_form_blend |
| predicted_AVG | 0.2330 | 0.2197 | 0.2279 | model_form_blend |
| predicted_BB | 0.2500 | 0.3440 | 0.2859 | model_form_blend |
| predicted_H | 0.8200 | 0.7390 | 0.7891 | model_form_blend |
| predicted_HBP | - | 0.0250 | 0.0250 | form_only |
| predicted_HR | 0.0700 | 0.0270 | 0.0536 | model_form_blend |
| predicted_OBP | 0.3010 | 0.2966 | 0.2993 | model_form_blend |
| predicted_R | 0.3930 | 0.3570 | 0.3793 | model_form_blend |
| predicted_RBI | 0.3500 | 0.2860 | 0.3256 | model_form_blend |
| predicted_SLG | 0.3360 | 0.3113 | 0.3266 | model_form_blend |
| predicted_SO | 0.7140 | 0.6580 | 0.6926 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 61 |
| Season rows before report date | 61 |
| Report year | 2026 |
| Profile rows used | 28 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.258 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 681508 |
| playerID | 681508 |
| playerName | Mickey Gasper |
| pos | C |
| started | True |
| startingPosition | C |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.29 |
| sl_xwoba | 0.282 |
| sl_xba | 0.225 |
| sl_xslg | 0.339 |
| sl_sweet_spot_percent | 29.6 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 40.8 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 15.6 |
| sl_whiff_percent | 19.6 |
| sl_swing_percent | 42.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.227 | 0.000 | 0.000 | Hitting_2B | 0.198 | 0.000 | -0.198 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.046 | 0.000 | -0.046 | 0.000 |
| predicted_AB | 3.960 | 4.000 | 4.000 | Hitting_AB | 3.774 | 5.000 | 0.226 | -1.000 |
| predicted_AVG | 0.255 | 0.000 | 0.250 | Hitting_AVG | 0.284 | 0.200 | -0.284 | -0.200 |
| predicted_BB | 0.212 | 0.000 | 0.000 | Hitting_BB | 0.244 | 0.000 | -0.244 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.088 | 0.000 | -0.088 | 0.000 |
| predicted_H | 1.010 | 0.000 | 1.000 | Hitting_H | 1.074 | 1.000 | -1.074 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.092 | 0.000 | -0.092 | 0.000 |
| predicted_OBP | 0.325 | 0.000 | 0.250 | Hitting_OBP | 0.347 | 0.200 | -0.347 | -0.200 |
| predicted_R | 0.439 | 0.000 | 0.000 | Hitting_R | 0.465 | 0.000 | -0.465 | 0.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.452 | 0.000 | -0.452 | 0.000 |
| predicted_SLG | 0.439 | 0.000 | 0.250 | Hitting_SLG | 0.435 | 0.200 | -0.435 | -0.200 |
| predicted_SO | 0.833 | 1.000 | 1.000 | Hitting_SO | 0.866 | 1.000 | 0.134 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 8 |
| Better Metrics | 0 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.8330 -> 1.0000 (boost 0.1670, worse) |
| Biggest Deboost | predicted_H: 1.0100 -> 0.0000 (deboost -1.0100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 3 | 0 | 3 | 0 | predicted_H: 1.0100 -> 1.0790 (boost 0.0690, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 4 | 0 | 4 | 0 | 4 | - | predicted_H: 1.0790 -> 1.0283 (deboost -0.0507, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_RBI: 0.5353 -> 1.0000 (boost 0.4647, better) | predicted_2B: 0.2556 -> 0.0000 (deboost -0.2556, worse) | AB rounded to 4 (raw=3.98), rates preserved: AVG=0.259 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4215 -> 0.0000 (deboost -0.4215, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4325 -> 0.2500 (deboost -0.1825, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 0 | 2 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.4325 (boost 0.1825, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678882",
"player_name": "Ceddanne Rafaela",
"position": "CF",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.227,
"predicted_3B": 0.03,
"predicted_AB": 3.96,
"predicted_AVG": 0.255,
"predicted_BB": 0.212,
"predicted_H": 1.01,
"predicted_HR": 0.13,
"predicted_OBP": 0.325,
"predicted_R": 0.439,
"predicted_RBI": 0.55,
"predicted_SLG": 0.439,
"predicted_SO": 0.833
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2556,
"predicted_3B": 0.0254,
"predicted_AB": 3.9768,
"predicted_AVG": 0.2712,
"predicted_BB": 0.1943,
"predicted_H": 1.079,
"predicted_HBP": 0.056,
"predicted_HR": 0.1342,
"predicted_OBP": 0.3278,
"predicted_R": 0.4579,
"predicted_RBI": 0.5815,
"predicted_SLG": 0.4572,
"predicted_SO": 0.8317
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.2556,
"delta": 0.0286,
"percent_delta": 0.126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0254,
"delta": -0.0046,
"percent_delta": -0.1533,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.96,
"after": 3.9768,
"delta": 0.0168,
"percent_delta": 0.0042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2712,
"delta": 0.0162,
"percent_delta": 0.0635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.212,
"after": 0.1943,
"delta": -0.0177,
"percent_delta": -0.0835,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.079,
"delta": 0.069,
"percent_delta": 0.0683,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1342,
"delta": 0.0042,
"percent_delta": 0.0323,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3278,
"delta": 0.0028,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 0.4579,
"delta": 0.0189,
"percent_delta": 0.0431,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5815,
"delta": 0.0315,
"percent_delta": 0.0573,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.439,
"after": 0.4572,
"delta": 0.0182,
"percent_delta": 0.0415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.833,
"after": 0.8317,
"delta": -0.0013,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.01,
"after": 1.079,
"delta": 0.069,
"percent_delta": 0.0683,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2556,
"predicted_3B": 0.0254,
"predicted_AB": 3.9768,
"predicted_AVG": 0.2586,
"predicted_BB": 0.1914,
"predicted_H": 1.0283,
"predicted_HBP": 0.056,
"predicted_HR": 0.1284,
"predicted_OBP": 0.2926,
"predicted_R": 0.4215,
"predicted_RBI": 0.5353,
"predicted_SLG": 0.4325,
"predicted_SO": 0.8439
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2556,
"after": 0.2556,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0254,
"after": 0.0254,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9768,
"after": 3.9768,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2712,
"after": 0.2586,
"delta": -0.0126,
"percent_delta": -0.0465,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1943,
"after": 0.1914,
"delta": -0.0029,
"percent_delta": -0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.079,
"after": 1.0283,
"delta": -0.0507,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.056,
"after": 0.056,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1342,
"after": 0.1284,
"delta": -0.0058,
"percent_delta": -0.0432,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3278,
"after": 0.2926,
"delta": -0.0352,
"percent_delta": -0.1074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4579,
"after": 0.4215,
"delta": -0.0364,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5815,
"after": 0.5353,
"delta": -0.0462,
"percent_delta": -0.0794,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4572,
"after": 0.4325,
"delta": -0.0247,
"percent_delta": -0.054,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8317,
"after": 0.8439,
"delta": 0.0122,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.079,
"after": 1.0283,
"delta": -0.0507,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.98), rates preserved: AVG=0.259 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2556,
"after": 0.0,
"delta": -0.2556,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0254,
"after": 0.0,
"delta": -0.0254,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.9768,
"after": 4.0,
"delta": 0.0232,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.1914,
"after": 0.0,
"delta": -0.1914,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0283,
"after": 1.0,
"delta": -0.0283,
"percent_delta": -0.0275,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.056,
"after": 0.0,
"delta": -0.056,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1284,
"after": 0.0,
"delta": -0.1284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5353,
"after": 1.0,
"delta": 0.4647,
"percent_delta": 0.8681,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8439,
"after": 1.0,
"delta": 0.1561,
"percent_delta": 0.185,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.5353,
"after": 1.0,
"delta": 0.4647,
"percent_delta": 0.8681,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2556,
"after": 0.0,
"delta": -0.2556,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4215,
"after": 0.0,
"delta": -0.4215,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4215,
"after": 0.0,
"delta": -0.4215,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2586,
"after": 0.25,
"delta": -0.0086,
"percent_delta": -0.0333,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2926,
"after": 0.25,
"delta": -0.0426,
"percent_delta": -0.1456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4325,
"after": 0.25,
"delta": -0.1825,
"percent_delta": -0.422,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4325,
"after": 0.25,
"delta": -0.1825,
"percent_delta": -0.422,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2586,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2926,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4325,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2586,
"delta": 0.0086,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2926,
"delta": 0.0426,
"percent_delta": 0.1705,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4325,
"delta": 0.1825,
"percent_delta": 0.73,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4325,
"delta": 0.1825,
"percent_delta": 0.73,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.0,
"delta": -0.227,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.96,
"after": 4.0,
"delta": 0.04,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2586,
"delta": 0.0036,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.212,
"after": 0.0,
"delta": -0.212,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 0.0,
"delta": -1.01,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.2926,
"delta": -0.0324,
"percent_delta": -0.0997,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 0.0,
"delta": -0.439,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.439,
"after": 0.4325,
"delta": -0.0065,
"percent_delta": -0.0148,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.833,
"after": 1.0,
"delta": 0.167,
"percent_delta": 0.2005,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 0,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.833,
"after": 1.0,
"delta": 0.167,
"percent_delta": 0.2005,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.01,
"after": 0.0,
"delta": -1.01,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.227 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.960 | - |
| predicted_AVG | 0.255 | - |
| predicted_BB | 0.212 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.439 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.439 | - |
| predicted_SO | 0.833 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.256 | 0.029 |
| predicted_3B | 0.025 | -0.005 |
| predicted_AB | 3.977 | 0.017 |
| predicted_AVG | 0.271 | 0.016 |
| predicted_BB | 0.194 | -0.018 |
| predicted_H | 1.079 | 0.069 |
| predicted_HBP | 0.056 | - |
| predicted_HR | 0.134 | 0.004 |
| predicted_OBP | 0.328 | 0.003 |
| predicted_R | 0.458 | 0.019 |
| predicted_RBI | 0.582 | 0.031 |
| predicted_SLG | 0.457 | 0.018 |
| predicted_SO | 0.832 | -0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.256 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 3.977 | 0.000 |
| predicted_AVG | 0.259 | -0.013 |
| predicted_BB | 0.191 | -0.003 |
| predicted_H | 1.028 | -0.051 |
| predicted_HBP | 0.056 | 0.000 |
| predicted_HR | 0.128 | -0.006 |
| predicted_OBP | 0.293 | -0.035 |
| predicted_R | 0.421 | -0.036 |
| predicted_RBI | 0.535 | -0.046 |
| predicted_SLG | 0.432 | -0.025 |
| predicted_SO | 0.844 | 0.012 |
AB rounded to 4 (raw=3.98), rates preserved: AVG=0.259 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.256 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 4.000 | 0.023 |
| predicted_AVG | 0.250 | -0.009 |
| predicted_BB | 0.000 | -0.191 |
| predicted_H | 1.000 | -0.028 |
| predicted_HR | 0.000 | -0.128 |
| predicted_OBP | 0.250 | -0.043 |
| predicted_R | 0.000 | -0.421 |
| predicted_RBI | 1.000 | 0.465 |
| predicted_SLG | 0.250 | -0.182 |
| predicted_SO | 1.000 | 0.156 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 23.000 | 8.000 | 3.000 | 0.000 | 1.000 | 5.000 | 3.000 | 0.000 | 4.000 | 0.3478 | 0.3478 | 0.6087 | 0.3478 | 0.0435 | 0.2174 | 0.0000 | 0.1739 |
| last_10 | 0.20 | 10 | - | 42.000 | 12.000 | 3.000 | 0.000 | 2.000 | 8.000 | 5.000 | 1.000 | 8.000 | 0.2857 | 0.3023 | 0.5000 | 0.2857 | 0.0476 | 0.1905 | 0.0238 | 0.1905 |
| season | 0.60 | 66 | - | 248.000 | 71.000 | 15.000 | 2.000 | 7.000 | 32.000 | 29.000 | 14.000 | 55.000 | 0.2863 | 0.3396 | 0.4476 | 0.2863 | 0.0282 | 0.1290 | 0.0565 | 0.2218 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2950 |
| predicted_3B | 0.0190 |
| predicted_AB | 4.0000 |
| predicted_AVG | 0.2936 |
| predicted_BB | 0.1700 |
| predicted_H | 1.1740 |
| predicted_HBP | 0.0560 |
| predicted_HR | 0.1400 |
| predicted_OBP | 0.3317 |
| predicted_R | 0.4840 |
| predicted_RBI | 0.6250 |
| predicted_SLG | 0.4822 |
| predicted_SO | 0.8300 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2270 | 0.2950 | 0.2556 | model_form_blend |
| predicted_3B | 0.0300 | 0.0190 | 0.0254 | model_form_blend |
| predicted_AB | 3.9600 | 4.0000 | 3.9768 | model_form_blend |
| predicted_AVG | 0.2550 | 0.2936 | 0.2712 | model_form_blend |
| predicted_BB | 0.2120 | 0.1700 | 0.1943 | model_form_blend |
| predicted_H | 1.0100 | 1.1740 | 1.0790 | model_form_blend |
| predicted_HBP | - | 0.0560 | 0.0560 | form_only |
| predicted_HR | 0.1300 | 0.1400 | 0.1342 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3317 | 0.3278 | model_form_blend |
| predicted_R | 0.4390 | 0.4840 | 0.4579 | model_form_blend |
| predicted_RBI | 0.5500 | 0.6250 | 0.5815 | model_form_blend |
| predicted_SLG | 0.4390 | 0.4822 | 0.4572 | model_form_blend |
| predicted_SO | 0.8330 | 0.8300 | 0.8317 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 217 |
| Season rows before report date | 217 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.286 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 678882 |
| playerID | 678882 |
| playerName | Ceddanne Rafaela |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 20.5 |
| sl_bb_percent | 5.2 |
| sl_woba | 0.346 |
| sl_xwoba | 0.296 |
| sl_xba | 0.246 |
| sl_xslg | 0.366 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 36.3 |
| sl_exit_velocity_avg | 86.6 |
| sl_launch_angle_avg | 10.7 |
| sl_whiff_percent | 24.2 |
| sl_swing_percent | 52.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.900 | 3.000 | 3.000 | Hitting_AB | 2.811 | 2.000 | 0.189 | 1.000 |
| predicted_AVG | 0.279 | 0.000 | 0.333 | Hitting_AVG | 0.312 | 0.500 | -0.312 | -0.500 |
| predicted_BB | 0.300 | 1.000 | 0.000 | Hitting_BB | 0.389 | 2.000 | 0.611 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_H | 0.720 | 0.000 | 1.000 | Hitting_H | 0.878 | 1.000 | -0.878 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_OBP | 0.336 | 0.250 | 0.333 | Hitting_OBP | 0.396 | 0.750 | -0.146 | -0.500 |
| predicted_R | 0.450 | 0.000 | 0.000 | Hitting_R | 0.522 | 0.000 | -0.522 | 0.000 |
| predicted_RBI | 0.280 | 0.000 | 0.000 | Hitting_RBI | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_SLG | 0.358 | 0.000 | 0.333 | Hitting_SLG | 0.375 | 0.500 | -0.375 | -0.500 |
| predicted_SO | 0.450 | 2.000 | 0.000 | Hitting_SO | 0.400 | 0.000 | 1.600 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.4500 -> 2.0000 (boost 1.5500, worse) |
| Biggest Deboost | predicted_H: 0.7200 -> 0.0000 (deboost -0.7200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 2 | 1 | 2 | 1 | predicted_AB: 2.9000 -> 3.0298 (boost 0.1298, better) | predicted_SLG: 0.3580 -> 0.3518 (deboost -0.0062, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2784 -> 0.2483 (deboost -0.0301, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 2 | 3 | predicted_H: 0.7523 -> 1.0000 (boost 0.2477, better) | predicted_SO: 0.4782 -> 0.0000 (deboost -0.4782, better) | AB rounded to 3 (raw=3.03), rates preserved: AVG=0.248 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4200 -> 0.0000 (deboost -0.4200, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 2 | 0 | 2 | 0 | predicted_AVG: 0.2483 -> 0.3330 (boost 0.0847, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_SO: 0.0000 -> 2.0000 (boost 2.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.3330 -> 0.2483 (deboost -0.0847, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "643396",
"player_name": "Isiah Kiner-Falefa",
"position": "SS",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.0,
"predicted_AB": 2.9,
"predicted_AVG": 0.279,
"predicted_BB": 0.3,
"predicted_H": 0.72,
"predicted_HR": 0.06,
"predicted_OBP": 0.336,
"predicted_R": 0.45,
"predicted_RBI": 0.28,
"predicted_SLG": 0.358,
"predicted_SO": 0.45
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1004,
"predicted_3B": 0.0008,
"predicted_AB": 3.0298,
"predicted_AVG": 0.2784,
"predicted_BB": 0.3138,
"predicted_H": 0.7894,
"predicted_HBP": 0.006,
"predicted_HR": 0.0501,
"predicted_OBP": 0.3403,
"predicted_R": 0.4563,
"predicted_RBI": 0.2654,
"predicted_SLG": 0.3518,
"predicted_SO": 0.4713
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.1004,
"delta": 0.0004,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9,
"after": 3.0298,
"delta": 0.1298,
"percent_delta": 0.0448,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.279,
"after": 0.2784,
"delta": -0.0006,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.3138,
"delta": 0.0138,
"percent_delta": 0.046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 0.7894,
"delta": 0.0694,
"percent_delta": 0.0964,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0501,
"delta": -0.0099,
"percent_delta": -0.165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.336,
"after": 0.3403,
"delta": 0.0043,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.45,
"after": 0.4563,
"delta": 0.0063,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.2654,
"delta": -0.0146,
"percent_delta": -0.0521,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.3518,
"delta": -0.0062,
"percent_delta": -0.0173,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.45,
"after": 0.4713,
"delta": 0.0213,
"percent_delta": 0.0473,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.9,
"after": 3.0298,
"delta": 0.1298,
"percent_delta": 0.0448,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.3518,
"delta": -0.0062,
"percent_delta": -0.0173,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1004,
"predicted_3B": 0.0008,
"predicted_AB": 3.0298,
"predicted_AVG": 0.2483,
"predicted_BB": 0.3092,
"predicted_H": 0.7523,
"predicted_HBP": 0.006,
"predicted_HR": 0.048,
"predicted_OBP": 0.3179,
"predicted_R": 0.42,
"predicted_RBI": 0.2443,
"predicted_SLG": 0.3294,
"predicted_SO": 0.4782
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1004,
"after": 0.1004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0298,
"after": 3.0298,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2784,
"after": 0.2483,
"delta": -0.0301,
"percent_delta": -0.1081,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3138,
"after": 0.3092,
"delta": -0.0046,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7894,
"after": 0.7523,
"delta": -0.0371,
"percent_delta": -0.047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0501,
"after": 0.048,
"delta": -0.0021,
"percent_delta": -0.0419,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3403,
"after": 0.3179,
"delta": -0.0224,
"percent_delta": -0.0658,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4563,
"after": 0.42,
"delta": -0.0363,
"percent_delta": -0.0796,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2654,
"after": 0.2443,
"delta": -0.0211,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3518,
"after": 0.3294,
"delta": -0.0224,
"percent_delta": -0.0637,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4713,
"after": 0.4782,
"delta": 0.0069,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2784,
"after": 0.2483,
"delta": -0.0301,
"percent_delta": -0.1081,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.03), rates preserved: AVG=0.248 HR/AB=0.016",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1004,
"after": 0.0,
"delta": -0.1004,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0298,
"after": 3.0,
"delta": -0.0298,
"percent_delta": -0.0098,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3092,
"after": 0.0,
"delta": -0.3092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7523,
"after": 1.0,
"delta": 0.2477,
"percent_delta": 0.3293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.048,
"after": 0.0,
"delta": -0.048,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2443,
"after": 0.0,
"delta": -0.2443,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4782,
"after": 0.0,
"delta": -0.4782,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7523,
"after": 1.0,
"delta": 0.2477,
"percent_delta": 0.3293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4782,
"after": 0.0,
"delta": -0.4782,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2483,
"after": 0.333,
"delta": 0.0847,
"percent_delta": 0.3411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3179,
"after": 0.333,
"delta": 0.0151,
"percent_delta": 0.0475,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3294,
"after": 0.333,
"delta": 0.0036,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2483,
"after": 0.333,
"delta": 0.0847,
"percent_delta": 0.3411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2483,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3179,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3294,
"predicted_SO": 2.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2483,
"delta": -0.0847,
"percent_delta": -0.2544,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3179,
"delta": -0.0151,
"percent_delta": -0.0453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3294,
"delta": -0.0036,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2483,
"delta": -0.0847,
"percent_delta": -0.2544,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9,
"after": 3.0,
"delta": 0.1,
"percent_delta": 0.0345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.279,
"after": 0.2483,
"delta": -0.0307,
"percent_delta": -0.11,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 0.0,
"delta": -0.72,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.336,
"after": 0.3179,
"delta": -0.0181,
"percent_delta": -0.0539,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.0,
"delta": -0.28,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.3294,
"delta": -0.0286,
"percent_delta": -0.0799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.45,
"after": 2.0,
"delta": 1.55,
"percent_delta": 3.4444,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.45,
"after": 2.0,
"delta": 1.55,
"percent_delta": 3.4444,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.72,
"after": 0.0,
"delta": -0.72,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.900 | - |
| predicted_AVG | 0.279 | - |
| predicted_BB | 0.300 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.336 | - |
| predicted_R | 0.450 | - |
| predicted_RBI | 0.280 | - |
| predicted_SLG | 0.358 | - |
| predicted_SO | 0.450 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | 0.000 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.030 | 0.130 |
| predicted_AVG | 0.278 | -0.001 |
| predicted_BB | 0.314 | 0.014 |
| predicted_H | 0.789 | 0.069 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.050 | -0.010 |
| predicted_OBP | 0.340 | 0.004 |
| predicted_R | 0.456 | 0.006 |
| predicted_RBI | 0.265 | -0.015 |
| predicted_SLG | 0.352 | -0.006 |
| predicted_SO | 0.471 | 0.021 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.030 | 0.000 |
| predicted_AVG | 0.248 | -0.030 |
| predicted_BB | 0.309 | -0.005 |
| predicted_H | 0.752 | -0.037 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.048 | -0.002 |
| predicted_OBP | 0.318 | -0.022 |
| predicted_R | 0.420 | -0.036 |
| predicted_RBI | 0.244 | -0.021 |
| predicted_SLG | 0.329 | -0.022 |
| predicted_SO | 0.478 | 0.007 |
AB rounded to 3 (raw=3.03), rates preserved: AVG=0.248 HR/AB=0.016
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.100 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.030 |
| predicted_AVG | 0.333 | 0.085 |
| predicted_BB | 0.000 | -0.309 |
| predicted_H | 1.000 | 0.248 |
| predicted_HR | 0.000 | -0.048 |
| predicted_OBP | 0.333 | 0.015 |
| predicted_R | 0.000 | -0.420 |
| predicted_RBI | 0.000 | -0.244 |
| predicted_SLG | 0.333 | 0.004 |
| predicted_SO | 0.000 | -0.478 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 0.3333 | 0.4000 | 0.3333 | 0.3333 | 0.0000 | 0.0000 | 0.1111 | 0.1111 |
| last_10 | 0.20 | 10 | - | 31.000 | 8.000 | 1.000 | 0.000 | 0.000 | 0.000 | 5.000 | 4.000 | 4.000 | 0.2581 | 0.3429 | 0.2903 | 0.2581 | 0.0000 | 0.0000 | 0.1290 | 0.1290 |
| season | 0.60 | 40 | - | 116.000 | 32.000 | 4.000 | 0.000 | 1.000 | 12.000 | 18.000 | 12.000 | 18.000 | 0.2759 | 0.3438 | 0.3362 | 0.2759 | 0.0086 | 0.1035 | 0.1035 | 0.1552 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1010 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.2290 |
| predicted_AVG | 0.2775 |
| predicted_BB | 0.3350 |
| predicted_H | 0.8960 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0350 |
| predicted_OBP | 0.3470 |
| predicted_R | 0.4660 |
| predicted_RBI | 0.2430 |
| predicted_SLG | 0.3423 |
| predicted_SO | 0.5040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.1010 | 0.1004 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9000 | 3.2290 | 3.0298 | model_form_blend |
| predicted_AVG | 0.2790 | 0.2775 | 0.2784 | model_form_blend |
| predicted_BB | 0.3000 | 0.3350 | 0.3138 | model_form_blend |
| predicted_H | 0.7200 | 0.8960 | 0.7894 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0600 | 0.0350 | 0.0501 | model_form_blend |
| predicted_OBP | 0.3360 | 0.3470 | 0.3403 | model_form_blend |
| predicted_R | 0.4500 | 0.4660 | 0.4563 | model_form_blend |
| predicted_RBI | 0.2800 | 0.2430 | 0.2654 | model_form_blend |
| predicted_SLG | 0.3580 | 0.3423 | 0.3518 | model_form_blend |
| predicted_SO | 0.4500 | 0.5040 | 0.4713 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 90 |
| Season rows before report date | 90 |
| Report year | 2026 |
| Profile rows used | 40 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.276 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 2 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 2 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 643396 |
| playerID | 643396 |
| playerName | Isiah Kiner-Falefa |
| pos | 2B |
| started | True |
| startingPosition | 3B |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 14.0 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.31 |
| sl_xwoba | 0.319 |
| sl_xba | 0.284 |
| sl_xslg | 0.358 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 3.1 |
| sl_hard_hit_percent | 26.3 |
| sl_exit_velocity_avg | 82.2 |
| sl_launch_angle_avg | 8.5 |
| sl_whiff_percent | 17.8 |
| sl_swing_percent | 49.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.308 | 0.000 | 0.000 | Hitting_2B | 0.307 | 0.000 | -0.307 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.923 | 4.000 | 3.000 | Hitting_AB | 2.960 | 2.000 | 1.040 | 2.000 |
| predicted_AVG | 0.262 | 0.250 | 0.333 | Hitting_AVG | 0.248 | 1.000 | 0.002 | -0.750 |
| predicted_BB | 0.308 | 0.000 | 0.000 | Hitting_BB | 0.320 | 1.000 | -0.320 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.270 | 1.000 | 1.000 | Hitting_H | 0.733 | 2.000 | 0.267 | -1.000 |
| predicted_HR | 0.020 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.339 | 0.250 | 0.333 | Hitting_OBP | 0.343 | 1.000 | -0.093 | -0.750 |
| predicted_R | 0.385 | 0.000 | 0.000 | Hitting_R | 0.320 | 0.000 | -0.320 | 0.000 |
| predicted_RBI | 0.150 | 0.000 | 0.000 | Hitting_RBI | 0.427 | 0.000 | -0.427 | 0.000 |
| predicted_SLG | 0.388 | 0.250 | 0.333 | Hitting_SLG | 0.351 | 1.000 | -0.101 | -0.750 |
| predicted_SO | 0.731 | 1.000 | 1.000 | Hitting_SO | 0.720 | 0.000 | 0.280 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 2.9230 -> 4.0000 (boost 1.0770, better) |
| Biggest Deboost | predicted_R: 0.3850 -> 0.0000 (deboost -0.3850, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 7 | 0 | 7 | 0 | predicted_H: 0.2700 -> 0.5085 (boost 0.2385, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3946 -> 0.2822 (deboost -0.1124, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 0 | 6 | predicted_SO: 0.7642 -> 1.0000 (boost 0.2358, worse) | predicted_H: 0.4846 -> 0.0000 (deboost -0.4846, worse) | AB rounded to 3 (raw=2.99), rates preserved: AVG=0.162 HR/AB=0.007 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.4079 -> 0.0000 (deboost -0.4079, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1618 -> 0.3330 (boost 0.1712, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1618 (deboost -0.1712, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "657136",
"player_name": "Connor Wong",
"position": "C",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.308,
"predicted_3B": 0.0,
"predicted_AB": 2.923,
"predicted_AVG": 0.262,
"predicted_BB": 0.308,
"predicted_H": 0.27,
"predicted_HR": 0.02,
"predicted_OBP": 0.339,
"predicted_R": 0.385,
"predicted_RBI": 0.15,
"predicted_SLG": 0.388,
"predicted_SO": 0.731
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2934,
"predicted_3B": 0.0011,
"predicted_AB": 2.9943,
"predicted_AVG": 0.2728,
"predicted_BB": 0.3343,
"predicted_H": 0.5085,
"predicted_HBP": 0.114,
"predicted_HR": 0.0226,
"predicted_OBP": 0.356,
"predicted_R": 0.4431,
"predicted_RBI": 0.2198,
"predicted_SLG": 0.3946,
"predicted_SO": 0.7531
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.308,
"after": 0.2934,
"delta": -0.0146,
"percent_delta": -0.0474,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0011,
"delta": 0.0011,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.923,
"after": 2.9943,
"delta": 0.0713,
"percent_delta": 0.0244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2728,
"delta": 0.0108,
"percent_delta": 0.0412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.308,
"after": 0.3343,
"delta": 0.0263,
"percent_delta": 0.0854,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 0.5085,
"delta": 0.2385,
"percent_delta": 0.8833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.0226,
"delta": 0.0026,
"percent_delta": 0.13,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.356,
"delta": 0.017,
"percent_delta": 0.0501,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.385,
"after": 0.4431,
"delta": 0.0581,
"percent_delta": 0.1509,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.2198,
"delta": 0.0698,
"percent_delta": 0.4653,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.388,
"after": 0.3946,
"delta": 0.0066,
"percent_delta": 0.017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.731,
"after": 0.7531,
"delta": 0.0221,
"percent_delta": 0.0302,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 7,
"deboosted_metrics": 0,
"better_metrics": 7,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.27,
"after": 0.5085,
"delta": 0.2385,
"percent_delta": 0.8833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 26
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2934,
"predicted_3B": 0.0011,
"predicted_AB": 2.9943,
"predicted_AVG": 0.1618,
"predicted_BB": 0.3294,
"predicted_H": 0.4846,
"predicted_HBP": 0.114,
"predicted_HR": 0.0216,
"predicted_OBP": 0.2449,
"predicted_R": 0.4079,
"predicted_RBI": 0.2023,
"predicted_SLG": 0.2822,
"predicted_SO": 0.7642
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2934,
"after": 0.2934,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0011,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9943,
"after": 2.9943,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2728,
"after": 0.1618,
"delta": -0.111,
"percent_delta": -0.4069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3343,
"after": 0.3294,
"delta": -0.0049,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5085,
"after": 0.4846,
"delta": -0.0239,
"percent_delta": -0.047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.114,
"after": 0.114,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0226,
"after": 0.0216,
"delta": -0.001,
"percent_delta": -0.0442,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.356,
"after": 0.2449,
"delta": -0.1111,
"percent_delta": -0.3121,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4431,
"after": 0.4079,
"delta": -0.0352,
"percent_delta": -0.0794,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2198,
"after": 0.2023,
"delta": -0.0175,
"percent_delta": -0.0796,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3946,
"after": 0.2822,
"delta": -0.1124,
"percent_delta": -0.2848,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7531,
"after": 0.7642,
"delta": 0.0111,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3946,
"after": 0.2822,
"delta": -0.1124,
"percent_delta": -0.2848,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.99), rates preserved: AVG=0.162 HR/AB=0.007",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2934,
"after": 0.0,
"delta": -0.2934,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0011,
"after": 0.0,
"delta": -0.0011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9943,
"after": 3.0,
"delta": 0.0057,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3294,
"after": 0.0,
"delta": -0.3294,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4846,
"after": 0.0,
"delta": -0.4846,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.114,
"after": 0.0,
"delta": -0.114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0216,
"after": 0.0,
"delta": -0.0216,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2023,
"after": 0.0,
"delta": -0.2023,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7642,
"after": 1.0,
"delta": 0.2358,
"percent_delta": 0.3086,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7642,
"after": 1.0,
"delta": 0.2358,
"percent_delta": 0.3086,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4846,
"after": 0.0,
"delta": -0.4846,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4079,
"after": 0.0,
"delta": -0.4079,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4079,
"after": 0.0,
"delta": -0.4079,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1618,
"after": 0.333,
"delta": 0.1712,
"percent_delta": 1.0581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2449,
"after": 0.333,
"delta": 0.0881,
"percent_delta": 0.3597,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2822,
"after": 0.333,
"delta": 0.0508,
"percent_delta": 0.18,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1618,
"after": 0.333,
"delta": 0.1712,
"percent_delta": 1.0581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1618,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2449,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2822,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1618,
"delta": -0.1712,
"percent_delta": -0.514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2449,
"delta": -0.0881,
"percent_delta": -0.2646,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2822,
"delta": -0.0508,
"percent_delta": -0.1525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1618,
"delta": -0.1712,
"percent_delta": -0.514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.308,
"after": 0.0,
"delta": -0.308,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.923,
"after": 4.0,
"delta": 1.077,
"percent_delta": 0.3685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.1618,
"delta": -0.1002,
"percent_delta": -0.3824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.308,
"after": 0.0,
"delta": -0.308,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.2449,
"delta": -0.0941,
"percent_delta": -0.2776,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.385,
"after": 0.0,
"delta": -0.385,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.388,
"after": 0.2822,
"delta": -0.1058,
"percent_delta": -0.2727,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.731,
"after": 1.0,
"delta": 0.269,
"percent_delta": 0.368,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.923,
"after": 4.0,
"delta": 1.077,
"percent_delta": 0.3685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.385,
"after": 0.0,
"delta": -0.385,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.308 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.923 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.308 | - |
| predicted_H | 0.270 | - |
| predicted_HR | 0.020 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.385 | - |
| predicted_RBI | 0.150 | - |
| predicted_SLG | 0.388 | - |
| predicted_SO | 0.731 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.293 | -0.015 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.994 | 0.071 |
| predicted_AVG | 0.273 | 0.011 |
| predicted_BB | 0.334 | 0.026 |
| predicted_H | 0.508 | 0.238 |
| predicted_HBP | 0.114 | - |
| predicted_HR | 0.023 | 0.003 |
| predicted_OBP | 0.356 | 0.017 |
| predicted_R | 0.443 | 0.058 |
| predicted_RBI | 0.220 | 0.070 |
| predicted_SLG | 0.395 | 0.007 |
| predicted_SO | 0.753 | 0.022 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.293 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.994 | 0.000 |
| predicted_AVG | 0.162 | -0.111 |
| predicted_BB | 0.329 | -0.005 |
| predicted_H | 0.485 | -0.024 |
| predicted_HBP | 0.114 | 0.000 |
| predicted_HR | 0.022 | -0.001 |
| predicted_OBP | 0.245 | -0.111 |
| predicted_R | 0.408 | -0.035 |
| predicted_RBI | 0.202 | -0.017 |
| predicted_SLG | 0.282 | -0.112 |
| predicted_SO | 0.764 | 0.011 |
AB rounded to 3 (raw=2.99), rates preserved: AVG=0.162 HR/AB=0.007
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.293 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.006 |
| predicted_AVG | 0.333 | 0.171 |
| predicted_BB | 0.000 | -0.329 |
| predicted_H | 1.000 | 0.515 |
| predicted_HR | 0.000 | -0.022 |
| predicted_OBP | 0.333 | 0.088 |
| predicted_R | 0.000 | -0.408 |
| predicted_RBI | 0.000 | -0.202 |
| predicted_SLG | 0.333 | 0.051 |
| predicted_SO | 1.000 | 0.236 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 5.000 | 1.000 | 0.000 | 0.000 | 0.000 | 4.000 | 3.000 | 3.000 | 0.3846 | 0.5294 | 0.4615 | 0.3846 | 0.0000 | 0.0000 | 0.2308 | 0.2308 |
| last_10 | 0.20 | 10 | - | 29.000 | 9.000 | 3.000 | 0.000 | 0.000 | 3.000 | 7.000 | 4.000 | 10.000 | 0.3103 | 0.4118 | 0.4138 | 0.3103 | 0.0000 | 0.1035 | 0.1379 | 0.3448 |
| season | 0.60 | 26 | - | 76.000 | 21.000 | 8.000 | 0.000 | 0.000 | 10.000 | 10.000 | 8.000 | 19.000 | 0.2763 | 0.3678 | 0.3816 | 0.2763 | 0.0000 | 0.1316 | 0.1053 | 0.2500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2690 |
| predicted_3B | 0.0030 |
| predicted_AB | 3.1130 |
| predicted_AVG | 0.2908 |
| predicted_BB | 0.3780 |
| predicted_H | 0.9060 |
| predicted_HBP | 0.1140 |
| predicted_HR | 0.0270 |
| predicted_OBP | 0.3844 |
| predicted_R | 0.5400 |
| predicted_RBI | 0.3360 |
| predicted_SLG | 0.4055 |
| predicted_SO | 0.7900 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3080 | 0.2690 | 0.2934 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0011 | model_form_blend |
| predicted_AB | 2.9230 | 3.1130 | 2.9943 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2908 | 0.2728 | model_form_blend |
| predicted_BB | 0.3080 | 0.3780 | 0.3343 | model_form_blend |
| predicted_H | 0.2700 | 0.9060 | 0.5085 | model_form_blend |
| predicted_HBP | - | 0.1140 | 0.1140 | form_only |
| predicted_HR | 0.0200 | 0.0270 | 0.0226 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3844 | 0.3560 | model_form_blend |
| predicted_R | 0.3850 | 0.5400 | 0.4431 | model_form_blend |
| predicted_RBI | 0.1500 | 0.3360 | 0.2198 | model_form_blend |
| predicted_SLG | 0.3880 | 0.4055 | 0.3946 | model_form_blend |
| predicted_SO | 0.7310 | 0.7900 | 0.7531 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 75 |
| Season rows before report date | 75 |
| Report year | 2026 |
| Profile rows used | 26 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.276 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260616_TOR@BOS |
| game_type | full |
| mlbID | 657136 |
| playerID | 657136 |
| playerName | Connor Wong |
| pos | C |
| started | True |
| startingPosition | C |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-16 |
| sl_k_percent | 21.3 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.34 |
| sl_xwoba | 0.312 |
| sl_xba | 0.24 |
| sl_xslg | 0.351 |
| sl_sweet_spot_percent | 30.5 |
| sl_barrel_batted_rate | 3.4 |
| sl_hard_hit_percent | 37.3 |
| sl_exit_velocity_avg | 87.3 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 24.5 |
| sl_swing_percent | 46.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.210 | 0.000 | 0.000 | Hitting_2B | 0.220 | 0.000 | -0.220 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.005 | 0.000 | -0.005 | 0.000 |
| predicted_AB | 3.306 | 4.000 | 3.000 | Hitting_AB | 3.387 | 4.000 | 0.613 | 0.000 |
| predicted_AVG | 0.228 | 0.250 | 0.333 | Hitting_AVG | 0.190 | 0.000 | 0.060 | 0.250 |
| predicted_BB | 0.210 | 0.000 | 0.000 | Hitting_BB | 0.258 | 0.000 | -0.258 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.043 | 0.000 | -0.043 | 0.000 |
| predicted_H | 0.710 | 1.000 | 1.000 | Hitting_H | 0.645 | 0.000 | 0.355 | 1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_OBP | 0.263 | 0.250 | 0.333 | Hitting_OBP | 0.264 | 0.000 | -0.014 | 0.250 |
| predicted_R | 0.339 | 0.000 | 0.000 | Hitting_R | 0.403 | 0.000 | -0.403 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 0.000 | Hitting_RBI | 0.419 | 0.000 | -0.419 | 0.000 |
| predicted_SLG | 0.365 | 0.250 | 0.333 | Hitting_SLG | 0.292 | 0.000 | -0.042 | 0.250 |
| predicted_SO | 0.516 | 1.000 | 0.000 | Hitting_SO | 0.538 | 0.000 | 0.462 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.3060 -> 4.0000 (boost 0.6940, better) |
| Biggest Deboost | predicted_RBI: 0.4100 -> 0.0000 (deboost -0.4100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 3 | 1 | 2 | 1 | 2 | predicted_AB: 3.3060 -> 3.3621 (boost 0.0561, better) | predicted_AVG: 0.2280 -> 0.2125 (deboost -0.0155, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2125 -> 0.1949 (deboost -0.0176, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.6553 -> 1.0000 (boost 0.3447, better) | predicted_SO: 0.5224 -> 0.0000 (deboost -0.5224, better) | AB rounded to 3 (raw=3.36), rates preserved: AVG=0.195 HR/AB=0.037 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3399 -> 0.0000 (deboost -0.3399, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1949 -> 0.3330 (boost 0.1381, better) | predicted_SLG: 0.3671 -> 0.3330 (deboost -0.0341, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 1 | 1 | predicted_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3671 (boost 0.0341, better) | predicted_AVG: 0.3330 -> 0.1949 (deboost -0.1381, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "702332",
"player_name": "Caleb Durbin",
"position": "3B",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.21,
"predicted_3B": 0.016,
"predicted_AB": 3.306,
"predicted_AVG": 0.228,
"predicted_BB": 0.21,
"predicted_H": 0.71,
"predicted_HR": 0.12,
"predicted_OBP": 0.263,
"predicted_R": 0.339,
"predicted_RBI": 0.41,
"predicted_SLG": 0.365,
"predicted_SO": 0.516
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1788,
"predicted_3B": 0.0135,
"predicted_AB": 3.3621,
"predicted_AVG": 0.2125,
"predicted_BB": 0.2125,
"predicted_H": 0.6876,
"predicted_HBP": 0.039,
"predicted_HR": 0.13,
"predicted_OBP": 0.2546,
"predicted_R": 0.3693,
"predicted_RBI": 0.422,
"predicted_SLG": 0.3635,
"predicted_SO": 0.5148
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.21,
"after": 0.1788,
"delta": -0.0312,
"percent_delta": -0.1486,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0135,
"delta": -0.0025,
"percent_delta": -0.1563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.306,
"after": 3.3621,
"delta": 0.0561,
"percent_delta": 0.017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2125,
"delta": -0.0155,
"percent_delta": -0.068,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.21,
"after": 0.2125,
"delta": 0.0025,
"percent_delta": 0.0119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 0.6876,
"delta": -0.0224,
"percent_delta": -0.0315,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.13,
"delta": 0.01,
"percent_delta": 0.0833,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.263,
"after": 0.2546,
"delta": -0.0084,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.339,
"after": 0.3693,
"delta": 0.0303,
"percent_delta": 0.0894,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.422,
"delta": 0.012,
"percent_delta": 0.0293,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.365,
"after": 0.3635,
"delta": -0.0015,
"percent_delta": -0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.516,
"after": 0.5148,
"delta": -0.0012,
"percent_delta": -0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.306,
"after": 3.3621,
"delta": 0.0561,
"percent_delta": 0.017,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.2125,
"delta": -0.0155,
"percent_delta": -0.068,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 62
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1788,
"predicted_3B": 0.0135,
"predicted_AB": 3.3621,
"predicted_AVG": 0.1949,
"predicted_BB": 0.2094,
"predicted_H": 0.6553,
"predicted_HBP": 0.039,
"predicted_HR": 0.1244,
"predicted_OBP": 0.2421,
"predicted_R": 0.3399,
"predicted_RBI": 0.3885,
"predicted_SLG": 0.3671,
"predicted_SO": 0.5224
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1788,
"after": 0.1788,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0135,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3621,
"after": 3.3621,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2125,
"after": 0.1949,
"delta": -0.0176,
"percent_delta": -0.0828,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2125,
"after": 0.2094,
"delta": -0.0031,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6876,
"after": 0.6553,
"delta": -0.0323,
"percent_delta": -0.047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.039,
"after": 0.039,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1244,
"delta": -0.0056,
"percent_delta": -0.0431,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2546,
"after": 0.2421,
"delta": -0.0125,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3693,
"after": 0.3399,
"delta": -0.0294,
"percent_delta": -0.0796,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.422,
"after": 0.3885,
"delta": -0.0335,
"percent_delta": -0.0794,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3635,
"after": 0.3671,
"delta": 0.0036,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.5148,
"after": 0.5224,
"delta": 0.0076,
"percent_delta": 0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2125,
"after": 0.1949,
"delta": -0.0176,
"percent_delta": -0.0828,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.36), rates preserved: AVG=0.195 HR/AB=0.037",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1788,
"after": 0.0,
"delta": -0.1788,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0135,
"after": 0.0,
"delta": -0.0135,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3621,
"after": 3.0,
"delta": -0.3621,
"percent_delta": -0.1077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2094,
"after": 0.0,
"delta": -0.2094,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6553,
"after": 1.0,
"delta": 0.3447,
"percent_delta": 0.526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.039,
"after": 0.0,
"delta": -0.039,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1244,
"after": 0.0,
"delta": -0.1244,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3885,
"after": 0.0,
"delta": -0.3885,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5224,
"after": 0.0,
"delta": -0.5224,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6553,
"after": 1.0,
"delta": 0.3447,
"percent_delta": 0.526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.5224,
"after": 0.0,
"delta": -0.5224,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3399,
"after": 0.0,
"delta": -0.3399,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.3399,
"after": 0.0,
"delta": -0.3399,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1949,
"after": 0.333,
"delta": 0.1381,
"percent_delta": 0.7086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2421,
"after": 0.333,
"delta": 0.0909,
"percent_delta": 0.3755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3671,
"after": 0.333,
"delta": -0.0341,
"percent_delta": -0.0929,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1949,
"after": 0.333,
"delta": 0.1381,
"percent_delta": 0.7086,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3671,
"after": 0.333,
"delta": -0.0341,
"percent_delta": -0.0929,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 4.0,
"delta": 1.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.1949,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2421,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3671,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1949,
"delta": -0.1381,
"percent_delta": -0.4147,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2421,
"delta": -0.0909,
"percent_delta": -0.273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3671,
"delta": 0.0341,
"percent_delta": 0.1025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3671,
"delta": 0.0341,
"percent_delta": 0.1025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1949,
"delta": -0.1381,
"percent_delta": -0.4147,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.306,
"after": 4.0,
"delta": 0.694,
"percent_delta": 0.2099,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.1949,
"delta": -0.0331,
"percent_delta": -0.1452,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 1.0,
"delta": 0.29,
"percent_delta": 0.4085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.263,
"after": 0.2421,
"delta": -0.0209,
"percent_delta": -0.0795,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.339,
"after": 0.0,
"delta": -0.339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.365,
"after": 0.3671,
"delta": 0.0021,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.516,
"after": 1.0,
"delta": 0.484,
"percent_delta": 0.938,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.306,
"after": 4.0,
"delta": 0.694,
"percent_delta": 0.2099,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.210 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 3.306 | - |
| predicted_AVG | 0.228 | - |
| predicted_BB | 0.210 | - |
| predicted_H | 0.710 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.263 | - |
| predicted_R | 0.339 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.365 | - |
| predicted_SO | 0.516 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.179 | -0.031 |
| predicted_3B | 0.013 | -0.003 |
| predicted_AB | 3.362 | 0.056 |
| predicted_AVG | 0.212 | -0.016 |
| predicted_BB | 0.212 | 0.003 |
| predicted_H | 0.688 | -0.022 |
| predicted_HBP | 0.039 | - |
| predicted_HR | 0.130 | 0.010 |
| predicted_OBP | 0.255 | -0.008 |
| predicted_R | 0.369 | 0.030 |
| predicted_RBI | 0.422 | 0.012 |
| predicted_SLG | 0.363 | -0.002 |
| predicted_SO | 0.515 | -0.001 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.179 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 3.362 | 0.000 |
| predicted_AVG | 0.195 | -0.018 |
| predicted_BB | 0.209 | -0.003 |
| predicted_H | 0.655 | -0.032 |
| predicted_HBP | 0.039 | 0.000 |
| predicted_HR | 0.124 | -0.006 |
| predicted_OBP | 0.242 | -0.012 |
| predicted_R | 0.340 | -0.029 |
| predicted_RBI | 0.389 | -0.033 |
| predicted_SLG | 0.367 | 0.004 |
| predicted_SO | 0.522 | 0.008 |
AB rounded to 3 (raw=3.36), rates preserved: AVG=0.195 HR/AB=0.037
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 0.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 0.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.179 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 3.000 | -0.362 |
| predicted_AVG | 0.333 | 0.138 |
| predicted_BB | 0.000 | -0.209 |
| predicted_H | 1.000 | 0.345 |
| predicted_HR | 0.000 | -0.124 |
| predicted_OBP | 0.333 | 0.091 |
| predicted_R | 0.000 | -0.340 |
| predicted_RBI | 0.000 | -0.389 |
| predicted_SLG | 0.333 | -0.034 |
| predicted_SO | 0.000 | -0.522 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 0.000 | 2.000 | 3.000 | 3.000 | 1.000 | 2.000 | 0.1667 | 0.2000 | 0.5000 | 0.1667 | 0.1111 | 0.1667 | 0.0556 | 0.1111 |
| last_10 | 0.20 | 10 | - | 34.000 | 6.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 2.000 | 4.000 | 0.1765 | 0.2162 | 0.3529 | 0.1765 | 0.0588 | 0.0882 | 0.0588 | 0.1177 |
| season | 0.60 | 62 | - | 205.000 | 39.000 | 13.000 | 1.000 | 3.000 | 26.000 | 21.000 | 13.000 | 32.000 | 0.1902 | 0.2500 | 0.3073 | 0.1902 | 0.0146 | 0.1268 | 0.0634 | 0.1561 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1350 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.4410 |
| predicted_AVG | 0.1908 |
| predicted_BB | 0.2160 |
| predicted_H | 0.6560 |
| predicted_HBP | 0.0390 |
| predicted_HR | 0.1440 |
| predicted_OBP | 0.2427 |
| predicted_R | 0.4120 |
| predicted_RBI | 0.4390 |
| predicted_SLG | 0.3614 |
| predicted_SO | 0.5130 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2100 | 0.1350 | 0.1788 | model_form_blend |
| predicted_3B | 0.0160 | 0.0100 | 0.0135 | model_form_blend |
| predicted_AB | 3.3060 | 3.4410 | 3.3621 | model_form_blend |
| predicted_AVG | 0.2280 | 0.1908 | 0.2125 | model_form_blend |
| predicted_BB | 0.2100 | 0.2160 | 0.2125 | model_form_blend |
| predicted_H | 0.7100 | 0.6560 | 0.6876 | model_form_blend |
| predicted_HBP | - | 0.0390 | 0.0390 | form_only |
| predicted_HR | 0.1200 | 0.1440 | 0.1300 | model_form_blend |
| predicted_OBP | 0.2630 | 0.2427 | 0.2546 | model_form_blend |
| predicted_R | 0.3390 | 0.4120 | 0.3693 | model_form_blend |
| predicted_RBI | 0.4100 | 0.4390 | 0.4220 | model_form_blend |
| predicted_SLG | 0.3650 | 0.3614 | 0.3635 | model_form_blend |
| predicted_SO | 0.5160 | 0.5130 | 0.5148 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 186 |
| Season rows before report date | 186 |
| Report year | 2026 |
| Profile rows used | 62 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260616_TOR@BOS |
| game_type | full |
| mlbID | 702332 |
| playerID | 702332 |
| playerName | Caleb Durbin |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-16 |
| sl_k_percent | 14.2 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.25 |
| sl_xwoba | 0.28 |
| sl_xba | 0.238 |
| sl_xslg | 0.324 |
| sl_sweet_spot_percent | 26.0 |
| sl_barrel_batted_rate | 2.8 |
| sl_hard_hit_percent | 29.9 |
| sl_exit_velocity_avg | 85.0 |
| sl_launch_angle_avg | 9.5 |
| sl_whiff_percent | 14.7 |
| sl_swing_percent | 45.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.136 | 0.000 | 0.000 | Hitting_2B | 0.173 | 0.000 | -0.173 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_AB | 4.180 | 3.000 | 4.000 | Hitting_AB | 4.148 | 2.000 | -1.148 | 1.000 |
| predicted_AVG | 0.223 | 0.333 | 0.250 | Hitting_AVG | 0.215 | 0.000 | 0.119 | 0.333 |
| predicted_BB | 0.303 | 1.000 | 0.000 | Hitting_BB | 0.350 | 2.000 | 0.650 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.930 | 1.000 | 1.000 | Hitting_H | 0.890 | 0.000 | 0.110 | 1.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.169 | 0.000 | -0.169 | 0.000 |
| predicted_OBP | 0.288 | 0.500 | 0.250 | Hitting_OBP | 0.284 | 0.500 | 0.216 | 0.000 |
| predicted_R | 0.530 | 0.000 | 0.000 | Hitting_R | 0.557 | 0.000 | -0.557 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 0.000 | Hitting_RBI | 0.591 | 0.000 | -0.591 | 0.000 |
| predicted_SLG | 0.406 | 0.333 | 0.250 | Hitting_SLG | 0.383 | 0.000 | -0.049 | 0.333 |
| predicted_SO | 1.288 | 0.000 | 1.000 | Hitting_SO | 1.236 | 0.000 | -1.236 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.3030 -> 1.0000 (boost 0.6970, better) |
| Biggest Deboost | predicted_SO: 1.2880 -> 0.0000 (deboost -1.2880, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_AB: 4.1800 -> 4.1123 (deboost -0.0677, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2840 -> 0.2646 (deboost -0.0194, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.8689 -> 1.0000 (boost 0.1311, better) | predicted_RBI: 0.4841 -> 0.0000 (deboost -0.4841, worse) | AB rounded to 4 (raw=4.18), rates preserved: AVG=0.208 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4684 -> 0.0000 (deboost -0.4684, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2113 -> 0.2500 (boost 0.0387, better) | predicted_SLG: 0.3935 -> 0.2500 (deboost -0.1435, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 2 | 1 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3935 (boost 0.1435, better) | predicted_AVG: 0.2500 -> 0.2113 (deboost -0.0387, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "680776",
"player_name": "Jarren Duran",
"position": "LF",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.136,
"predicted_3B": 0.03,
"predicted_AB": 4.18,
"predicted_AVG": 0.223,
"predicted_BB": 0.303,
"predicted_H": 0.93,
"predicted_HR": 0.19,
"predicted_OBP": 0.288,
"predicted_R": 0.53,
"predicted_RBI": 0.52,
"predicted_SLG": 0.406,
"predicted_SO": 1.288
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1174,
"predicted_3B": 0.0249,
"predicted_AB": 4.1123,
"predicted_AVG": 0.222,
"predicted_BB": 0.3022,
"predicted_H": 0.9118,
"predicted_HBP": 0.028,
"predicted_HR": 0.2027,
"predicted_OBP": 0.284,
"predicted_R": 0.5089,
"predicted_RBI": 0.5259,
"predicted_SLG": 0.4105,
"predicted_SO": 1.2491
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.136,
"after": 0.1174,
"delta": -0.0186,
"percent_delta": -0.1368,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0249,
"delta": -0.0051,
"percent_delta": -0.17,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.18,
"after": 4.1123,
"delta": -0.0677,
"percent_delta": -0.0162,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.222,
"delta": -0.001,
"percent_delta": -0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.303,
"after": 0.3022,
"delta": -0.0008,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 0.9118,
"delta": -0.0182,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.2027,
"delta": 0.0127,
"percent_delta": 0.0668,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.284,
"delta": -0.004,
"percent_delta": -0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.53,
"after": 0.5089,
"delta": -0.0211,
"percent_delta": -0.0398,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.5259,
"delta": 0.0059,
"percent_delta": 0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.4105,
"delta": 0.0045,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.288,
"after": 1.2491,
"delta": -0.0389,
"percent_delta": -0.0302,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.18,
"after": 4.1123,
"delta": -0.0677,
"percent_delta": -0.0162,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 66
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1174,
"predicted_3B": 0.0249,
"predicted_AB": 4.1123,
"predicted_AVG": 0.2113,
"predicted_BB": 0.2978,
"predicted_H": 0.8689,
"predicted_HBP": 0.028,
"predicted_HR": 0.194,
"predicted_OBP": 0.2646,
"predicted_R": 0.4684,
"predicted_RBI": 0.4841,
"predicted_SLG": 0.3935,
"predicted_SO": 1.2675
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1174,
"after": 0.1174,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0249,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1123,
"after": 4.1123,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.222,
"after": 0.2113,
"delta": -0.0107,
"percent_delta": -0.0482,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3022,
"after": 0.2978,
"delta": -0.0044,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9118,
"after": 0.8689,
"delta": -0.0429,
"percent_delta": -0.047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.028,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2027,
"after": 0.194,
"delta": -0.0087,
"percent_delta": -0.0429,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2646,
"delta": -0.0194,
"percent_delta": -0.0683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5089,
"after": 0.4684,
"delta": -0.0405,
"percent_delta": -0.0796,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5259,
"after": 0.4841,
"delta": -0.0418,
"percent_delta": -0.0795,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4105,
"after": 0.3935,
"delta": -0.017,
"percent_delta": -0.0414,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2491,
"after": 1.2675,
"delta": 0.0184,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2646,
"delta": -0.0194,
"percent_delta": -0.0683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.18), rates preserved: AVG=0.208 HR/AB=0.046",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1174,
"after": 0.0,
"delta": -0.1174,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0,
"delta": -0.0249,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1123,
"after": 4.0,
"delta": -0.1123,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2978,
"after": 0.0,
"delta": -0.2978,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8689,
"after": 1.0,
"delta": 0.1311,
"percent_delta": 0.1509,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4841,
"after": 0.0,
"delta": -0.4841,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2675,
"after": 1.0,
"delta": -0.2675,
"percent_delta": -0.211,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.8689,
"after": 1.0,
"delta": 0.1311,
"percent_delta": 0.1509,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4841,
"after": 0.0,
"delta": -0.4841,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4684,
"after": 0.0,
"delta": -0.4684,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.4684,
"after": 0.0,
"delta": -0.4684,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2113,
"after": 0.25,
"delta": 0.0387,
"percent_delta": 0.1832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2646,
"after": 0.25,
"delta": -0.0146,
"percent_delta": -0.0552,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3935,
"after": 0.25,
"delta": -0.1435,
"percent_delta": -0.3647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2113,
"after": 0.25,
"delta": 0.0387,
"percent_delta": 0.1832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3935,
"after": 0.25,
"delta": -0.1435,
"percent_delta": -0.3647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2113,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.2646,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3935,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2113,
"delta": -0.0387,
"percent_delta": -0.1548,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2646,
"delta": 0.0146,
"percent_delta": 0.0582,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3935,
"delta": 0.1435,
"percent_delta": 0.574,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3935,
"delta": 0.1435,
"percent_delta": 0.574,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2113,
"delta": -0.0387,
"percent_delta": -0.1548,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.136,
"after": 0.0,
"delta": -0.136,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.18,
"after": 3.0,
"delta": -1.18,
"percent_delta": -0.2823,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2113,
"delta": -0.0117,
"percent_delta": -0.0525,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.303,
"after": 1.0,
"delta": 0.697,
"percent_delta": 2.3003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 1.0,
"delta": 0.07,
"percent_delta": 0.0753,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2646,
"delta": -0.0234,
"percent_delta": -0.0812,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.406,
"after": 0.3935,
"delta": -0.0125,
"percent_delta": -0.0308,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.288,
"after": 0.0,
"delta": -1.288,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.303,
"after": 1.0,
"delta": 0.697,
"percent_delta": 2.3003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.288,
"after": 0.0,
"delta": -1.288,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.136 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 4.180 | - |
| predicted_AVG | 0.223 | - |
| predicted_BB | 0.303 | - |
| predicted_H | 0.930 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.530 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.406 | - |
| predicted_SO | 1.288 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | -0.019 |
| predicted_3B | 0.025 | -0.005 |
| predicted_AB | 4.112 | -0.068 |
| predicted_AVG | 0.222 | -0.001 |
| predicted_BB | 0.302 | -0.001 |
| predicted_H | 0.912 | -0.018 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.203 | 0.013 |
| predicted_OBP | 0.284 | -0.004 |
| predicted_R | 0.509 | -0.021 |
| predicted_RBI | 0.526 | 0.006 |
| predicted_SLG | 0.410 | 0.004 |
| predicted_SO | 1.249 | -0.039 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.117 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 4.112 | 0.000 |
| predicted_AVG | 0.211 | -0.011 |
| predicted_BB | 0.298 | -0.004 |
| predicted_H | 0.869 | -0.043 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.194 | -0.009 |
| predicted_OBP | 0.265 | -0.019 |
| predicted_R | 0.468 | -0.041 |
| predicted_RBI | 0.484 | -0.042 |
| predicted_SLG | 0.394 | -0.017 |
| predicted_SO | 1.268 | 0.018 |
AB rounded to 4 (raw=4.18), rates preserved: AVG=0.208 HR/AB=0.046
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.117 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 4.000 | -0.112 |
| predicted_AVG | 0.250 | 0.039 |
| predicted_BB | 0.000 | -0.298 |
| predicted_H | 1.000 | 0.131 |
| predicted_HR | 0.000 | -0.194 |
| predicted_OBP | 0.250 | -0.015 |
| predicted_R | 0.000 | -0.468 |
| predicted_RBI | 0.000 | -0.484 |
| predicted_SLG | 0.250 | -0.144 |
| predicted_SO | 1.000 | -0.268 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 5.000 | 0.000 | 0.000 | 2.000 | 3.000 | 2.000 | 2.000 | 5.000 | 0.2500 | 0.3182 | 0.5500 | 0.2500 | 0.1000 | 0.1500 | 0.1000 | 0.2500 |
| last_10 | 0.20 | 10 | - | 40.000 | 8.000 | 0.000 | 0.000 | 2.000 | 4.000 | 4.000 | 2.000 | 13.000 | 0.2000 | 0.2381 | 0.3500 | 0.2000 | 0.0500 | 0.1000 | 0.0500 | 0.3250 |
| season | 0.60 | 66 | - | 268.000 | 57.000 | 9.000 | 2.000 | 12.000 | 37.000 | 35.000 | 20.000 | 85.000 | 0.2127 | 0.2730 | 0.3955 | 0.2127 | 0.0448 | 0.1381 | 0.0746 | 0.3172 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0920 |
| predicted_3B | 0.0180 |
| predicted_AB | 4.0200 |
| predicted_AVG | 0.2207 |
| predicted_BB | 0.3010 |
| predicted_H | 0.8870 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.2200 |
| predicted_OBP | 0.2786 |
| predicted_R | 0.4800 |
| predicted_RBI | 0.5340 |
| predicted_SLG | 0.4166 |
| predicted_SO | 1.1960 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1360 | 0.0920 | 0.1174 | model_form_blend |
| predicted_3B | 0.0300 | 0.0180 | 0.0249 | model_form_blend |
| predicted_AB | 4.1800 | 4.0200 | 4.1123 | model_form_blend |
| predicted_AVG | 0.2230 | 0.2207 | 0.2220 | model_form_blend |
| predicted_BB | 0.3030 | 0.3010 | 0.3022 | model_form_blend |
| predicted_H | 0.9300 | 0.8870 | 0.9118 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1900 | 0.2200 | 0.2027 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2786 | 0.2840 | model_form_blend |
| predicted_R | 0.5300 | 0.4800 | 0.5089 | model_form_blend |
| predicted_RBI | 0.5200 | 0.5340 | 0.5259 | model_form_blend |
| predicted_SLG | 0.4060 | 0.4166 | 0.4105 | model_form_blend |
| predicted_SO | 1.2880 | 1.1960 | 1.2491 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 237 |
| Season rows before report date | 237 |
| Report year | 2026 |
| Profile rows used | 66 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.213 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 2 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 680776 |
| playerID | 680776 |
| playerName | Jarren Duran |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.293 |
| sl_xwoba | 0.299 |
| sl_xba | 0.23 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 31.9 |
| sl_barrel_batted_rate | 11.5 |
| sl_hard_hit_percent | 39.5 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 13.9 |
| sl_whiff_percent | 35.1 |
| sl_swing_percent | 48.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.270 | 0.000 | 0.000 | Hitting_2B | 0.343 | 0.000 | -0.343 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.919 | 3.000 | 3.000 | Hitting_AB | 3.400 | 4.000 | -0.400 | -1.000 |
| predicted_AVG | 0.235 | 0.000 | 0.333 | Hitting_AVG | 0.258 | 0.250 | -0.258 | -0.250 |
| predicted_BB | 0.162 | 0.000 | 0.000 | Hitting_BB | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_H | 0.240 | 0.000 | 1.000 | Hitting_H | 0.876 | 1.000 | -0.876 | -1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_OBP | 0.251 | 0.000 | 0.333 | Hitting_OBP | 0.308 | 0.250 | -0.308 | -0.250 |
| predicted_R | 0.297 | 0.000 | 0.000 | Hitting_R | 0.438 | 0.000 | -0.438 | 0.000 |
| predicted_RBI | 0.130 | 0.000 | 0.000 | Hitting_RBI | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_SLG | 0.359 | 0.000 | 0.333 | Hitting_SLG | 0.417 | 0.250 | -0.417 | -0.250 |
| predicted_SO | 0.784 | 2.000 | 1.000 | Hitting_SO | 0.800 | 2.000 | 1.200 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.7840 -> 2.0000 (boost 1.2160, worse) |
| Biggest Deboost | predicted_R: 0.2970 -> 0.0000 (deboost -0.2970, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 2 | 0 | 1 | 1 | predicted_H: 0.2400 -> 0.4057 (boost 0.1657, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3602 -> 0.2579 (deboost -0.1023, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.8918 -> 1.0000 (boost 0.1082, worse) | predicted_H: 0.3866 -> 0.0000 (deboost -0.3866, worse) | AB rounded to 3 (raw=2.93), rates preserved: AVG=0.132 HR/AB=0.014 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.2598 -> 0.0000 (deboost -0.2598, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1322 -> 0.3330 (boost 0.2008, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 0 | 2 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1322 (deboost -0.2008, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "655316",
"player_name": "Andruw Monasterio",
"position": "2B",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.27,
"predicted_3B": 0.0,
"predicted_AB": 2.919,
"predicted_AVG": 0.235,
"predicted_BB": 0.162,
"predicted_H": 0.24,
"predicted_HR": 0.03,
"predicted_OBP": 0.251,
"predicted_R": 0.297,
"predicted_RBI": 0.13,
"predicted_SLG": 0.359,
"predicted_SO": 0.784
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2412,
"predicted_3B": 0.0008,
"predicted_AB": 2.9256,
"predicted_AVG": 0.2319,
"predicted_BB": 0.1472,
"predicted_H": 0.4057,
"predicted_HBP": 0.006,
"predicted_HR": 0.0436,
"predicted_OBP": 0.2542,
"predicted_R": 0.2822,
"predicted_RBI": 0.1732,
"predicted_SLG": 0.3602,
"predicted_SO": 0.8789
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.27,
"after": 0.2412,
"delta": -0.0288,
"percent_delta": -0.1067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.919,
"after": 2.9256,
"delta": 0.0066,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2319,
"delta": -0.0031,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.162,
"after": 0.1472,
"delta": -0.0148,
"percent_delta": -0.0914,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 0.4057,
"delta": 0.1657,
"percent_delta": 0.6904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0436,
"delta": 0.0136,
"percent_delta": 0.4533,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.251,
"after": 0.2542,
"delta": 0.0032,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.297,
"after": 0.2822,
"delta": -0.0148,
"percent_delta": -0.0498,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.1732,
"delta": 0.0432,
"percent_delta": 0.3323,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.359,
"after": 0.3602,
"delta": 0.0012,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.784,
"after": 0.8789,
"delta": 0.0949,
"percent_delta": 0.121,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.24,
"after": 0.4057,
"delta": 0.1657,
"percent_delta": 0.6904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 37
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2412,
"predicted_3B": 0.0008,
"predicted_AB": 2.9256,
"predicted_AVG": 0.1322,
"predicted_BB": 0.145,
"predicted_H": 0.3866,
"predicted_HBP": 0.006,
"predicted_HR": 0.0417,
"predicted_OBP": 0.1731,
"predicted_R": 0.2598,
"predicted_RBI": 0.1594,
"predicted_SLG": 0.2579,
"predicted_SO": 0.8918
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2412,
"after": 0.2412,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9256,
"after": 2.9256,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2319,
"after": 0.1322,
"delta": -0.0997,
"percent_delta": -0.4299,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1472,
"after": 0.145,
"delta": -0.0022,
"percent_delta": -0.0149,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4057,
"after": 0.3866,
"delta": -0.0191,
"percent_delta": -0.0471,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0436,
"after": 0.0417,
"delta": -0.0019,
"percent_delta": -0.0436,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2542,
"after": 0.1731,
"delta": -0.0811,
"percent_delta": -0.319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2822,
"after": 0.2598,
"delta": -0.0224,
"percent_delta": -0.0794,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1732,
"after": 0.1594,
"delta": -0.0138,
"percent_delta": -0.0797,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3602,
"after": 0.2579,
"delta": -0.1023,
"percent_delta": -0.284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8789,
"after": 0.8918,
"delta": 0.0129,
"percent_delta": 0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3602,
"after": 0.2579,
"delta": -0.1023,
"percent_delta": -0.284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.93), rates preserved: AVG=0.132 HR/AB=0.014",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2412,
"after": 0.0,
"delta": -0.2412,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.9256,
"after": 3.0,
"delta": 0.0744,
"percent_delta": 0.0254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.145,
"after": 0.0,
"delta": -0.145,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3866,
"after": 0.0,
"delta": -0.3866,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.006,
"after": 0.0,
"delta": -0.006,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0417,
"after": 0.0,
"delta": -0.0417,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1594,
"after": 0.0,
"delta": -0.1594,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8918,
"after": 1.0,
"delta": 0.1082,
"percent_delta": 0.1213,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.8918,
"after": 1.0,
"delta": 0.1082,
"percent_delta": 0.1213,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.3866,
"after": 0.0,
"delta": -0.3866,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.2598,
"after": 0.0,
"delta": -0.2598,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.2598,
"after": 0.0,
"delta": -0.2598,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1322,
"after": 0.333,
"delta": 0.2008,
"percent_delta": 1.5189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.1731,
"after": 0.333,
"delta": 0.1599,
"percent_delta": 0.9237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2579,
"after": 0.333,
"delta": 0.0751,
"percent_delta": 0.2912,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1322,
"after": 0.333,
"delta": 0.2008,
"percent_delta": 1.5189,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1322,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1731,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2579,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1322,
"delta": -0.2008,
"percent_delta": -0.6031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.1731,
"delta": -0.1599,
"percent_delta": -0.48,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.2579,
"delta": -0.0751,
"percent_delta": -0.2254,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1322,
"delta": -0.2008,
"percent_delta": -0.6031,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.919,
"after": 3.0,
"delta": 0.081,
"percent_delta": 0.0277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.1322,
"delta": -0.1028,
"percent_delta": -0.4374,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.162,
"after": 0.0,
"delta": -0.162,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.251,
"after": 0.1731,
"delta": -0.0779,
"percent_delta": -0.3104,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.359,
"after": 0.2579,
"delta": -0.1011,
"percent_delta": -0.2816,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.784,
"after": 2.0,
"delta": 1.216,
"percent_delta": 1.551,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.784,
"after": 2.0,
"delta": 1.216,
"percent_delta": 1.551,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.270 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.919 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.162 | - |
| predicted_H | 0.240 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.251 | - |
| predicted_R | 0.297 | - |
| predicted_RBI | 0.130 | - |
| predicted_SLG | 0.359 | - |
| predicted_SO | 0.784 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.241 | -0.029 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 2.926 | 0.007 |
| predicted_AVG | 0.232 | -0.003 |
| predicted_BB | 0.147 | -0.015 |
| predicted_H | 0.406 | 0.166 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.044 | 0.014 |
| predicted_OBP | 0.254 | 0.003 |
| predicted_R | 0.282 | -0.015 |
| predicted_RBI | 0.173 | 0.043 |
| predicted_SLG | 0.360 | 0.001 |
| predicted_SO | 0.879 | 0.095 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.241 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 2.926 | 0.000 |
| predicted_AVG | 0.132 | -0.100 |
| predicted_BB | 0.145 | -0.002 |
| predicted_H | 0.387 | -0.019 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.042 | -0.002 |
| predicted_OBP | 0.173 | -0.081 |
| predicted_R | 0.260 | -0.022 |
| predicted_RBI | 0.159 | -0.014 |
| predicted_SLG | 0.258 | -0.102 |
| predicted_SO | 0.892 | 0.013 |
AB rounded to 3 (raw=2.93), rates preserved: AVG=0.132 HR/AB=0.014
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.241 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | 0.074 |
| predicted_AVG | 0.333 | 0.201 |
| predicted_BB | 0.000 | -0.145 |
| predicted_H | 1.000 | 0.613 |
| predicted_HR | 0.000 | -0.042 |
| predicted_OBP | 0.333 | 0.160 |
| predicted_R | 0.000 | -0.260 |
| predicted_RBI | 0.000 | -0.159 |
| predicted_SLG | 0.333 | 0.075 |
| predicted_SO | 1.000 | 0.108 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 11.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 7.000 | 0.1818 | 0.1818 | 0.1818 | 0.1818 | 0.0000 | 0.0000 | 0.0000 | 0.6364 |
| last_10 | 0.20 | 10 | - | 25.000 | 5.000 | 2.000 | 0.000 | 1.000 | 1.000 | 2.000 | 0.000 | 12.000 | 0.2000 | 0.2000 | 0.4000 | 0.2000 | 0.0400 | 0.0400 | 0.0000 | 0.4800 |
| season | 0.60 | 37 | - | 108.000 | 26.000 | 10.000 | 0.000 | 2.000 | 11.000 | 11.000 | 6.000 | 29.000 | 0.2407 | 0.2807 | 0.3889 | 0.2407 | 0.0185 | 0.1018 | 0.0556 | 0.2685 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1960 |
| predicted_3B | 0.0020 |
| predicted_AB | 2.9360 |
| predicted_AVG | 0.2270 |
| predicted_BB | 0.1240 |
| predicted_H | 0.6660 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0650 |
| predicted_OBP | 0.2591 |
| predicted_R | 0.2590 |
| predicted_RBI | 0.2410 |
| predicted_SLG | 0.3622 |
| predicted_SO | 1.0280 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2700 | 0.1960 | 0.2412 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.9190 | 2.9360 | 2.9256 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2270 | 0.2319 | model_form_blend |
| predicted_BB | 0.1620 | 0.1240 | 0.1472 | model_form_blend |
| predicted_H | 0.2400 | 0.6660 | 0.4057 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0300 | 0.0650 | 0.0436 | model_form_blend |
| predicted_OBP | 0.2510 | 0.2591 | 0.2542 | model_form_blend |
| predicted_R | 0.2970 | 0.2590 | 0.2822 | model_form_blend |
| predicted_RBI | 0.1300 | 0.2410 | 0.1732 | model_form_blend |
| predicted_SLG | 0.3590 | 0.3622 | 0.3602 | model_form_blend |
| predicted_SO | 0.7840 | 1.0280 | 0.8789 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 105 |
| Season rows before report date | 105 |
| Report year | 2026 |
| Profile rows used | 37 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.241 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260617_TOR@BOS |
| game_type | full |
| mlbID | 655316 |
| playerID | 655316 |
| playerName | Andruw Monasterio |
| pos | SS |
| started | True |
| startingPosition | 2B |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-17 |
| sl_k_percent | 25.2 |
| sl_bb_percent | 6.1 |
| sl_woba | 0.297 |
| sl_xwoba | 0.281 |
| sl_xba | 0.236 |
| sl_xslg | 0.356 |
| sl_sweet_spot_percent | 36.7 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 38.0 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 20.7 |
| sl_whiff_percent | 18.5 |
| sl_swing_percent | 45.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.333 | 0.000 | 0.667 | 2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.750 | 1.000 | -0.750 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 4.917 | 5.000 | -3.917 | -4.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.117 | 6.000 | 0.083 | -0.800 |
| predicted_SO | 10.000 | 10.000 | 10.000 | Pitching_SO | 4.250 | 7.000 | 5.750 | 3.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "543243",
"player_name": "Sonny Gray",
"position": "Starter",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 5.6667,
"predicted_SO": 10.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_SO": 10.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 10.0,
"after": 10.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_R": 1.0,
"predicted_SO": 10.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.2,
"after": 5.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 10.0,
"after": 10.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 10.0,
"after": 10.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 10.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 1.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.200 | -0.467 |
| predicted_SO | 10.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 28.100 | 9.000 | 28.000 | 8.000 | 30.000 | 2.000 | 2.8588 | 1.2706 | 0.3176 | 0.9882 | 0.2823 | 1.0588 | 0.0706 |
| last_10 | 0.35 | 10 | 52.100 | 16.000 | 49.000 | 15.000 | 43.000 | 5.000 | 2.7516 | 1.2229 | 0.3057 | 0.9363 | 0.2866 | 0.8217 | 0.0955 |
| season | 0.20 | 12 | 62.100 | 21.000 | 59.000 | 16.000 | 51.000 | 6.000 | 3.0321 | 1.2032 | 0.3369 | 0.9465 | 0.2567 | 0.8182 | 0.0963 |
| Metric | Value |
|---|---|
| predicted_BB | 1.6810 |
| predicted_ER | 2.0560 |
| predicted_ERA | 3.3419 |
| predicted_H | 5.3450 |
| predicted_HR | 0.5680 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.1530 |
| predicted_WHIP | 1.2689 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.6810 | 1.8323 | model_form_blend |
| predicted_ER | 1.0000 | 2.0560 | 1.5552 | model_form_blend |
| predicted_ERA | - | 3.3419 | 3.3419 | form_only |
| predicted_H | 1.0000 | 5.3450 | 3.2844 | model_form_blend |
| predicted_HR | 1.0000 | 0.5680 | 0.7729 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 10.0000 | 5.1530 | 7.4517 | model_form_blend |
| predicted_WHIP | - | 1.2689 | 1.2689 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 12 |
| Season rows before report date | 12 |
| Report year | 2026 |
| Profile rows used | 12 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 10 |
| HR | 1 |
| BF | 20 |
| Pitches | 91 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 23 |
| Pitching_ER | 1 |
| Pitching_ERA | 3.03 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 5 |
| Pitching_H | 5 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 88 |
| Pitching_R | 1 |
| Pitching_SO | 7 |
| Pitching_Strikes | 60 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260612_TEX@BOS |
| game_type | full |
| mlbID | 543243 |
| playerID | 543243 |
| playerName | Sonny Gray |
| pos | P |
| started | True |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-12 |
| sl_k_percent | 19.9 |
| sl_bb_percent | 6.3 |
| sl_woba | 0.309 |
| sl_xwoba | 0.317 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 35.5 |
| sl_whiff_percent | 22.1 |
| sl_swing_percent | 47.0 |
| sl_avg_best_speed | 77.516057143 |
| sl_avg_hyper_speed | 93.718036906 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.429 | 0.000 | -0.429 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.476 | 1.000 | -0.476 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.962 | 1.000 | 0.138 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.333 | 2.000 | -1.333 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.1000 (boost 0.1000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "547973",
"player_name": "Aroldis Chapman",
"position": "Middle Reliever",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 0.000 | 3.000 | 2.000 | 7.000 | 0.000 | 0.0000 | 1.0000 | 0.0000 | 0.6000 | 0.4000 | 1.4000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 0.000 | 3.000 | 6.000 | 15.000 | 0.000 | 0.0000 | 0.9000 | 0.0000 | 0.3000 | 0.6000 | 1.5000 | 0.0000 |
| season | 0.20 | 21 | 20.200 | 1.000 | 10.000 | 9.000 | 28.000 | 0.000 | 0.4355 | 0.9194 | 0.0484 | 0.4839 | 0.4355 | 1.3548 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4150 |
| predicted_ER | 0.2790 |
| predicted_ERA | 2.5152 |
| predicted_H | 0.7480 |
| predicted_HR | 0.0800 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1580 |
| predicted_WHIP | 1.1621 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4150 | 0.1735 | model_form_blend |
| predicted_ER | 0.0000 | 0.2790 | 0.1166 | model_form_blend |
| predicted_ERA | - | 2.5152 | 2.5152 | form_only |
| predicted_H | 0.0000 | 0.7480 | 0.3126 | model_form_blend |
| predicted_HR | 0.0000 | 0.0800 | 0.0334 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1580 | 0.4840 | model_form_blend |
| predicted_WHIP | - | 1.1621 | 1.1621 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 21 |
| Season rows before report date | 21 |
| Report year | 2026 |
| Profile rows used | 21 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.44 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260613_TEX@BOS |
| game_type | full |
| mlbID | 547973 |
| playerID | 547973 |
| playerName | Aroldis Chapman |
| pos | P |
| started | False |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-13 |
| sl_k_percent | 34.6 |
| sl_bb_percent | 11.1 |
| sl_woba | 0.216 |
| sl_xwoba | 0.266 |
| sl_sweet_spot_percent | 20.9 |
| sl_barrel_batted_rate | 11.6 |
| sl_hard_hit_percent | 44.2 |
| sl_whiff_percent | 32.7 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 76.643809524 |
| sl_avg_hyper_speed | 95.682567619 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.273 | 0.000 | -0.273 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.318 | 0.000 | -0.318 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.773 | 0.000 | 0.227 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.964 | 1.000 | 0.036 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.227 | 1.000 | -1.227 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "676477",
"player_name": "Garrett Whitlock",
"position": "Middle Reliever",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 1.000 | 4.000 | 0.000 | 5.000 | 0.000 | 2.0769 | 0.9231 | 0.2308 | 0.9231 | 0.0000 | 1.1539 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 3.000 | 7.000 | 1.000 | 14.000 | 0.000 | 2.7931 | 0.8276 | 0.3103 | 0.7241 | 0.1035 | 1.4483 | 0.0000 |
| season | 0.20 | 22 | 21.200 | 7.000 | 17.000 | 6.000 | 27.000 | 2.000 | 2.9077 | 1.0615 | 0.3231 | 0.7846 | 0.2769 | 1.2462 | 0.0923 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2380 |
| predicted_ER | 0.3970 |
| predicted_ERA | 3.5765 |
| predicted_H | 0.9050 |
| predicted_HR | 0.0870 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0940 |
| predicted_WHIP | 1.1430 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2380 | 0.1007 | model_form_blend |
| predicted_ER | 0.0000 | 0.3970 | 0.1679 | model_form_blend |
| predicted_ERA | - | 3.5765 | 3.5765 | form_only |
| predicted_H | 1.0000 | 0.9050 | 0.9598 | model_form_blend |
| predicted_HR | 0.0000 | 0.0870 | 0.0368 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0940 | 0.4627 | model_form_blend |
| predicted_WHIP | - | 1.1430 | 1.1430 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 22 |
| Season rows before report date | 22 |
| Report year | 2026 |
| Profile rows used | 22 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 16 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.91 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260613_TEX@BOS |
| game_type | full |
| mlbID | 676477 |
| playerID | 676477 |
| playerName | Garrett Whitlock |
| pos | P |
| started | False |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-13 |
| sl_k_percent | 30.7 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.267 |
| sl_xwoba | 0.308 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 30.9 |
| sl_whiff_percent | 29.8 |
| sl_swing_percent | 54.2 |
| sl_avg_best_speed | 77.018576667 |
| sl_avg_hyper_speed | 93.406389434 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.667 | 0.000 | 0.333 | 1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 1.067 | 1.000 | 0.933 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.733 | 1.000 | 0.267 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.133 | 1.000 | -1.133 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "686580",
"player_name": "Justin Slaten",
"position": "Middle Reliever",
"team": "BOS",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 6.000 | 8.000 | 2.000 | 5.000 | 2.000 | 11.5714 | 2.1429 | 1.2857 | 1.7143 | 0.4286 | 1.0714 | 0.4286 |
| last_10 | 0.35 | 10 | 9.000 | 10.000 | 14.000 | 3.000 | 11.000 | 4.000 | 10.0000 | 1.8889 | 1.1111 | 1.5556 | 0.3333 | 1.2222 | 0.4444 |
| season | 0.20 | 15 | 13.100 | 10.000 | 16.000 | 5.000 | 17.000 | 4.000 | 6.7500 | 1.5750 | 0.7500 | 1.2000 | 0.3750 | 1.2750 | 0.3000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3710 |
| predicted_ER | 0.7140 |
| predicted_ERA | 6.4293 |
| predicted_H | 1.1750 |
| predicted_HR | 0.2370 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0160 |
| predicted_WHIP | 1.5460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3710 | 0.1387 | model_form_blend |
| predicted_ER | 1.0000 | 0.7140 | 0.8931 | model_form_blend |
| predicted_ERA | - | 6.4293 | 6.4293 | form_only |
| predicted_H | 2.0000 | 1.1750 | 1.6916 | model_form_blend |
| predicted_HR | 0.0000 | 0.2370 | 0.0886 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0160 | 0.3797 | model_form_blend |
| predicted_WHIP | - | 1.5460 | 1.5460 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 15 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 6.75 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260613_TEX@BOS |
| game_type | full |
| mlbID | 686580 |
| playerID | 686580 |
| playerName | Justin Slaten |
| pos | P |
| started | False |
| startingPosition | P |
| team | BOS |
| teamID | 4 |
| game_date | 2026-06-13 |
| sl_k_percent | 27.9 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.374 |
| sl_xwoba | 0.304 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 46.2 |
| sl_whiff_percent | 27.4 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 78.724301 |
| sl_avg_hyper_speed | 94.941750769 |